libsodium-wrappers-sumo 0.7.15 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2015-2023
1
+ Copyright (c) 2015-2026
2
2
  Ahmad Ben Mrad <batikhsouri at gmail dot org>
3
3
  Frank Denis <j at pureftpd dot org>
4
4
  Ryan Lester <ryan at cyph dot com>
package/README.md CHANGED
@@ -4,11 +4,11 @@
4
4
 
5
5
  The [sodium](https://github.com/jedisct1/libsodium) crypto library
6
6
  compiled to WebAssembly and pure JavaScript using
7
- [Emscripten](https://github.com/kripken/emscripten), with
7
+ [Emscripten](https://github.com/emscripten-core/emscripten), with
8
8
  automatically generated wrappers to make it easy to use in web
9
9
  applications.
10
10
 
11
- The complete library weighs 188 KB (minified, gzipped, includes pure JS +
11
+ The complete library weighs about 310 KB (minified, gzipped, includes pure JS +
12
12
  WebAssembly versions) and can run in a web browser as well as server-side.
13
13
 
14
14
  ### Compatibility
@@ -43,11 +43,15 @@ It contains code for commonly used functions.
43
43
  is a superset of the previous script, that contains all functions,
44
44
  including rarely used ones and undocumented ones.
45
45
  - [modules](https://github.com/jedisct1/libsodium.js/tree/master/dist/modules)
46
- includes commonly used functions, and is designed to be loaded as a module.
46
+ includes commonly used functions, and is designed to be loaded as a CommonJS module.
47
47
  `libsodium-wrappers` is the module your application should load, which
48
48
  will in turn automatically load `libsodium` as a dependency.
49
49
  - [modules-sumo](https://github.com/jedisct1/libsodium.js/tree/master/dist/modules-sumo)
50
50
  contains sumo variants of the previous modules.
51
+ - [modules-esm](https://github.com/jedisct1/libsodium.js/tree/master/dist/modules-esm)
52
+ contains ESM (ES modules) versions with `.mjs` extensions.
53
+ - [modules-sumo-esm](https://github.com/jedisct1/libsodium.js/tree/master/dist/modules-sumo-esm)
54
+ contains sumo ESM variants.
51
55
 
52
56
  The modules are also available on npm:
53
57
  - [libsodium-wrappers](https://www.npmjs.com/package/libsodium-wrappers)
@@ -56,44 +60,63 @@ The modules are also available on npm:
56
60
  ### Usage (as a module)
57
61
 
58
62
  Load the `libsodium-wrappers` module. The returned object contains a `.ready`
59
- property: a promise that must be resolve before the sodium functions
63
+ property: a promise that must be resolved before the sodium functions
60
64
  can be used.
61
65
 
62
66
  Example:
63
67
 
64
68
  ```js
65
- import _sodium from 'libsodium-wrappers';
66
- await (async() => {
67
- await _sodium.ready;
68
- const sodium = _sodium;
69
-
70
- let key = sodium.crypto_secretstream_xchacha20poly1305_keygen();
71
-
72
- let res = sodium.crypto_secretstream_xchacha20poly1305_init_push(key);
73
- let [state_out, header] = [res.state, res.header];
74
- let c1 = sodium.crypto_secretstream_xchacha20poly1305_push(state_out,
75
- sodium.from_string('message 1'), null,
76
- sodium.crypto_secretstream_xchacha20poly1305_TAG_MESSAGE);
77
- let c2 = sodium.crypto_secretstream_xchacha20poly1305_push(state_out,
78
- sodium.from_string('message 2'), null,
79
- sodium.crypto_secretstream_xchacha20poly1305_TAG_FINAL);
80
-
81
- let state_in = sodium.crypto_secretstream_xchacha20poly1305_init_pull(header, key);
82
- let r1 = sodium.crypto_secretstream_xchacha20poly1305_pull(state_in, c1);
83
- let [m1, tag1] = [sodium.to_string(r1.message), r1.tag];
84
- let r2 = sodium.crypto_secretstream_xchacha20poly1305_pull(state_in, c2);
85
- let [m2, tag2] = [sodium.to_string(r2.message), r2.tag];
86
-
87
- console.log(m1);
88
- console.log(m2);
89
- })();
69
+ import sodium from 'libsodium-wrappers';
70
+
71
+ await sodium.ready;
72
+
73
+ let key = sodium.crypto_secretstream_xchacha20poly1305_keygen();
74
+
75
+ let res = sodium.crypto_secretstream_xchacha20poly1305_init_push(key);
76
+ let [state_out, header] = [res.state, res.header];
77
+ let c1 = sodium.crypto_secretstream_xchacha20poly1305_push(state_out,
78
+ sodium.from_string('message 1'), null,
79
+ sodium.crypto_secretstream_xchacha20poly1305_TAG_MESSAGE);
80
+ let c2 = sodium.crypto_secretstream_xchacha20poly1305_push(state_out,
81
+ sodium.from_string('message 2'), null,
82
+ sodium.crypto_secretstream_xchacha20poly1305_TAG_FINAL);
83
+
84
+ let state_in = sodium.crypto_secretstream_xchacha20poly1305_init_pull(header, key);
85
+ let r1 = sodium.crypto_secretstream_xchacha20poly1305_pull(state_in, c1);
86
+ let [m1, tag1] = [sodium.to_string(r1.message), r1.tag];
87
+ let r2 = sodium.crypto_secretstream_xchacha20poly1305_pull(state_in, c2);
88
+ let [m2, tag2] = [sodium.to_string(r2.message), r2.tag];
89
+
90
+ console.log(m1);
91
+ console.log(m2);
92
+ ```
93
+
94
+ **Named exports:** The ESM modules also provide named exports for helper functions:
95
+
96
+ ```js
97
+ import { ready, from_hex, to_hex, from_string, to_string } from 'libsodium-wrappers';
98
+
99
+ await ready;
100
+ const bytes = from_hex('deadbeef');
101
+ console.log(to_hex(bytes));
102
+ ```
103
+
104
+ **Note:** Cryptographic functions (like `crypto_secretbox_easy`) and constants (like `crypto_secretbox_KEYBYTES`) are dynamically added to the module at runtime after `ready` resolves. They cannot be imported as named exports and must be accessed via the default export:
105
+
106
+ ```js
107
+ import sodium from 'libsodium-wrappers';
108
+
109
+ await sodium.ready;
110
+ // Now crypto functions and constants are available on the sodium object
111
+ const key = sodium.crypto_secretbox_keygen();
112
+ const nonce = sodium.randombytes_buf(sodium.crypto_secretbox_NONCEBYTES);
90
113
  ```
91
114
 
92
115
  ### Usage (in a web browser, via a callback)
93
116
 
94
117
  The `sodium.js` file includes both the core libsodium functions, as
95
118
  well as the higher-level JavaScript wrappers. It can be loaded
96
- asynchronusly.
119
+ asynchronously.
97
120
 
98
121
  A `sodium` object should be defined in the global namespace, with the
99
122
  following property:
@@ -114,6 +137,14 @@ Example:
114
137
  <script src="sodium.js" async></script>
115
138
  ```
116
139
 
140
+ **Important:** If you inline the library directly into your HTML (rather than loading it from a separate file), make sure your page declares UTF-8 encoding:
141
+
142
+ ```html
143
+ <meta charset="utf-8">
144
+ ```
145
+
146
+ Without this, browsers may corrupt the embedded WebAssembly binary data during HTML parsing, leading to errors like "failed to match magic number" or "HEAPU8 is undefined". Also ensure your server sends the `charset=utf-8` header.
147
+
117
148
  ## Additional helpers
118
149
 
119
150
  * `from_base64()`, `to_base64()` with an optional second parameter
@@ -159,7 +190,11 @@ let key = sodium.from_hex('724b092810ec86d7e35c9d067702b31ef90bc43a7b59862674991
159
190
 
160
191
  function encrypt_and_prepend_nonce(message) {
161
192
  let nonce = sodium.randombytes_buf(sodium.crypto_secretbox_NONCEBYTES);
162
- return nonce.concat(sodium.crypto_secretbox_easy(message, nonce, key));
193
+ let ciphertext = sodium.crypto_secretbox_easy(message, nonce, key);
194
+ let result = new Uint8Array(nonce.length + ciphertext.length);
195
+ result.set(nonce);
196
+ result.set(ciphertext, nonce.length);
197
+ return result;
163
198
  }
164
199
 
165
200
  function decrypt_after_extracting_nonce(nonce_and_ciphertext) {
@@ -185,13 +220,13 @@ returns the following object:
185
220
 
186
221
  ### Standard vs Sumo version
187
222
 
188
- The standard version (in the `dist/browsers` and `dist/modules`
189
- directories) contains the high-level functions, and is the recommended
190
- one for most projects.
223
+ The standard version (in the `dist/browsers`, `dist/modules`, and
224
+ `dist/modules-esm` directories) contains the high-level functions, and
225
+ is the recommended one for most projects.
191
226
 
192
227
  Alternatively, the "sumo" version, available in the
193
- `dist/browsers-sumo` and `dist/modules-sumo` directories contains all
194
- the symbols from the original library. This includes undocumented,
228
+ `dist/browsers-sumo`, `dist/modules-sumo`, and `dist/modules-sumo-esm`
229
+ directories contains all the symbols from the original library. This includes undocumented,
195
230
  untested, deprecated, low-level and easy to misuse functions.
196
231
 
197
232
  The `crypto_pwhash_*` function set is only included in the sumo version.
@@ -1 +1 @@
1
- !function(e){function a(e,a){"use strict";var r,t="uint8array",_=a.ready.then((function(){function t(){if(0!==r._sodium_init())throw new Error("libsodium was not correctly initialized.");for(var a=["crypto_aead_aegis128l_decrypt","crypto_aead_aegis128l_decrypt_detached","crypto_aead_aegis128l_encrypt","crypto_aead_aegis128l_encrypt_detached","crypto_aead_aegis128l_keygen","crypto_aead_aegis256_decrypt","crypto_aead_aegis256_decrypt_detached","crypto_aead_aegis256_encrypt","crypto_aead_aegis256_encrypt_detached","crypto_aead_aegis256_keygen","crypto_aead_chacha20poly1305_decrypt","crypto_aead_chacha20poly1305_decrypt_detached","crypto_aead_chacha20poly1305_encrypt","crypto_aead_chacha20poly1305_encrypt_detached","crypto_aead_chacha20poly1305_ietf_decrypt","crypto_aead_chacha20poly1305_ietf_decrypt_detached","crypto_aead_chacha20poly1305_ietf_encrypt","crypto_aead_chacha20poly1305_ietf_encrypt_detached","crypto_aead_chacha20poly1305_ietf_keygen","crypto_aead_chacha20poly1305_keygen","crypto_aead_xchacha20poly1305_ietf_decrypt","crypto_aead_xchacha20poly1305_ietf_decrypt_detached","crypto_aead_xchacha20poly1305_ietf_encrypt","crypto_aead_xchacha20poly1305_ietf_encrypt_detached","crypto_aead_xchacha20poly1305_ietf_keygen","crypto_auth","crypto_auth_hmacsha256","crypto_auth_hmacsha256_final","crypto_auth_hmacsha256_init","crypto_auth_hmacsha256_keygen","crypto_auth_hmacsha256_update","crypto_auth_hmacsha256_verify","crypto_auth_hmacsha512","crypto_auth_hmacsha512256","crypto_auth_hmacsha512256_final","crypto_auth_hmacsha512256_init","crypto_auth_hmacsha512256_keygen","crypto_auth_hmacsha512256_update","crypto_auth_hmacsha512256_verify","crypto_auth_hmacsha512_final","crypto_auth_hmacsha512_init","crypto_auth_hmacsha512_keygen","crypto_auth_hmacsha512_update","crypto_auth_hmacsha512_verify","crypto_auth_keygen","crypto_auth_verify","crypto_box_beforenm","crypto_box_curve25519xchacha20poly1305_beforenm","crypto_box_curve25519xchacha20poly1305_detached","crypto_box_curve25519xchacha20poly1305_detached_afternm","crypto_box_curve25519xchacha20poly1305_easy","crypto_box_curve25519xchacha20poly1305_easy_afternm","crypto_box_curve25519xchacha20poly1305_keypair","crypto_box_curve25519xchacha20poly1305_open_detached","crypto_box_curve25519xchacha20poly1305_open_detached_afternm","crypto_box_curve25519xchacha20poly1305_open_easy","crypto_box_curve25519xchacha20poly1305_open_easy_afternm","crypto_box_curve25519xchacha20poly1305_seal","crypto_box_curve25519xchacha20poly1305_seal_open","crypto_box_curve25519xchacha20poly1305_seed_keypair","crypto_box_detached","crypto_box_easy","crypto_box_easy_afternm","crypto_box_keypair","crypto_box_open_detached","crypto_box_open_easy","crypto_box_open_easy_afternm","crypto_box_seal","crypto_box_seal_open","crypto_box_seed_keypair","crypto_core_ed25519_add","crypto_core_ed25519_from_hash","crypto_core_ed25519_from_uniform","crypto_core_ed25519_is_valid_point","crypto_core_ed25519_random","crypto_core_ed25519_scalar_add","crypto_core_ed25519_scalar_complement","crypto_core_ed25519_scalar_invert","crypto_core_ed25519_scalar_mul","crypto_core_ed25519_scalar_negate","crypto_core_ed25519_scalar_random","crypto_core_ed25519_scalar_reduce","crypto_core_ed25519_scalar_sub","crypto_core_ed25519_sub","crypto_core_hchacha20","crypto_core_hsalsa20","crypto_core_ristretto255_add","crypto_core_ristretto255_from_hash","crypto_core_ristretto255_is_valid_point","crypto_core_ristretto255_random","crypto_core_ristretto255_scalar_add","crypto_core_ristretto255_scalar_complement","crypto_core_ristretto255_scalar_invert","crypto_core_ristretto255_scalar_mul","crypto_core_ristretto255_scalar_negate","crypto_core_ristretto255_scalar_random","crypto_core_ristretto255_scalar_reduce","crypto_core_ristretto255_scalar_sub","crypto_core_ristretto255_sub","crypto_generichash","crypto_generichash_blake2b_salt_personal","crypto_generichash_final","crypto_generichash_init","crypto_generichash_keygen","crypto_generichash_update","crypto_hash","crypto_hash_sha256","crypto_hash_sha256_final","crypto_hash_sha256_init","crypto_hash_sha256_update","crypto_hash_sha512","crypto_hash_sha512_final","crypto_hash_sha512_init","crypto_hash_sha512_update","crypto_kdf_derive_from_key","crypto_kdf_keygen","crypto_kx_client_session_keys","crypto_kx_keypair","crypto_kx_seed_keypair","crypto_kx_server_session_keys","crypto_onetimeauth","crypto_onetimeauth_final","crypto_onetimeauth_init","crypto_onetimeauth_keygen","crypto_onetimeauth_update","crypto_onetimeauth_verify","crypto_pwhash","crypto_pwhash_scryptsalsa208sha256","crypto_pwhash_scryptsalsa208sha256_ll","crypto_pwhash_scryptsalsa208sha256_str","crypto_pwhash_scryptsalsa208sha256_str_verify","crypto_pwhash_str","crypto_pwhash_str_needs_rehash","crypto_pwhash_str_verify","crypto_scalarmult","crypto_scalarmult_base","crypto_scalarmult_ed25519","crypto_scalarmult_ed25519_base","crypto_scalarmult_ed25519_base_noclamp","crypto_scalarmult_ed25519_noclamp","crypto_scalarmult_ristretto255","crypto_scalarmult_ristretto255_base","crypto_secretbox_detached","crypto_secretbox_easy","crypto_secretbox_keygen","crypto_secretbox_open_detached","crypto_secretbox_open_easy","crypto_secretstream_xchacha20poly1305_init_pull","crypto_secretstream_xchacha20poly1305_init_push","crypto_secretstream_xchacha20poly1305_keygen","crypto_secretstream_xchacha20poly1305_pull","crypto_secretstream_xchacha20poly1305_push","crypto_secretstream_xchacha20poly1305_rekey","crypto_shorthash","crypto_shorthash_keygen","crypto_shorthash_siphashx24","crypto_sign","crypto_sign_detached","crypto_sign_ed25519_pk_to_curve25519","crypto_sign_ed25519_sk_to_curve25519","crypto_sign_ed25519_sk_to_pk","crypto_sign_ed25519_sk_to_seed","crypto_sign_final_create","crypto_sign_final_verify","crypto_sign_init","crypto_sign_keypair","crypto_sign_open","crypto_sign_seed_keypair","crypto_sign_update","crypto_sign_verify_detached","crypto_stream_chacha20","crypto_stream_chacha20_ietf_xor","crypto_stream_chacha20_ietf_xor_ic","crypto_stream_chacha20_keygen","crypto_stream_chacha20_xor","crypto_stream_chacha20_xor_ic","crypto_stream_keygen","crypto_stream_xchacha20_keygen","crypto_stream_xchacha20_xor","crypto_stream_xchacha20_xor_ic","randombytes_buf","randombytes_buf_deterministic","randombytes_close","randombytes_random","randombytes_set_implementation","randombytes_stir","randombytes_uniform","sodium_version_string"],t=[x,k,S,T,w,Y,B,A,M,I,K,N,L,O,U,C,P,R,X,G,D,F,V,H,W,q,j,z,J,Q,Z,$,ee,ae,re,te,_e,ne,se,ce,oe,he,pe,ye,ie,le,ue,de,ve,ge,be,fe,me,Ee,xe,ke,Se,Te,we,Ye,Be,Ae,Me,Ie,Ke,Ne,Le,Oe,Ue,Ce,Pe,Re,Xe,Ge,De,Fe,Ve,He,We,qe,je,ze,Je,Qe,Ze,$e,ea,aa,ra,ta,_a,na,sa,ca,oa,ha,pa,ya,ia,la,ua,da,va,ga,ba,fa,ma,Ea,xa,ka,Sa,Ta,wa,Ya,Ba,Aa,Ma,Ia,Ka,Na,La,Oa,Ua,Ca,Pa,Ra,Xa,Ga,Da,Fa,Va,Ha,Wa,qa,ja,za,Ja,Qa,Za,$a,er,ar,rr,tr,_r,nr,sr,cr,or,hr,pr,yr,ir,lr,ur,dr,vr,gr,br,fr,mr,Er,xr,kr,Sr,Tr,wr,Yr,Br,Ar,Mr,Ir,Kr,Nr,Lr,Or,Ur,Cr,Pr,Rr,Xr,Gr,Dr,Fr,Vr,Hr,Wr,qr],_=0;_<t.length;_++)"function"==typeof r["_"+a[_]]&&(e[a[_]]=t[_]);var n=["SODIUM_LIBRARY_VERSION_MAJOR","SODIUM_LIBRARY_VERSION_MINOR","crypto_aead_aegis128l_ABYTES","crypto_aead_aegis128l_KEYBYTES","crypto_aead_aegis128l_MESSAGEBYTES_MAX","crypto_aead_aegis128l_NPUBBYTES","crypto_aead_aegis128l_NSECBYTES","crypto_aead_aegis256_ABYTES","crypto_aead_aegis256_KEYBYTES","crypto_aead_aegis256_MESSAGEBYTES_MAX","crypto_aead_aegis256_NPUBBYTES","crypto_aead_aegis256_NSECBYTES","crypto_aead_aes256gcm_ABYTES","crypto_aead_aes256gcm_KEYBYTES","crypto_aead_aes256gcm_MESSAGEBYTES_MAX","crypto_aead_aes256gcm_NPUBBYTES","crypto_aead_aes256gcm_NSECBYTES","crypto_aead_chacha20poly1305_ABYTES","crypto_aead_chacha20poly1305_IETF_ABYTES","crypto_aead_chacha20poly1305_IETF_KEYBYTES","crypto_aead_chacha20poly1305_IETF_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_IETF_NPUBBYTES","crypto_aead_chacha20poly1305_IETF_NSECBYTES","crypto_aead_chacha20poly1305_KEYBYTES","crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_NPUBBYTES","crypto_aead_chacha20poly1305_NSECBYTES","crypto_aead_chacha20poly1305_ietf_ABYTES","crypto_aead_chacha20poly1305_ietf_KEYBYTES","crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_ietf_NPUBBYTES","crypto_aead_chacha20poly1305_ietf_NSECBYTES","crypto_aead_xchacha20poly1305_IETF_ABYTES","crypto_aead_xchacha20poly1305_IETF_KEYBYTES","crypto_aead_xchacha20poly1305_IETF_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_IETF_NPUBBYTES","crypto_aead_xchacha20poly1305_IETF_NSECBYTES","crypto_aead_xchacha20poly1305_ietf_ABYTES","crypto_aead_xchacha20poly1305_ietf_KEYBYTES","crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_ietf_NPUBBYTES","crypto_aead_xchacha20poly1305_ietf_NSECBYTES","crypto_auth_BYTES","crypto_auth_KEYBYTES","crypto_auth_hmacsha256_BYTES","crypto_auth_hmacsha256_KEYBYTES","crypto_auth_hmacsha512256_BYTES","crypto_auth_hmacsha512256_KEYBYTES","crypto_auth_hmacsha512_BYTES","crypto_auth_hmacsha512_KEYBYTES","crypto_box_BEFORENMBYTES","crypto_box_MACBYTES","crypto_box_MESSAGEBYTES_MAX","crypto_box_NONCEBYTES","crypto_box_PUBLICKEYBYTES","crypto_box_SEALBYTES","crypto_box_SECRETKEYBYTES","crypto_box_SEEDBYTES","crypto_box_curve25519xchacha20poly1305_BEFORENMBYTES","crypto_box_curve25519xchacha20poly1305_MACBYTES","crypto_box_curve25519xchacha20poly1305_MESSAGEBYTES_MAX","crypto_box_curve25519xchacha20poly1305_NONCEBYTES","crypto_box_curve25519xchacha20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xchacha20poly1305_SEALBYTES","crypto_box_curve25519xchacha20poly1305_SECRETKEYBYTES","crypto_box_curve25519xchacha20poly1305_SEEDBYTES","crypto_box_curve25519xsalsa20poly1305_BEFORENMBYTES","crypto_box_curve25519xsalsa20poly1305_MACBYTES","crypto_box_curve25519xsalsa20poly1305_MESSAGEBYTES_MAX","crypto_box_curve25519xsalsa20poly1305_NONCEBYTES","crypto_box_curve25519xsalsa20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xsalsa20poly1305_SECRETKEYBYTES","crypto_box_curve25519xsalsa20poly1305_SEEDBYTES","crypto_core_ed25519_BYTES","crypto_core_ed25519_HASHBYTES","crypto_core_ed25519_NONREDUCEDSCALARBYTES","crypto_core_ed25519_SCALARBYTES","crypto_core_ed25519_UNIFORMBYTES","crypto_core_hchacha20_CONSTBYTES","crypto_core_hchacha20_INPUTBYTES","crypto_core_hchacha20_KEYBYTES","crypto_core_hchacha20_OUTPUTBYTES","crypto_core_hsalsa20_CONSTBYTES","crypto_core_hsalsa20_INPUTBYTES","crypto_core_hsalsa20_KEYBYTES","crypto_core_hsalsa20_OUTPUTBYTES","crypto_core_ristretto255_BYTES","crypto_core_ristretto255_HASHBYTES","crypto_core_ristretto255_NONREDUCEDSCALARBYTES","crypto_core_ristretto255_SCALARBYTES","crypto_core_salsa2012_CONSTBYTES","crypto_core_salsa2012_INPUTBYTES","crypto_core_salsa2012_KEYBYTES","crypto_core_salsa2012_OUTPUTBYTES","crypto_core_salsa208_CONSTBYTES","crypto_core_salsa208_INPUTBYTES","crypto_core_salsa208_KEYBYTES","crypto_core_salsa208_OUTPUTBYTES","crypto_core_salsa20_CONSTBYTES","crypto_core_salsa20_INPUTBYTES","crypto_core_salsa20_KEYBYTES","crypto_core_salsa20_OUTPUTBYTES","crypto_generichash_BYTES","crypto_generichash_BYTES_MAX","crypto_generichash_BYTES_MIN","crypto_generichash_KEYBYTES","crypto_generichash_KEYBYTES_MAX","crypto_generichash_KEYBYTES_MIN","crypto_generichash_blake2b_BYTES","crypto_generichash_blake2b_BYTES_MAX","crypto_generichash_blake2b_BYTES_MIN","crypto_generichash_blake2b_KEYBYTES","crypto_generichash_blake2b_KEYBYTES_MAX","crypto_generichash_blake2b_KEYBYTES_MIN","crypto_generichash_blake2b_PERSONALBYTES","crypto_generichash_blake2b_SALTBYTES","crypto_hash_BYTES","crypto_hash_sha256_BYTES","crypto_hash_sha512_BYTES","crypto_kdf_BYTES_MAX","crypto_kdf_BYTES_MIN","crypto_kdf_CONTEXTBYTES","crypto_kdf_KEYBYTES","crypto_kdf_blake2b_BYTES_MAX","crypto_kdf_blake2b_BYTES_MIN","crypto_kdf_blake2b_CONTEXTBYTES","crypto_kdf_blake2b_KEYBYTES","crypto_kdf_hkdf_sha256_BYTES_MAX","crypto_kdf_hkdf_sha256_BYTES_MIN","crypto_kdf_hkdf_sha256_KEYBYTES","crypto_kdf_hkdf_sha512_BYTES_MAX","crypto_kdf_hkdf_sha512_BYTES_MIN","crypto_kdf_hkdf_sha512_KEYBYTES","crypto_kx_PUBLICKEYBYTES","crypto_kx_SECRETKEYBYTES","crypto_kx_SEEDBYTES","crypto_kx_SESSIONKEYBYTES","crypto_onetimeauth_BYTES","crypto_onetimeauth_KEYBYTES","crypto_onetimeauth_poly1305_BYTES","crypto_onetimeauth_poly1305_KEYBYTES","crypto_pwhash_ALG_ARGON2I13","crypto_pwhash_ALG_ARGON2ID13","crypto_pwhash_ALG_DEFAULT","crypto_pwhash_BYTES_MAX","crypto_pwhash_BYTES_MIN","crypto_pwhash_MEMLIMIT_INTERACTIVE","crypto_pwhash_MEMLIMIT_MAX","crypto_pwhash_MEMLIMIT_MIN","crypto_pwhash_MEMLIMIT_MODERATE","crypto_pwhash_MEMLIMIT_SENSITIVE","crypto_pwhash_OPSLIMIT_INTERACTIVE","crypto_pwhash_OPSLIMIT_MAX","crypto_pwhash_OPSLIMIT_MIN","crypto_pwhash_OPSLIMIT_MODERATE","crypto_pwhash_OPSLIMIT_SENSITIVE","crypto_pwhash_PASSWD_MAX","crypto_pwhash_PASSWD_MIN","crypto_pwhash_SALTBYTES","crypto_pwhash_STRBYTES","crypto_pwhash_argon2i_BYTES_MAX","crypto_pwhash_argon2i_BYTES_MIN","crypto_pwhash_argon2i_MEMLIMIT_INTERACTIVE","crypto_pwhash_argon2i_MEMLIMIT_MAX","crypto_pwhash_argon2i_MEMLIMIT_MIN","crypto_pwhash_argon2i_MEMLIMIT_MODERATE","crypto_pwhash_argon2i_MEMLIMIT_SENSITIVE","crypto_pwhash_argon2i_OPSLIMIT_INTERACTIVE","crypto_pwhash_argon2i_OPSLIMIT_MAX","crypto_pwhash_argon2i_OPSLIMIT_MIN","crypto_pwhash_argon2i_OPSLIMIT_MODERATE","crypto_pwhash_argon2i_OPSLIMIT_SENSITIVE","crypto_pwhash_argon2i_PASSWD_MAX","crypto_pwhash_argon2i_PASSWD_MIN","crypto_pwhash_argon2i_SALTBYTES","crypto_pwhash_argon2i_STRBYTES","crypto_pwhash_argon2id_BYTES_MAX","crypto_pwhash_argon2id_BYTES_MIN","crypto_pwhash_argon2id_MEMLIMIT_INTERACTIVE","crypto_pwhash_argon2id_MEMLIMIT_MAX","crypto_pwhash_argon2id_MEMLIMIT_MIN","crypto_pwhash_argon2id_MEMLIMIT_MODERATE","crypto_pwhash_argon2id_MEMLIMIT_SENSITIVE","crypto_pwhash_argon2id_OPSLIMIT_INTERACTIVE","crypto_pwhash_argon2id_OPSLIMIT_MAX","crypto_pwhash_argon2id_OPSLIMIT_MIN","crypto_pwhash_argon2id_OPSLIMIT_MODERATE","crypto_pwhash_argon2id_OPSLIMIT_SENSITIVE","crypto_pwhash_argon2id_PASSWD_MAX","crypto_pwhash_argon2id_PASSWD_MIN","crypto_pwhash_argon2id_SALTBYTES","crypto_pwhash_argon2id_STRBYTES","crypto_pwhash_scryptsalsa208sha256_BYTES_MAX","crypto_pwhash_scryptsalsa208sha256_BYTES_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_PASSWD_MAX","crypto_pwhash_scryptsalsa208sha256_PASSWD_MIN","crypto_pwhash_scryptsalsa208sha256_SALTBYTES","crypto_pwhash_scryptsalsa208sha256_STRBYTES","crypto_scalarmult_BYTES","crypto_scalarmult_SCALARBYTES","crypto_scalarmult_curve25519_BYTES","crypto_scalarmult_curve25519_SCALARBYTES","crypto_scalarmult_ed25519_BYTES","crypto_scalarmult_ed25519_SCALARBYTES","crypto_scalarmult_ristretto255_BYTES","crypto_scalarmult_ristretto255_SCALARBYTES","crypto_secretbox_KEYBYTES","crypto_secretbox_MACBYTES","crypto_secretbox_MESSAGEBYTES_MAX","crypto_secretbox_NONCEBYTES","crypto_secretbox_xchacha20poly1305_KEYBYTES","crypto_secretbox_xchacha20poly1305_MACBYTES","crypto_secretbox_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretbox_xchacha20poly1305_NONCEBYTES","crypto_secretbox_xsalsa20poly1305_KEYBYTES","crypto_secretbox_xsalsa20poly1305_MACBYTES","crypto_secretbox_xsalsa20poly1305_MESSAGEBYTES_MAX","crypto_secretbox_xsalsa20poly1305_NONCEBYTES","crypto_secretstream_xchacha20poly1305_ABYTES","crypto_secretstream_xchacha20poly1305_HEADERBYTES","crypto_secretstream_xchacha20poly1305_KEYBYTES","crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretstream_xchacha20poly1305_TAG_FINAL","crypto_secretstream_xchacha20poly1305_TAG_MESSAGE","crypto_secretstream_xchacha20poly1305_TAG_PUSH","crypto_secretstream_xchacha20poly1305_TAG_REKEY","crypto_shorthash_BYTES","crypto_shorthash_KEYBYTES","crypto_shorthash_siphash24_BYTES","crypto_shorthash_siphash24_KEYBYTES","crypto_shorthash_siphashx24_BYTES","crypto_shorthash_siphashx24_KEYBYTES","crypto_sign_BYTES","crypto_sign_MESSAGEBYTES_MAX","crypto_sign_PUBLICKEYBYTES","crypto_sign_SECRETKEYBYTES","crypto_sign_SEEDBYTES","crypto_sign_ed25519_BYTES","crypto_sign_ed25519_MESSAGEBYTES_MAX","crypto_sign_ed25519_PUBLICKEYBYTES","crypto_sign_ed25519_SECRETKEYBYTES","crypto_sign_ed25519_SEEDBYTES","crypto_stream_KEYBYTES","crypto_stream_MESSAGEBYTES_MAX","crypto_stream_NONCEBYTES","crypto_stream_chacha20_IETF_KEYBYTES","crypto_stream_chacha20_IETF_MESSAGEBYTES_MAX","crypto_stream_chacha20_IETF_NONCEBYTES","crypto_stream_chacha20_KEYBYTES","crypto_stream_chacha20_MESSAGEBYTES_MAX","crypto_stream_chacha20_NONCEBYTES","crypto_stream_chacha20_ietf_KEYBYTES","crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX","crypto_stream_chacha20_ietf_NONCEBYTES","crypto_stream_salsa2012_KEYBYTES","crypto_stream_salsa2012_MESSAGEBYTES_MAX","crypto_stream_salsa2012_NONCEBYTES","crypto_stream_salsa208_KEYBYTES","crypto_stream_salsa208_MESSAGEBYTES_MAX","crypto_stream_salsa208_NONCEBYTES","crypto_stream_salsa20_KEYBYTES","crypto_stream_salsa20_MESSAGEBYTES_MAX","crypto_stream_salsa20_NONCEBYTES","crypto_stream_xchacha20_KEYBYTES","crypto_stream_xchacha20_MESSAGEBYTES_MAX","crypto_stream_xchacha20_NONCEBYTES","crypto_stream_xsalsa20_KEYBYTES","crypto_stream_xsalsa20_MESSAGEBYTES_MAX","crypto_stream_xsalsa20_NONCEBYTES","crypto_verify_16_BYTES","crypto_verify_32_BYTES","crypto_verify_64_BYTES"];for(_=0;_<n.length;_++)"function"==typeof(c=r["_"+n[_].toLowerCase()])&&(e[n[_]]=c());var s=["SODIUM_VERSION_STRING","crypto_pwhash_STRPREFIX","crypto_pwhash_argon2i_STRPREFIX","crypto_pwhash_argon2id_STRPREFIX","crypto_pwhash_scryptsalsa208sha256_STRPREFIX"];for(_=0;_<s.length;_++){var c;"function"==typeof(c=r["_"+s[_].toLowerCase()])&&(e[s[_]]=r.UTF8ToString(c()))}}r=a;try{t();var _=new Uint8Array([98,97,108,108,115]),n=e.randombytes_buf(e.crypto_secretbox_NONCEBYTES),s=e.randombytes_buf(e.crypto_secretbox_KEYBYTES),c=e.crypto_secretbox_easy(_,n,s),o=e.crypto_secretbox_open_easy(c,n,s);if(e.memcmp(_,o))return}catch(e){if(null==r.useBackupModule)throw new Error("Both wasm and asm failed to load"+e)}r.useBackupModule(),t()}));function n(e){if("function"==typeof TextEncoder)return(new TextEncoder).encode(e);e=unescape(encodeURIComponent(e));for(var a=new Uint8Array(e.length),r=0,t=e.length;r<t;r++)a[r]=e.charCodeAt(r);return a}function s(e){if("function"==typeof TextDecoder)return new TextDecoder("utf-8",{fatal:!0}).decode(e);var a=8192,r=Math.ceil(e.length/a);if(r<=1)try{return decodeURIComponent(escape(String.fromCharCode.apply(null,e)))}catch(e){throw new TypeError("The encoded data was not valid.")}for(var t="",_=0,n=0;n<r;n++){var c=Array.prototype.slice.call(e,n*a+_,(n+1)*a+_);if(0!=c.length){var o,h=c.length,p=0;do{var y=c[--h];y>=240?(p=4,o=!0):y>=224?(p=3,o=!0):y>=192?(p=2,o=!0):y<128&&(p=1,o=!0)}while(!o);for(var i=p-(c.length-h),l=0;l<i;l++)_--,c.pop();t+=s(c)}}return t}function c(e){e=E(null,e,"input");for(var a,r,t,_="",n=0;n<e.length;n++)t=87+(r=15&e[n])+(r-10>>8&-39)<<8|87+(a=e[n]>>>4)+(a-10>>8&-39),_+=String.fromCharCode(255&t)+String.fromCharCode(t>>>8);return _}var o={ORIGINAL:1,ORIGINAL_NO_PADDING:3,URLSAFE:5,URLSAFE_NO_PADDING:7};function h(e){if(null==e)return o.URLSAFE_NO_PADDING;if(e!==o.ORIGINAL&&e!==o.ORIGINAL_NO_PADDING&&e!==o.URLSAFE&&e!=o.URLSAFE_NO_PADDING)throw new Error("unsupported base64 variant");return e}function p(e,a){a=h(a),e=E(_,e,"input");var t,_=[],n=0|Math.floor(e.length/3),c=e.length-3*n,o=4*n+(0!==c?2&a?2+(c>>>1):4:0),p=new u(o+1),y=d(e);return _.push(y),_.push(p.address),0===r._sodium_bin2base64(p.address,p.length,y,e.length,a)&&b(_,"conversion failed"),p.length=o,t=s(p.to_Uint8Array()),g(_),t}function y(e,a){var r=a||t;if(!i(r))throw new Error(r+" output format is not available");if(e instanceof u){if("uint8array"===r)return e.to_Uint8Array();if("text"===r)return s(e.to_Uint8Array());if("hex"===r)return c(e.to_Uint8Array());if("base64"===r)return p(e.to_Uint8Array(),o.URLSAFE_NO_PADDING);throw new Error('What is output format "'+r+'"?')}if("object"==typeof e){for(var _=Object.keys(e),n={},h=0;h<_.length;h++)n[_[h]]=y(e[_[h]],r);return n}if("string"==typeof e)return e;throw new TypeError("Cannot format output")}function i(e){for(var a=["uint8array","text","hex","base64"],r=0;r<a.length;r++)if(a[r]===e)return!0;return!1}function l(e){if(e){if("string"!=typeof e)throw new TypeError("When defined, the output format must be a string");if(!i(e))throw new Error(e+" is not a supported output format")}}function u(e){this.length=e,this.address=v(e)}function d(e){var a=v(e.length);return r.HEAPU8.set(e,a),a}function v(e){var a=r._malloc(e);if(0===a)throw{message:"_malloc() failed",length:e};return a}function g(e){if(e)for(var a=0;a<e.length;a++)t=e[a],r._free(t);var t}function b(e,a){throw g(e),new Error(a)}function f(e,a){throw g(e),new TypeError(a)}function m(e,a,r){null==a&&f(e,r+" cannot be null or undefined")}function E(e,a,r){return m(e,a,r),a instanceof Uint8Array?a:"string"==typeof a?n(a):void f(e,"unsupported input type for "+r)}function x(e,a,t,_,n,s){var c=[];l(s);var o=null;null!=e&&(o=d(e=E(c,e,"secret_nonce")),e.length,c.push(o)),a=E(c,a,"ciphertext");var h,p=r._crypto_aead_aegis128l_abytes(),i=a.length;i<p&&f(c,"ciphertext is too short"),h=d(a),c.push(h);var v=null,m=0;null!=t&&(v=d(t=E(c,t,"additional_data")),m=t.length,c.push(v)),_=E(c,_,"public_nonce");var x,k=0|r._crypto_aead_aegis128l_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),x=d(_),c.push(x),n=E(c,n,"key");var S,T=0|r._crypto_aead_aegis128l_keybytes();n.length!==T&&f(c,"invalid key length"),S=d(n),c.push(S);var w=new u(i-r._crypto_aead_aegis128l_abytes()|0),Y=w.address;if(c.push(Y),0===r._crypto_aead_aegis128l_decrypt(Y,null,o,h,i,0,v,m,0,x,S)){var B=y(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function k(e,a,t,_,n,s,c){var o=[];l(c);var h=null;null!=e&&(h=d(e=E(o,e,"secret_nonce")),e.length,o.push(h));var p=d(a=E(o,a,"ciphertext")),i=a.length;o.push(p),t=E(o,t,"mac");var v,m=0|r._crypto_box_macbytes();t.length!==m&&f(o,"invalid mac length"),v=d(t),o.push(v);var x=null,k=0;null!=_&&(x=d(_=E(o,_,"additional_data")),k=_.length,o.push(x)),n=E(o,n,"public_nonce");var S,T=0|r._crypto_aead_aegis128l_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=d(n),o.push(S),s=E(o,s,"key");var w,Y=0|r._crypto_aead_aegis128l_keybytes();s.length!==Y&&f(o,"invalid key length"),w=d(s),o.push(w);var B=new u(0|i),A=B.address;if(o.push(A),0===r._crypto_aead_aegis128l_decrypt_detached(A,h,p,i,0,v,x,k,0,S,w)){var M=y(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function S(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"message")),h=e.length;c.push(o);var p=null,i=0;null!=a&&(p=d(a=E(c,a,"additional_data")),i=a.length,c.push(p));var v=null;null!=t&&(v=d(t=E(c,t,"secret_nonce")),t.length,c.push(v)),_=E(c,_,"public_nonce");var m,x=0|r._crypto_aead_aegis128l_npubbytes();_.length!==x&&f(c,"invalid public_nonce length"),m=d(_),c.push(m),n=E(c,n,"key");var k,S=0|r._crypto_aead_aegis128l_keybytes();n.length!==S&&f(c,"invalid key length"),k=d(n),c.push(k);var T=new u(h+r._crypto_aead_aegis128l_abytes()|0),w=T.address;if(c.push(w),0===r._crypto_aead_aegis128l_encrypt(w,null,o,h,0,p,i,0,v,m,k)){var Y=y(T,s);return g(c),Y}b(c,"invalid usage")}function T(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"message")),h=e.length;c.push(o);var p=null,i=0;null!=a&&(p=d(a=E(c,a,"additional_data")),i=a.length,c.push(p));var v=null;null!=t&&(v=d(t=E(c,t,"secret_nonce")),t.length,c.push(v)),_=E(c,_,"public_nonce");var m,x=0|r._crypto_aead_aegis128l_npubbytes();_.length!==x&&f(c,"invalid public_nonce length"),m=d(_),c.push(m),n=E(c,n,"key");var k,S=0|r._crypto_aead_aegis128l_keybytes();n.length!==S&&f(c,"invalid key length"),k=d(n),c.push(k);var T=new u(0|h),w=T.address;c.push(w);var Y=new u(0|r._crypto_aead_aegis128l_abytes()),B=Y.address;if(c.push(B),0===r._crypto_aead_aegis128l_encrypt_detached(w,B,null,o,h,0,p,i,0,v,m,k)){var A=y({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function w(e){var a=[];l(e);var t=new u(0|r._crypto_aead_aegis128l_keybytes()),_=t.address;a.push(_),r._crypto_aead_aegis128l_keygen(_);var n=y(t,e);return g(a),n}function Y(e,a,t,_,n,s){var c=[];l(s);var o=null;null!=e&&(o=d(e=E(c,e,"secret_nonce")),e.length,c.push(o)),a=E(c,a,"ciphertext");var h,p=r._crypto_aead_aegis256_abytes(),i=a.length;i<p&&f(c,"ciphertext is too short"),h=d(a),c.push(h);var v=null,m=0;null!=t&&(v=d(t=E(c,t,"additional_data")),m=t.length,c.push(v)),_=E(c,_,"public_nonce");var x,k=0|r._crypto_aead_aegis256_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),x=d(_),c.push(x),n=E(c,n,"key");var S,T=0|r._crypto_aead_aegis256_keybytes();n.length!==T&&f(c,"invalid key length"),S=d(n),c.push(S);var w=new u(i-r._crypto_aead_aegis256_abytes()|0),Y=w.address;if(c.push(Y),0===r._crypto_aead_aegis256_decrypt(Y,null,o,h,i,0,v,m,0,x,S)){var B=y(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function B(e,a,t,_,n,s,c){var o=[];l(c);var h=null;null!=e&&(h=d(e=E(o,e,"secret_nonce")),e.length,o.push(h));var p=d(a=E(o,a,"ciphertext")),i=a.length;o.push(p),t=E(o,t,"mac");var v,m=0|r._crypto_box_macbytes();t.length!==m&&f(o,"invalid mac length"),v=d(t),o.push(v);var x=null,k=0;null!=_&&(x=d(_=E(o,_,"additional_data")),k=_.length,o.push(x)),n=E(o,n,"public_nonce");var S,T=0|r._crypto_aead_aegis256_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=d(n),o.push(S),s=E(o,s,"key");var w,Y=0|r._crypto_aead_aegis256_keybytes();s.length!==Y&&f(o,"invalid key length"),w=d(s),o.push(w);var B=new u(0|i),A=B.address;if(o.push(A),0===r._crypto_aead_aegis256_decrypt_detached(A,h,p,i,0,v,x,k,0,S,w)){var M=y(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function A(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"message")),h=e.length;c.push(o);var p=null,i=0;null!=a&&(p=d(a=E(c,a,"additional_data")),i=a.length,c.push(p));var v=null;null!=t&&(v=d(t=E(c,t,"secret_nonce")),t.length,c.push(v)),_=E(c,_,"public_nonce");var m,x=0|r._crypto_aead_aegis256_npubbytes();_.length!==x&&f(c,"invalid public_nonce length"),m=d(_),c.push(m),n=E(c,n,"key");var k,S=0|r._crypto_aead_aegis256_keybytes();n.length!==S&&f(c,"invalid key length"),k=d(n),c.push(k);var T=new u(h+r._crypto_aead_aegis256_abytes()|0),w=T.address;if(c.push(w),0===r._crypto_aead_aegis256_encrypt(w,null,o,h,0,p,i,0,v,m,k)){var Y=y(T,s);return g(c),Y}b(c,"invalid usage")}function M(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"message")),h=e.length;c.push(o);var p=null,i=0;null!=a&&(p=d(a=E(c,a,"additional_data")),i=a.length,c.push(p));var v=null;null!=t&&(v=d(t=E(c,t,"secret_nonce")),t.length,c.push(v)),_=E(c,_,"public_nonce");var m,x=0|r._crypto_aead_aegis256_npubbytes();_.length!==x&&f(c,"invalid public_nonce length"),m=d(_),c.push(m),n=E(c,n,"key");var k,S=0|r._crypto_aead_aegis256_keybytes();n.length!==S&&f(c,"invalid key length"),k=d(n),c.push(k);var T=new u(0|h),w=T.address;c.push(w);var Y=new u(0|r._crypto_aead_aegis256_abytes()),B=Y.address;if(c.push(B),0===r._crypto_aead_aegis256_encrypt_detached(w,B,null,o,h,0,p,i,0,v,m,k)){var A=y({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function I(e){var a=[];l(e);var t=new u(0|r._crypto_aead_aegis256_keybytes()),_=t.address;a.push(_),r._crypto_aead_aegis256_keygen(_);var n=y(t,e);return g(a),n}function K(e,a,t,_,n,s){var c=[];l(s);var o=null;null!=e&&(o=d(e=E(c,e,"secret_nonce")),e.length,c.push(o)),a=E(c,a,"ciphertext");var h,p=r._crypto_aead_chacha20poly1305_abytes(),i=a.length;i<p&&f(c,"ciphertext is too short"),h=d(a),c.push(h);var v=null,m=0;null!=t&&(v=d(t=E(c,t,"additional_data")),m=t.length,c.push(v)),_=E(c,_,"public_nonce");var x,k=0|r._crypto_aead_chacha20poly1305_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),x=d(_),c.push(x),n=E(c,n,"key");var S,T=0|r._crypto_aead_chacha20poly1305_keybytes();n.length!==T&&f(c,"invalid key length"),S=d(n),c.push(S);var w=new u(i-r._crypto_aead_chacha20poly1305_abytes()|0),Y=w.address;if(c.push(Y),0===r._crypto_aead_chacha20poly1305_decrypt(Y,null,o,h,i,0,v,m,0,x,S)){var B=y(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function N(e,a,t,_,n,s,c){var o=[];l(c);var h=null;null!=e&&(h=d(e=E(o,e,"secret_nonce")),e.length,o.push(h));var p=d(a=E(o,a,"ciphertext")),i=a.length;o.push(p),t=E(o,t,"mac");var v,m=0|r._crypto_box_macbytes();t.length!==m&&f(o,"invalid mac length"),v=d(t),o.push(v);var x=null,k=0;null!=_&&(x=d(_=E(o,_,"additional_data")),k=_.length,o.push(x)),n=E(o,n,"public_nonce");var S,T=0|r._crypto_aead_chacha20poly1305_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=d(n),o.push(S),s=E(o,s,"key");var w,Y=0|r._crypto_aead_chacha20poly1305_keybytes();s.length!==Y&&f(o,"invalid key length"),w=d(s),o.push(w);var B=new u(0|i),A=B.address;if(o.push(A),0===r._crypto_aead_chacha20poly1305_decrypt_detached(A,h,p,i,0,v,x,k,0,S,w)){var M=y(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function L(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"message")),h=e.length;c.push(o);var p=null,i=0;null!=a&&(p=d(a=E(c,a,"additional_data")),i=a.length,c.push(p));var v=null;null!=t&&(v=d(t=E(c,t,"secret_nonce")),t.length,c.push(v)),_=E(c,_,"public_nonce");var m,x=0|r._crypto_aead_chacha20poly1305_npubbytes();_.length!==x&&f(c,"invalid public_nonce length"),m=d(_),c.push(m),n=E(c,n,"key");var k,S=0|r._crypto_aead_chacha20poly1305_keybytes();n.length!==S&&f(c,"invalid key length"),k=d(n),c.push(k);var T=new u(h+r._crypto_aead_chacha20poly1305_abytes()|0),w=T.address;if(c.push(w),0===r._crypto_aead_chacha20poly1305_encrypt(w,null,o,h,0,p,i,0,v,m,k)){var Y=y(T,s);return g(c),Y}b(c,"invalid usage")}function O(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"message")),h=e.length;c.push(o);var p=null,i=0;null!=a&&(p=d(a=E(c,a,"additional_data")),i=a.length,c.push(p));var v=null;null!=t&&(v=d(t=E(c,t,"secret_nonce")),t.length,c.push(v)),_=E(c,_,"public_nonce");var m,x=0|r._crypto_aead_chacha20poly1305_npubbytes();_.length!==x&&f(c,"invalid public_nonce length"),m=d(_),c.push(m),n=E(c,n,"key");var k,S=0|r._crypto_aead_chacha20poly1305_keybytes();n.length!==S&&f(c,"invalid key length"),k=d(n),c.push(k);var T=new u(0|h),w=T.address;c.push(w);var Y=new u(0|r._crypto_aead_chacha20poly1305_abytes()),B=Y.address;if(c.push(B),0===r._crypto_aead_chacha20poly1305_encrypt_detached(w,B,null,o,h,0,p,i,0,v,m,k)){var A=y({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function U(e,a,t,_,n,s){var c=[];l(s);var o=null;null!=e&&(o=d(e=E(c,e,"secret_nonce")),e.length,c.push(o)),a=E(c,a,"ciphertext");var h,p=r._crypto_aead_chacha20poly1305_ietf_abytes(),i=a.length;i<p&&f(c,"ciphertext is too short"),h=d(a),c.push(h);var v=null,m=0;null!=t&&(v=d(t=E(c,t,"additional_data")),m=t.length,c.push(v)),_=E(c,_,"public_nonce");var x,k=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),x=d(_),c.push(x),n=E(c,n,"key");var S,T=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==T&&f(c,"invalid key length"),S=d(n),c.push(S);var w=new u(i-r._crypto_aead_chacha20poly1305_ietf_abytes()|0),Y=w.address;if(c.push(Y),0===r._crypto_aead_chacha20poly1305_ietf_decrypt(Y,null,o,h,i,0,v,m,0,x,S)){var B=y(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function C(e,a,t,_,n,s,c){var o=[];l(c);var h=null;null!=e&&(h=d(e=E(o,e,"secret_nonce")),e.length,o.push(h));var p=d(a=E(o,a,"ciphertext")),i=a.length;o.push(p),t=E(o,t,"mac");var v,m=0|r._crypto_box_macbytes();t.length!==m&&f(o,"invalid mac length"),v=d(t),o.push(v);var x=null,k=0;null!=_&&(x=d(_=E(o,_,"additional_data")),k=_.length,o.push(x)),n=E(o,n,"public_nonce");var S,T=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=d(n),o.push(S),s=E(o,s,"key");var w,Y=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();s.length!==Y&&f(o,"invalid key length"),w=d(s),o.push(w);var B=new u(0|i),A=B.address;if(o.push(A),0===r._crypto_aead_chacha20poly1305_ietf_decrypt_detached(A,h,p,i,0,v,x,k,0,S,w)){var M=y(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function P(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"message")),h=e.length;c.push(o);var p=null,i=0;null!=a&&(p=d(a=E(c,a,"additional_data")),i=a.length,c.push(p));var v=null;null!=t&&(v=d(t=E(c,t,"secret_nonce")),t.length,c.push(v)),_=E(c,_,"public_nonce");var m,x=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==x&&f(c,"invalid public_nonce length"),m=d(_),c.push(m),n=E(c,n,"key");var k,S=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=d(n),c.push(k);var T=new u(h+r._crypto_aead_chacha20poly1305_ietf_abytes()|0),w=T.address;if(c.push(w),0===r._crypto_aead_chacha20poly1305_ietf_encrypt(w,null,o,h,0,p,i,0,v,m,k)){var Y=y(T,s);return g(c),Y}b(c,"invalid usage")}function R(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"message")),h=e.length;c.push(o);var p=null,i=0;null!=a&&(p=d(a=E(c,a,"additional_data")),i=a.length,c.push(p));var v=null;null!=t&&(v=d(t=E(c,t,"secret_nonce")),t.length,c.push(v)),_=E(c,_,"public_nonce");var m,x=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==x&&f(c,"invalid public_nonce length"),m=d(_),c.push(m),n=E(c,n,"key");var k,S=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=d(n),c.push(k);var T=new u(0|h),w=T.address;c.push(w);var Y=new u(0|r._crypto_aead_chacha20poly1305_ietf_abytes()),B=Y.address;if(c.push(B),0===r._crypto_aead_chacha20poly1305_ietf_encrypt_detached(w,B,null,o,h,0,p,i,0,v,m,k)){var A=y({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function X(e){var a=[];l(e);var t=new u(0|r._crypto_aead_chacha20poly1305_ietf_keybytes()),_=t.address;a.push(_),r._crypto_aead_chacha20poly1305_ietf_keygen(_);var n=y(t,e);return g(a),n}function G(e){var a=[];l(e);var t=new u(0|r._crypto_aead_chacha20poly1305_keybytes()),_=t.address;a.push(_),r._crypto_aead_chacha20poly1305_keygen(_);var n=y(t,e);return g(a),n}function D(e,a,t,_,n,s){var c=[];l(s);var o=null;null!=e&&(o=d(e=E(c,e,"secret_nonce")),e.length,c.push(o)),a=E(c,a,"ciphertext");var h,p=r._crypto_aead_xchacha20poly1305_ietf_abytes(),i=a.length;i<p&&f(c,"ciphertext is too short"),h=d(a),c.push(h);var v=null,m=0;null!=t&&(v=d(t=E(c,t,"additional_data")),m=t.length,c.push(v)),_=E(c,_,"public_nonce");var x,k=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),x=d(_),c.push(x),n=E(c,n,"key");var S,T=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==T&&f(c,"invalid key length"),S=d(n),c.push(S);var w=new u(i-r._crypto_aead_xchacha20poly1305_ietf_abytes()|0),Y=w.address;if(c.push(Y),0===r._crypto_aead_xchacha20poly1305_ietf_decrypt(Y,null,o,h,i,0,v,m,0,x,S)){var B=y(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function F(e,a,t,_,n,s,c){var o=[];l(c);var h=null;null!=e&&(h=d(e=E(o,e,"secret_nonce")),e.length,o.push(h));var p=d(a=E(o,a,"ciphertext")),i=a.length;o.push(p),t=E(o,t,"mac");var v,m=0|r._crypto_box_macbytes();t.length!==m&&f(o,"invalid mac length"),v=d(t),o.push(v);var x=null,k=0;null!=_&&(x=d(_=E(o,_,"additional_data")),k=_.length,o.push(x)),n=E(o,n,"public_nonce");var S,T=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=d(n),o.push(S),s=E(o,s,"key");var w,Y=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();s.length!==Y&&f(o,"invalid key length"),w=d(s),o.push(w);var B=new u(0|i),A=B.address;if(o.push(A),0===r._crypto_aead_xchacha20poly1305_ietf_decrypt_detached(A,h,p,i,0,v,x,k,0,S,w)){var M=y(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function V(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"message")),h=e.length;c.push(o);var p=null,i=0;null!=a&&(p=d(a=E(c,a,"additional_data")),i=a.length,c.push(p));var v=null;null!=t&&(v=d(t=E(c,t,"secret_nonce")),t.length,c.push(v)),_=E(c,_,"public_nonce");var m,x=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==x&&f(c,"invalid public_nonce length"),m=d(_),c.push(m),n=E(c,n,"key");var k,S=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=d(n),c.push(k);var T=new u(h+r._crypto_aead_xchacha20poly1305_ietf_abytes()|0),w=T.address;if(c.push(w),0===r._crypto_aead_xchacha20poly1305_ietf_encrypt(w,null,o,h,0,p,i,0,v,m,k)){var Y=y(T,s);return g(c),Y}b(c,"invalid usage")}function H(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"message")),h=e.length;c.push(o);var p=null,i=0;null!=a&&(p=d(a=E(c,a,"additional_data")),i=a.length,c.push(p));var v=null;null!=t&&(v=d(t=E(c,t,"secret_nonce")),t.length,c.push(v)),_=E(c,_,"public_nonce");var m,x=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==x&&f(c,"invalid public_nonce length"),m=d(_),c.push(m),n=E(c,n,"key");var k,S=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=d(n),c.push(k);var T=new u(0|h),w=T.address;c.push(w);var Y=new u(0|r._crypto_aead_xchacha20poly1305_ietf_abytes()),B=Y.address;if(c.push(B),0===r._crypto_aead_xchacha20poly1305_ietf_encrypt_detached(w,B,null,o,h,0,p,i,0,v,m,k)){var A=y({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function W(e){var a=[];l(e);var t=new u(0|r._crypto_aead_xchacha20poly1305_ietf_keybytes()),_=t.address;a.push(_),r._crypto_aead_xchacha20poly1305_ietf_keygen(_);var n=y(t,e);return g(a),n}function q(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"key");var c,o=0|r._crypto_auth_keybytes();a.length!==o&&f(_,"invalid key length"),c=d(a),_.push(c);var h=new u(0|r._crypto_auth_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_auth(p,n,s,0,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function j(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"key");var c,o=0|r._crypto_auth_hmacsha256_keybytes();a.length!==o&&f(_,"invalid key length"),c=d(a),_.push(c);var h=new u(0|r._crypto_auth_hmacsha256_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_auth_hmacsha256(p,n,s,0,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function z(e,a){var t=[];l(a),m(t,e,"state_address");var _=new u(0|r._crypto_auth_hmacsha256_bytes()),n=_.address;if(t.push(n),!(0|r._crypto_auth_hmacsha256_final(e,n))){var s=(r._free(e),y(_,a));return g(t),s}b(t,"invalid usage")}function J(e,a){var t=[];l(a);var _=null,n=0;null!=e&&(_=d(e=E(t,e,"key")),n=e.length,t.push(_));var s=new u(208).address;if(!(0|r._crypto_auth_hmacsha256_init(s,_,n))){var c=s;return g(t),c}b(t,"invalid usage")}function Q(e){var a=[];l(e);var t=new u(0|r._crypto_auth_hmacsha256_keybytes()),_=t.address;a.push(_),r._crypto_auth_hmacsha256_keygen(_);var n=y(t,e);return g(a),n}function Z(e,a,t){var _=[];l(t),m(_,e,"state_address");var n=d(a=E(_,a,"message_chunk")),s=a.length;_.push(n),0|r._crypto_auth_hmacsha256_update(e,n,s)&&b(_,"invalid usage"),g(_)}function $(e,a,t){var _=[];e=E(_,e,"tag");var n,s=0|r._crypto_auth_hmacsha256_bytes();e.length!==s&&f(_,"invalid tag length"),n=d(e),_.push(n);var c=d(a=E(_,a,"message")),o=a.length;_.push(c),t=E(_,t,"key");var h,p=0|r._crypto_auth_hmacsha256_keybytes();t.length!==p&&f(_,"invalid key length"),h=d(t),_.push(h);var y=!(0|r._crypto_auth_hmacsha256_verify(n,c,o,0,h));return g(_),y}function ee(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"key");var c,o=0|r._crypto_auth_hmacsha512_keybytes();a.length!==o&&f(_,"invalid key length"),c=d(a),_.push(c);var h=new u(0|r._crypto_auth_hmacsha512_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_auth_hmacsha512(p,n,s,0,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function ae(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"key");var c,o=0|r._crypto_auth_hmacsha512256_keybytes();a.length!==o&&f(_,"invalid key length"),c=d(a),_.push(c);var h=new u(0|r._crypto_auth_hmacsha512256_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_auth_hmacsha512256(p,n,s,0,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function re(e,a){var t=[];l(a),m(t,e,"state_address");var _=new u(0|r._crypto_auth_hmacsha512256_bytes()),n=_.address;if(t.push(n),!(0|r._crypto_auth_hmacsha512256_final(e,n))){var s=(r._free(e),y(_,a));return g(t),s}b(t,"invalid usage")}function te(e,a){var t=[];l(a);var _=null,n=0;null!=e&&(_=d(e=E(t,e,"key")),n=e.length,t.push(_));var s=new u(416).address;if(!(0|r._crypto_auth_hmacsha512256_init(s,_,n))){var c=s;return g(t),c}b(t,"invalid usage")}function _e(e){var a=[];l(e);var t=new u(0|r._crypto_auth_hmacsha512256_keybytes()),_=t.address;a.push(_),r._crypto_auth_hmacsha512256_keygen(_);var n=y(t,e);return g(a),n}function ne(e,a,t){var _=[];l(t),m(_,e,"state_address");var n=d(a=E(_,a,"message_chunk")),s=a.length;_.push(n),0|r._crypto_auth_hmacsha512256_update(e,n,s)&&b(_,"invalid usage"),g(_)}function se(e,a,t){var _=[];e=E(_,e,"tag");var n,s=0|r._crypto_auth_hmacsha512256_bytes();e.length!==s&&f(_,"invalid tag length"),n=d(e),_.push(n);var c=d(a=E(_,a,"message")),o=a.length;_.push(c),t=E(_,t,"key");var h,p=0|r._crypto_auth_hmacsha512256_keybytes();t.length!==p&&f(_,"invalid key length"),h=d(t),_.push(h);var y=!(0|r._crypto_auth_hmacsha512256_verify(n,c,o,0,h));return g(_),y}function ce(e,a){var t=[];l(a),m(t,e,"state_address");var _=new u(0|r._crypto_auth_hmacsha512_bytes()),n=_.address;if(t.push(n),!(0|r._crypto_auth_hmacsha512_final(e,n))){var s=(r._free(e),y(_,a));return g(t),s}b(t,"invalid usage")}function oe(e,a){var t=[];l(a);var _=null,n=0;null!=e&&(_=d(e=E(t,e,"key")),n=e.length,t.push(_));var s=new u(416).address;if(!(0|r._crypto_auth_hmacsha512_init(s,_,n))){var c=s;return g(t),c}b(t,"invalid usage")}function he(e){var a=[];l(e);var t=new u(0|r._crypto_auth_hmacsha512_keybytes()),_=t.address;a.push(_),r._crypto_auth_hmacsha512_keygen(_);var n=y(t,e);return g(a),n}function pe(e,a,t){var _=[];l(t),m(_,e,"state_address");var n=d(a=E(_,a,"message_chunk")),s=a.length;_.push(n),0|r._crypto_auth_hmacsha512_update(e,n,s)&&b(_,"invalid usage"),g(_)}function ye(e,a,t){var _=[];e=E(_,e,"tag");var n,s=0|r._crypto_auth_hmacsha512_bytes();e.length!==s&&f(_,"invalid tag length"),n=d(e),_.push(n);var c=d(a=E(_,a,"message")),o=a.length;_.push(c),t=E(_,t,"key");var h,p=0|r._crypto_auth_hmacsha512_keybytes();t.length!==p&&f(_,"invalid key length"),h=d(t),_.push(h);var y=!(0|r._crypto_auth_hmacsha512_verify(n,c,o,0,h));return g(_),y}function ie(e){var a=[];l(e);var t=new u(0|r._crypto_auth_keybytes()),_=t.address;a.push(_),r._crypto_auth_keygen(_);var n=y(t,e);return g(a),n}function le(e,a,t){var _=[];e=E(_,e,"tag");var n,s=0|r._crypto_auth_bytes();e.length!==s&&f(_,"invalid tag length"),n=d(e),_.push(n);var c=d(a=E(_,a,"message")),o=a.length;_.push(c),t=E(_,t,"key");var h,p=0|r._crypto_auth_keybytes();t.length!==p&&f(_,"invalid key length"),h=d(t),_.push(h);var y=!(0|r._crypto_auth_verify(n,c,o,0,h));return g(_),y}function ue(e,a,t){var _=[];l(t),e=E(_,e,"publicKey");var n,s=0|r._crypto_box_publickeybytes();e.length!==s&&f(_,"invalid publicKey length"),n=d(e),_.push(n),a=E(_,a,"privateKey");var c,o=0|r._crypto_box_secretkeybytes();a.length!==o&&f(_,"invalid privateKey length"),c=d(a),_.push(c);var h=new u(0|r._crypto_box_beforenmbytes()),p=h.address;if(_.push(p),!(0|r._crypto_box_beforenm(p,n,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function de(e,a,t){var _=[];l(t),e=E(_,e,"publicKey");var n,s=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();e.length!==s&&f(_,"invalid publicKey length"),n=d(e),_.push(n),a=E(_,a,"privateKey");var c,o=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();a.length!==o&&f(_,"invalid privateKey length"),c=d(a),_.push(c);var h=new u(0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes()),p=h.address;if(_.push(p),!(0|r._crypto_box_curve25519xchacha20poly1305_beforenm(p,n,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function ve(e,a,t,_,n){var s=[];l(n);var c=d(e=E(s,e,"message")),o=e.length;s.push(c),a=E(s,a,"nonce");var h,p=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==p&&f(s,"invalid nonce length"),h=d(a),s.push(h),t=E(s,t,"publicKey");var i,v=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==v&&f(s,"invalid publicKey length"),i=d(t),s.push(i),_=E(s,_,"privateKey");var m,x=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==x&&f(s,"invalid privateKey length"),m=d(_),s.push(m);var k=new u(0|o),S=k.address;s.push(S);var T=new u(0|r._crypto_box_curve25519xchacha20poly1305_macbytes()),w=T.address;if(s.push(w),!(0|r._crypto_box_curve25519xchacha20poly1305_detached(S,w,c,o,0,h,i,m))){var Y=y({ciphertext:k,mac:T},n);return g(s),Y}b(s,"invalid usage")}function ge(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"message")),c=e.length;n.push(s),a=E(n,a,"nonce");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==h&&f(n,"invalid nonce length"),o=d(a),n.push(o),t=E(n,t,"sharedKey");var p,i=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();t.length!==i&&f(n,"invalid sharedKey length"),p=d(t),n.push(p);var v=new u(0|c),m=v.address;n.push(m);var x=new u(0|r._crypto_box_curve25519xchacha20poly1305_macbytes()),k=x.address;if(n.push(k),!(0|r._crypto_box_curve25519xchacha20poly1305_detached_afternm(m,k,s,c,0,o,p))){var S=y({ciphertext:v,mac:x},_);return g(n),S}b(n,"invalid usage")}function be(e,a,t,_,n){var s=[];l(n);var c=d(e=E(s,e,"message")),o=e.length;s.push(c),a=E(s,a,"nonce");var h,p=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==p&&f(s,"invalid nonce length"),h=d(a),s.push(h),t=E(s,t,"publicKey");var i,v=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==v&&f(s,"invalid publicKey length"),i=d(t),s.push(i),_=E(s,_,"privateKey");var m,x=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==x&&f(s,"invalid privateKey length"),m=d(_),s.push(m);var k=new u(o+r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),S=k.address;if(s.push(S),!(0|r._crypto_box_curve25519xchacha20poly1305_easy(S,c,o,0,h,i,m))){var T=y(k,n);return g(s),T}b(s,"invalid usage")}function fe(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"message")),c=e.length;n.push(s),a=E(n,a,"nonce");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==h&&f(n,"invalid nonce length"),o=d(a),n.push(o),t=E(n,t,"sharedKey");var p,i=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();t.length!==i&&f(n,"invalid sharedKey length"),p=d(t),n.push(p);var v=new u(c+r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),m=v.address;if(n.push(m),!(0|r._crypto_box_curve25519xchacha20poly1305_easy_afternm(m,s,c,0,o,p))){var x=y(v,_);return g(n),x}b(n,"invalid usage")}function me(e){var a=[];l(e);var t=new u(0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes()),_=t.address;a.push(_);var n=new u(0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),s=n.address;a.push(s),r._crypto_box_curve25519xchacha20poly1305_keypair(_,s);var c=y({publicKey:t,privateKey:n,keyType:"curve25519"},e);return g(a),c}function Ee(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"ciphertext")),h=e.length;c.push(o),a=E(c,a,"mac");var p,i=0|r._crypto_box_curve25519xchacha20poly1305_macbytes();a.length!==i&&f(c,"invalid mac length"),p=d(a),c.push(p),t=E(c,t,"nonce");var v,m=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==m&&f(c,"invalid nonce length"),v=d(t),c.push(v),_=E(c,_,"publicKey");var x,k=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();_.length!==k&&f(c,"invalid publicKey length"),x=d(_),c.push(x),n=E(c,n,"privateKey");var S,T=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();n.length!==T&&f(c,"invalid privateKey length"),S=d(n),c.push(S);var w=new u(0|h),Y=w.address;if(c.push(Y),!(0|r._crypto_box_curve25519xchacha20poly1305_open_detached(Y,o,p,h,0,v,x,S))){var B=y(w,s);return g(c),B}b(c,"incorrect key pair for the given ciphertext")}function xe(e,a,t,_,n){var s=[];l(n);var c=d(e=E(s,e,"ciphertext")),o=e.length;s.push(c),a=E(s,a,"mac");var h,p=0|r._crypto_box_curve25519xchacha20poly1305_macbytes();a.length!==p&&f(s,"invalid mac length"),h=d(a),s.push(h),t=E(s,t,"nonce");var i,v=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==v&&f(s,"invalid nonce length"),i=d(t),s.push(i),_=E(s,_,"sharedKey");var m,x=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();_.length!==x&&f(s,"invalid sharedKey length"),m=d(_),s.push(m);var k=new u(0|o),S=k.address;if(s.push(S),!(0|r._crypto_box_curve25519xchacha20poly1305_open_detached_afternm(S,c,h,o,0,i,m))){var T=y(k,n);return g(s),T}b(s,"incorrect secret key for the given ciphertext")}function ke(e,a,t,_,n){var s=[];l(n),e=E(s,e,"ciphertext");var c,o=r._crypto_box_curve25519xchacha20poly1305_macbytes(),h=e.length;h<o&&f(s,"ciphertext is too short"),c=d(e),s.push(c),a=E(s,a,"nonce");var p,i=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==i&&f(s,"invalid nonce length"),p=d(a),s.push(p),t=E(s,t,"publicKey");var v,m=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==m&&f(s,"invalid publicKey length"),v=d(t),s.push(v),_=E(s,_,"privateKey");var x,k=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==k&&f(s,"invalid privateKey length"),x=d(_),s.push(x);var S=new u(h-r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),T=S.address;if(s.push(T),!(0|r._crypto_box_curve25519xchacha20poly1305_open_easy(T,c,h,0,p,v,x))){var w=y(S,n);return g(s),w}b(s,"incorrect key pair for the given ciphertext")}function Se(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"ciphertext")),c=e.length;n.push(s),a=E(n,a,"nonce");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==h&&f(n,"invalid nonce length"),o=d(a),n.push(o),t=E(n,t,"sharedKey");var p,i=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();t.length!==i&&f(n,"invalid sharedKey length"),p=d(t),n.push(p);var v=new u(c-r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),m=v.address;if(n.push(m),!(0|r._crypto_box_curve25519xchacha20poly1305_open_easy_afternm(m,s,c,0,o,p))){var x=y(v,_);return g(n),x}b(n,"incorrect secret key for the given ciphertext")}function Te(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"publicKey");var c,o=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==o&&f(_,"invalid publicKey length"),c=d(a),_.push(c);var h=new u(s+r._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),p=h.address;_.push(p),r._crypto_box_curve25519xchacha20poly1305_seal(p,n,s,0,c);var i=y(h,t);return g(_),i}function we(e,a,t,_){var n=[];l(_),e=E(n,e,"ciphertext");var s,c=r._crypto_box_curve25519xchacha20poly1305_sealbytes(),o=e.length;o<c&&f(n,"ciphertext is too short"),s=d(e),n.push(s),a=E(n,a,"publicKey");var h,p=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==p&&f(n,"invalid publicKey length"),h=d(a),n.push(h),t=E(n,t,"secretKey");var i,v=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();t.length!==v&&f(n,"invalid secretKey length"),i=d(t),n.push(i);var b=new u(o-r._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),m=b.address;n.push(m),r._crypto_box_curve25519xchacha20poly1305_seal_open(m,s,o,0,h,i);var x=y(b,_);return g(n),x}function Ye(e,a){var t=[];l(a),e=E(t,e,"seed");var _,n=0|r._crypto_box_curve25519xchacha20poly1305_seedbytes();e.length!==n&&f(t,"invalid seed length"),_=d(e),t.push(_);var s=new u(0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes()),c=s.address;t.push(c);var o=new u(0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),h=o.address;if(t.push(h),!(0|r._crypto_box_curve25519xchacha20poly1305_seed_keypair(c,h,_))){var p={publicKey:y(s,a),privateKey:y(o,a),keyType:"x25519"};return g(t),p}b(t,"invalid usage")}function Be(e,a,t,_,n){var s=[];l(n);var c=d(e=E(s,e,"message")),o=e.length;s.push(c),a=E(s,a,"nonce");var h,p=0|r._crypto_box_noncebytes();a.length!==p&&f(s,"invalid nonce length"),h=d(a),s.push(h),t=E(s,t,"publicKey");var i,v=0|r._crypto_box_publickeybytes();t.length!==v&&f(s,"invalid publicKey length"),i=d(t),s.push(i),_=E(s,_,"privateKey");var m,x=0|r._crypto_box_secretkeybytes();_.length!==x&&f(s,"invalid privateKey length"),m=d(_),s.push(m);var k=new u(0|o),S=k.address;s.push(S);var T=new u(0|r._crypto_box_macbytes()),w=T.address;if(s.push(w),!(0|r._crypto_box_detached(S,w,c,o,0,h,i,m))){var Y=y({ciphertext:k,mac:T},n);return g(s),Y}b(s,"invalid usage")}function Ae(e,a,t,_,n){var s=[];l(n);var c=d(e=E(s,e,"message")),o=e.length;s.push(c),a=E(s,a,"nonce");var h,p=0|r._crypto_box_noncebytes();a.length!==p&&f(s,"invalid nonce length"),h=d(a),s.push(h),t=E(s,t,"publicKey");var i,v=0|r._crypto_box_publickeybytes();t.length!==v&&f(s,"invalid publicKey length"),i=d(t),s.push(i),_=E(s,_,"privateKey");var m,x=0|r._crypto_box_secretkeybytes();_.length!==x&&f(s,"invalid privateKey length"),m=d(_),s.push(m);var k=new u(o+r._crypto_box_macbytes()|0),S=k.address;if(s.push(S),!(0|r._crypto_box_easy(S,c,o,0,h,i,m))){var T=y(k,n);return g(s),T}b(s,"invalid usage")}function Me(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"message")),c=e.length;n.push(s),a=E(n,a,"nonce");var o,h=0|r._crypto_box_noncebytes();a.length!==h&&f(n,"invalid nonce length"),o=d(a),n.push(o),t=E(n,t,"sharedKey");var p,i=0|r._crypto_box_beforenmbytes();t.length!==i&&f(n,"invalid sharedKey length"),p=d(t),n.push(p);var v=new u(c+r._crypto_box_macbytes()|0),m=v.address;if(n.push(m),!(0|r._crypto_box_easy_afternm(m,s,c,0,o,p))){var x=y(v,_);return g(n),x}b(n,"invalid usage")}function Ie(e){var a=[];l(e);var t=new u(0|r._crypto_box_publickeybytes()),_=t.address;a.push(_);var n=new u(0|r._crypto_box_secretkeybytes()),s=n.address;if(a.push(s),!(0|r._crypto_box_keypair(_,s))){var c={publicKey:y(t,e),privateKey:y(n,e),keyType:"x25519"};return g(a),c}b(a,"internal error")}function Ke(e,a,t,_,n,s){var c=[];l(s);var o=d(e=E(c,e,"ciphertext")),h=e.length;c.push(o),a=E(c,a,"mac");var p,i=0|r._crypto_box_macbytes();a.length!==i&&f(c,"invalid mac length"),p=d(a),c.push(p),t=E(c,t,"nonce");var v,m=0|r._crypto_box_noncebytes();t.length!==m&&f(c,"invalid nonce length"),v=d(t),c.push(v),_=E(c,_,"publicKey");var x,k=0|r._crypto_box_publickeybytes();_.length!==k&&f(c,"invalid publicKey length"),x=d(_),c.push(x),n=E(c,n,"privateKey");var S,T=0|r._crypto_box_secretkeybytes();n.length!==T&&f(c,"invalid privateKey length"),S=d(n),c.push(S);var w=new u(0|h),Y=w.address;if(c.push(Y),!(0|r._crypto_box_open_detached(Y,o,p,h,0,v,x,S))){var B=y(w,s);return g(c),B}b(c,"incorrect key pair for the given ciphertext")}function Ne(e,a,t,_,n){var s=[];l(n),e=E(s,e,"ciphertext");var c,o=r._crypto_box_macbytes(),h=e.length;h<o&&f(s,"ciphertext is too short"),c=d(e),s.push(c),a=E(s,a,"nonce");var p,i=0|r._crypto_box_noncebytes();a.length!==i&&f(s,"invalid nonce length"),p=d(a),s.push(p),t=E(s,t,"publicKey");var v,m=0|r._crypto_box_publickeybytes();t.length!==m&&f(s,"invalid publicKey length"),v=d(t),s.push(v),_=E(s,_,"privateKey");var x,k=0|r._crypto_box_secretkeybytes();_.length!==k&&f(s,"invalid privateKey length"),x=d(_),s.push(x);var S=new u(h-r._crypto_box_macbytes()|0),T=S.address;if(s.push(T),!(0|r._crypto_box_open_easy(T,c,h,0,p,v,x))){var w=y(S,n);return g(s),w}b(s,"incorrect key pair for the given ciphertext")}function Le(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"ciphertext")),c=e.length;n.push(s),a=E(n,a,"nonce");var o,h=0|r._crypto_box_noncebytes();a.length!==h&&f(n,"invalid nonce length"),o=d(a),n.push(o),t=E(n,t,"sharedKey");var p,i=0|r._crypto_box_beforenmbytes();t.length!==i&&f(n,"invalid sharedKey length"),p=d(t),n.push(p);var v=new u(c-r._crypto_box_macbytes()|0),m=v.address;if(n.push(m),!(0|r._crypto_box_open_easy_afternm(m,s,c,0,o,p))){var x=y(v,_);return g(n),x}b(n,"incorrect secret key for the given ciphertext")}function Oe(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"publicKey");var c,o=0|r._crypto_box_publickeybytes();a.length!==o&&f(_,"invalid publicKey length"),c=d(a),_.push(c);var h=new u(s+r._crypto_box_sealbytes()|0),p=h.address;if(_.push(p),!(0|r._crypto_box_seal(p,n,s,0,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function Ue(e,a,t,_){var n=[];l(_),e=E(n,e,"ciphertext");var s,c=r._crypto_box_sealbytes(),o=e.length;o<c&&f(n,"ciphertext is too short"),s=d(e),n.push(s),a=E(n,a,"publicKey");var h,p=0|r._crypto_box_publickeybytes();a.length!==p&&f(n,"invalid publicKey length"),h=d(a),n.push(h),t=E(n,t,"privateKey");var i,v=0|r._crypto_box_secretkeybytes();t.length!==v&&f(n,"invalid privateKey length"),i=d(t),n.push(i);var m=new u(o-r._crypto_box_sealbytes()|0),x=m.address;if(n.push(x),!(0|r._crypto_box_seal_open(x,s,o,0,h,i))){var k=y(m,_);return g(n),k}b(n,"incorrect key pair for the given ciphertext")}function Ce(e,a){var t=[];l(a),e=E(t,e,"seed");var _,n=0|r._crypto_box_seedbytes();e.length!==n&&f(t,"invalid seed length"),_=d(e),t.push(_);var s=new u(0|r._crypto_box_publickeybytes()),c=s.address;t.push(c);var o=new u(0|r._crypto_box_secretkeybytes()),h=o.address;if(t.push(h),!(0|r._crypto_box_seed_keypair(c,h,_))){var p={publicKey:y(s,a),privateKey:y(o,a),keyType:"x25519"};return g(t),p}b(t,"invalid usage")}function Pe(e,a,t){var _=[];l(t),e=E(_,e,"p");var n,s=0|r._crypto_core_ed25519_bytes();e.length!==s&&f(_,"invalid p length"),n=d(e),_.push(n),a=E(_,a,"q");var c,o=0|r._crypto_core_ed25519_bytes();a.length!==o&&f(_,"invalid q length"),c=d(a),_.push(c);var h=new u(0|r._crypto_core_ed25519_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_core_ed25519_add(p,n,c))){var i=y(h,t);return g(_),i}b(_,"input is an invalid element")}function Re(e,a){var t=[];l(a);var _=d(e=E(t,e,"r"));e.length,t.push(_);var n=new u(0|r._crypto_core_ed25519_bytes()),s=n.address;if(t.push(s),!(0|r._crypto_core_ed25519_from_hash(s,_))){var c=y(n,a);return g(t),c}b(t,"invalid usage")}function Xe(e,a){var t=[];l(a);var _=d(e=E(t,e,"r"));e.length,t.push(_);var n=new u(0|r._crypto_core_ed25519_bytes()),s=n.address;if(t.push(s),!(0|r._crypto_core_ed25519_from_uniform(s,_))){var c=y(n,a);return g(t),c}b(t,"invalid usage")}function Ge(e,a){var t=[];l(a),e=E(t,e,"repr");var _,n=0|r._crypto_core_ed25519_bytes();e.length!==n&&f(t,"invalid repr length"),_=d(e),t.push(_);var s=1==(0|r._crypto_core_ed25519_is_valid_point(_));return g(t),s}function De(e){var a=[];l(e);var t=new u(0|r._crypto_core_ed25519_bytes()),_=t.address;a.push(_),r._crypto_core_ed25519_random(_);var n=y(t,e);return g(a),n}function Fe(e,a,t){var _=[];l(t),e=E(_,e,"x");var n,s=0|r._crypto_core_ed25519_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=d(e),_.push(n),a=E(_,a,"y");var c,o=0|r._crypto_core_ed25519_scalarbytes();a.length!==o&&f(_,"invalid y length"),c=d(a),_.push(c);var h=new u(0|r._crypto_core_ed25519_scalarbytes()),p=h.address;_.push(p),r._crypto_core_ed25519_scalar_add(p,n,c);var i=y(h,t);return g(_),i}function Ve(e,a){var t=[];l(a),e=E(t,e,"s");var _,n=0|r._crypto_core_ed25519_scalarbytes();e.length!==n&&f(t,"invalid s length"),_=d(e),t.push(_);var s=new u(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;t.push(c),r._crypto_core_ed25519_scalar_complement(c,_);var o=y(s,a);return g(t),o}function He(e,a){var t=[];l(a),e=E(t,e,"s");var _,n=0|r._crypto_core_ed25519_scalarbytes();e.length!==n&&f(t,"invalid s length"),_=d(e),t.push(_);var s=new u(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;if(t.push(c),!(0|r._crypto_core_ed25519_scalar_invert(c,_))){var o=y(s,a);return g(t),o}b(t,"invalid reciprocate")}function We(e,a,t){var _=[];l(t),e=E(_,e,"x");var n,s=0|r._crypto_core_ed25519_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=d(e),_.push(n),a=E(_,a,"y");var c,o=0|r._crypto_core_ed25519_scalarbytes();a.length!==o&&f(_,"invalid y length"),c=d(a),_.push(c);var h=new u(0|r._crypto_core_ed25519_scalarbytes()),p=h.address;_.push(p),r._crypto_core_ed25519_scalar_mul(p,n,c);var i=y(h,t);return g(_),i}function qe(e,a){var t=[];l(a),e=E(t,e,"s");var _,n=0|r._crypto_core_ed25519_scalarbytes();e.length!==n&&f(t,"invalid s length"),_=d(e),t.push(_);var s=new u(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;t.push(c),r._crypto_core_ed25519_scalar_negate(c,_);var o=y(s,a);return g(t),o}function je(e){var a=[];l(e);var t=new u(0|r._crypto_core_ed25519_scalarbytes()),_=t.address;a.push(_),r._crypto_core_ed25519_scalar_random(_);var n=y(t,e);return g(a),n}function ze(e,a){var t=[];l(a),e=E(t,e,"sample");var _,n=0|r._crypto_core_ed25519_nonreducedscalarbytes();e.length!==n&&f(t,"invalid sample length"),_=d(e),t.push(_);var s=new u(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;t.push(c),r._crypto_core_ed25519_scalar_reduce(c,_);var o=y(s,a);return g(t),o}function Je(e,a,t){var _=[];l(t),e=E(_,e,"x");var n,s=0|r._crypto_core_ed25519_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=d(e),_.push(n),a=E(_,a,"y");var c,o=0|r._crypto_core_ed25519_scalarbytes();a.length!==o&&f(_,"invalid y length"),c=d(a),_.push(c);var h=new u(0|r._crypto_core_ed25519_scalarbytes()),p=h.address;_.push(p),r._crypto_core_ed25519_scalar_sub(p,n,c);var i=y(h,t);return g(_),i}function Qe(e,a,t){var _=[];l(t),e=E(_,e,"p");var n,s=0|r._crypto_core_ed25519_bytes();e.length!==s&&f(_,"invalid p length"),n=d(e),_.push(n),a=E(_,a,"q");var c,o=0|r._crypto_core_ed25519_bytes();a.length!==o&&f(_,"invalid q length"),c=d(a),_.push(c);var h=new u(0|r._crypto_core_ed25519_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_core_ed25519_sub(p,n,c))){var i=y(h,t);return g(_),i}b(_,"input is an invalid element")}function Ze(e,a,t,_){var n=[];l(_),e=E(n,e,"input");var s,c=0|r._crypto_core_hchacha20_inputbytes();e.length!==c&&f(n,"invalid input length"),s=d(e),n.push(s),a=E(n,a,"privateKey");var o,h=0|r._crypto_core_hchacha20_keybytes();a.length!==h&&f(n,"invalid privateKey length"),o=d(a),n.push(o);var p=null;null!=t&&(p=d(t=E(n,t,"constant")),t.length,n.push(p));var i=new u(0|r._crypto_core_hchacha20_outputbytes()),v=i.address;if(n.push(v),!(0|r._crypto_core_hchacha20(v,s,o,p))){var m=y(i,_);return g(n),m}b(n,"invalid usage")}function $e(e,a,t,_){var n=[];l(_),e=E(n,e,"input");var s,c=0|r._crypto_core_hsalsa20_inputbytes();e.length!==c&&f(n,"invalid input length"),s=d(e),n.push(s),a=E(n,a,"privateKey");var o,h=0|r._crypto_core_hsalsa20_keybytes();a.length!==h&&f(n,"invalid privateKey length"),o=d(a),n.push(o);var p=null;null!=t&&(p=d(t=E(n,t,"constant")),t.length,n.push(p));var i=new u(0|r._crypto_core_hsalsa20_outputbytes()),v=i.address;if(n.push(v),!(0|r._crypto_core_hsalsa20(v,s,o,p))){var m=y(i,_);return g(n),m}b(n,"invalid usage")}function ea(e,a,t){var _=[];l(t),e=E(_,e,"p");var n,s=0|r._crypto_core_ristretto255_bytes();e.length!==s&&f(_,"invalid p length"),n=d(e),_.push(n),a=E(_,a,"q");var c,o=0|r._crypto_core_ristretto255_bytes();a.length!==o&&f(_,"invalid q length"),c=d(a),_.push(c);var h=new u(0|r._crypto_core_ristretto255_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_core_ristretto255_add(p,n,c))){var i=y(h,t);return g(_),i}b(_,"input is an invalid element")}function aa(e,a){var t=[];l(a);var _=d(e=E(t,e,"r"));e.length,t.push(_);var n=new u(0|r._crypto_core_ristretto255_bytes()),s=n.address;if(t.push(s),!(0|r._crypto_core_ristretto255_from_hash(s,_))){var c=y(n,a);return g(t),c}b(t,"invalid usage")}function ra(e,a){var t=[];l(a),e=E(t,e,"repr");var _,n=0|r._crypto_core_ristretto255_bytes();e.length!==n&&f(t,"invalid repr length"),_=d(e),t.push(_);var s=1==(0|r._crypto_core_ristretto255_is_valid_point(_));return g(t),s}function ta(e){var a=[];l(e);var t=new u(0|r._crypto_core_ristretto255_bytes()),_=t.address;a.push(_),r._crypto_core_ristretto255_random(_);var n=y(t,e);return g(a),n}function _a(e,a,t){var _=[];l(t),e=E(_,e,"x");var n,s=0|r._crypto_core_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=d(e),_.push(n),a=E(_,a,"y");var c,o=0|r._crypto_core_ristretto255_scalarbytes();a.length!==o&&f(_,"invalid y length"),c=d(a),_.push(c);var h=new u(0|r._crypto_core_ristretto255_scalarbytes()),p=h.address;_.push(p),r._crypto_core_ristretto255_scalar_add(p,n,c);var i=y(h,t);return g(_),i}function na(e,a){var t=[];l(a),e=E(t,e,"s");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(t,"invalid s length"),_=d(e),t.push(_);var s=new u(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;t.push(c),r._crypto_core_ristretto255_scalar_complement(c,_);var o=y(s,a);return g(t),o}function sa(e,a){var t=[];l(a),e=E(t,e,"s");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(t,"invalid s length"),_=d(e),t.push(_);var s=new u(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;if(t.push(c),!(0|r._crypto_core_ristretto255_scalar_invert(c,_))){var o=y(s,a);return g(t),o}b(t,"invalid reciprocate")}function ca(e,a,t){var _=[];l(t),e=E(_,e,"x");var n,s=0|r._crypto_core_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=d(e),_.push(n),a=E(_,a,"y");var c,o=0|r._crypto_core_ristretto255_scalarbytes();a.length!==o&&f(_,"invalid y length"),c=d(a),_.push(c);var h=new u(0|r._crypto_core_ristretto255_scalarbytes()),p=h.address;_.push(p),r._crypto_core_ristretto255_scalar_mul(p,n,c);var i=y(h,t);return g(_),i}function oa(e,a){var t=[];l(a),e=E(t,e,"s");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(t,"invalid s length"),_=d(e),t.push(_);var s=new u(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;t.push(c),r._crypto_core_ristretto255_scalar_negate(c,_);var o=y(s,a);return g(t),o}function ha(e){var a=[];l(e);var t=new u(0|r._crypto_core_ristretto255_scalarbytes()),_=t.address;a.push(_),r._crypto_core_ristretto255_scalar_random(_);var n=y(t,e);return g(a),n}function pa(e,a){var t=[];l(a),e=E(t,e,"sample");var _,n=0|r._crypto_core_ristretto255_nonreducedscalarbytes();e.length!==n&&f(t,"invalid sample length"),_=d(e),t.push(_);var s=new u(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;t.push(c),r._crypto_core_ristretto255_scalar_reduce(c,_);var o=y(s,a);return g(t),o}function ya(e,a,t){var _=[];l(t),e=E(_,e,"x");var n,s=0|r._crypto_core_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=d(e),_.push(n),a=E(_,a,"y");var c,o=0|r._crypto_core_ristretto255_scalarbytes();a.length!==o&&f(_,"invalid y length"),c=d(a),_.push(c);var h=new u(0|r._crypto_core_ristretto255_scalarbytes()),p=h.address;_.push(p),r._crypto_core_ristretto255_scalar_sub(p,n,c);var i=y(h,t);return g(_),i}function ia(e,a,t){var _=[];l(t),e=E(_,e,"p");var n,s=0|r._crypto_core_ristretto255_bytes();e.length!==s&&f(_,"invalid p length"),n=d(e),_.push(n),a=E(_,a,"q");var c,o=0|r._crypto_core_ristretto255_bytes();a.length!==o&&f(_,"invalid q length"),c=d(a),_.push(c);var h=new u(0|r._crypto_core_ristretto255_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_core_ristretto255_sub(p,n,c))){var i=y(h,t);return g(_),i}b(_,"input is an invalid element")}function la(e,a,t,_){var n=[];l(_),m(n,e,"hash_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(n,"hash_length must be an unsigned integer");var s=d(a=E(n,a,"message")),c=a.length;n.push(s);var o=null,h=0;null!=t&&(o=d(t=E(n,t,"key")),h=t.length,n.push(o));var p=new u(e|=0),i=p.address;if(n.push(i),!(0|r._crypto_generichash(i,e,s,c,0,o,h))){var v=y(p,_);return g(n),v}b(n,"invalid usage")}function ua(e,a,t,_,n){var s=[];l(n),m(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&f(s,"subkey_len must be an unsigned integer");var c=null,o=0;null!=a&&(c=d(a=E(s,a,"key")),o=a.length,s.push(c));var h=null,p=0;null!=t&&(t=E(s,t,"id"),p=0|r._crypto_generichash_blake2b_saltbytes(),t.length!==p&&f(s,"invalid id length"),h=d(t),s.push(h));var i=null,v=0;null!=_&&(_=E(s,_,"ctx"),v=0|r._crypto_generichash_blake2b_personalbytes(),_.length!==v&&f(s,"invalid ctx length"),i=d(_),s.push(i));var x=new u(0|e),k=x.address;if(s.push(k),!(0|r._crypto_generichash_blake2b_salt_personal(k,e,null,0,0,c,o,h,i))){var S=y(x,n);return g(s),S}b(s,"invalid usage")}function da(e,a,t){var _=[];l(t),m(_,e,"state_address"),m(_,a,"hash_length"),("number"!=typeof a||(0|a)!==a||a<0)&&f(_,"hash_length must be an unsigned integer");var n=new u(a|=0),s=n.address;if(_.push(s),!(0|r._crypto_generichash_final(e,s,a))){var c=(r._free(e),y(n,t));return g(_),c}b(_,"invalid usage")}function va(e,a,t){var _=[];l(t);var n=null,s=0;null!=e&&(n=d(e=E(_,e,"key")),s=e.length,_.push(n)),m(_,a,"hash_length"),("number"!=typeof a||(0|a)!==a||a<0)&&f(_,"hash_length must be an unsigned integer");var c=new u(357).address;if(!(0|r._crypto_generichash_init(c,n,s,a))){var o=c;return g(_),o}b(_,"invalid usage")}function ga(e){var a=[];l(e);var t=new u(0|r._crypto_generichash_keybytes()),_=t.address;a.push(_),r._crypto_generichash_keygen(_);var n=y(t,e);return g(a),n}function ba(e,a,t){var _=[];l(t),m(_,e,"state_address");var n=d(a=E(_,a,"message_chunk")),s=a.length;_.push(n),0|r._crypto_generichash_update(e,n,s)&&b(_,"invalid usage"),g(_)}function fa(e,a){var t=[];l(a);var _=d(e=E(t,e,"message")),n=e.length;t.push(_);var s=new u(0|r._crypto_hash_bytes()),c=s.address;if(t.push(c),!(0|r._crypto_hash(c,_,n,0))){var o=y(s,a);return g(t),o}b(t,"invalid usage")}function ma(e,a){var t=[];l(a);var _=d(e=E(t,e,"message")),n=e.length;t.push(_);var s=new u(0|r._crypto_hash_sha256_bytes()),c=s.address;if(t.push(c),!(0|r._crypto_hash_sha256(c,_,n,0))){var o=y(s,a);return g(t),o}b(t,"invalid usage")}function Ea(e,a){var t=[];l(a),m(t,e,"state_address");var _=new u(0|r._crypto_hash_sha256_bytes()),n=_.address;if(t.push(n),!(0|r._crypto_hash_sha256_final(e,n))){var s=(r._free(e),y(_,a));return g(t),s}b(t,"invalid usage")}function xa(e){var a=[];l(e);var t=new u(104).address;if(!(0|r._crypto_hash_sha256_init(t))){var _=t;return g(a),_}b(a,"invalid usage")}function ka(e,a,t){var _=[];l(t),m(_,e,"state_address");var n=d(a=E(_,a,"message_chunk")),s=a.length;_.push(n),0|r._crypto_hash_sha256_update(e,n,s)&&b(_,"invalid usage"),g(_)}function Sa(e,a){var t=[];l(a);var _=d(e=E(t,e,"message")),n=e.length;t.push(_);var s=new u(0|r._crypto_hash_sha512_bytes()),c=s.address;if(t.push(c),!(0|r._crypto_hash_sha512(c,_,n,0))){var o=y(s,a);return g(t),o}b(t,"invalid usage")}function Ta(e,a){var t=[];l(a),m(t,e,"state_address");var _=new u(0|r._crypto_hash_sha512_bytes()),n=_.address;if(t.push(n),!(0|r._crypto_hash_sha512_final(e,n))){var s=(r._free(e),y(_,a));return g(t),s}b(t,"invalid usage")}function wa(e){var a=[];l(e);var t=new u(208).address;if(!(0|r._crypto_hash_sha512_init(t))){var _=t;return g(a),_}b(a,"invalid usage")}function Ya(e,a,t){var _=[];l(t),m(_,e,"state_address");var n=d(a=E(_,a,"message_chunk")),s=a.length;_.push(n),0|r._crypto_hash_sha512_update(e,n,s)&&b(_,"invalid usage"),g(_)}function Ba(e,a,t,_,s){var c=[];l(s),m(c,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&f(c,"subkey_len must be an unsigned integer"),m(c,a,"subkey_id");var o,h=0;if("bigint"==typeof a&&a>=BigInt(0)){const e=a>>BigInt(32);e>BigInt(4294967295)&&f(c,"subkey_id cannot be more than 64 bits"),h=Number(e),o=Number(a&BigInt(4294967295))}else"number"==typeof a&&(0|a)===a&&a>=0?o=a:f(c,"subkey_id must be an unsigned integer or bigint");"string"!=typeof t&&f(c,"ctx must be a string"),t=n(t+"\0"),null!=i&&t.length-1!==i&&f(c,"invalid ctx length");var p=d(t),i=t.length-1;c.push(p),_=E(c,_,"key");var v,b=0|r._crypto_kdf_keybytes();_.length!==b&&f(c,"invalid key length"),v=d(_),c.push(v);var x=new u(0|e),k=x.address;c.push(k),r._crypto_kdf_derive_from_key(k,e,o,h,p,v);var S=y(x,s);return g(c),S}function Aa(e){var a=[];l(e);var t=new u(0|r._crypto_kdf_keybytes()),_=t.address;a.push(_),r._crypto_kdf_keygen(_);var n=y(t,e);return g(a),n}function Ma(e,a,t,_){var n=[];l(_),e=E(n,e,"clientPublicKey");var s,c=0|r._crypto_kx_publickeybytes();e.length!==c&&f(n,"invalid clientPublicKey length"),s=d(e),n.push(s),a=E(n,a,"clientSecretKey");var o,h=0|r._crypto_kx_secretkeybytes();a.length!==h&&f(n,"invalid clientSecretKey length"),o=d(a),n.push(o),t=E(n,t,"serverPublicKey");var p,i=0|r._crypto_kx_publickeybytes();t.length!==i&&f(n,"invalid serverPublicKey length"),p=d(t),n.push(p);var v=new u(0|r._crypto_kx_sessionkeybytes()),m=v.address;n.push(m);var x=new u(0|r._crypto_kx_sessionkeybytes()),k=x.address;if(n.push(k),!(0|r._crypto_kx_client_session_keys(m,k,s,o,p))){var S=y({sharedRx:v,sharedTx:x},_);return g(n),S}b(n,"invalid usage")}function Ia(e){var a=[];l(e);var t=new u(0|r._crypto_kx_publickeybytes()),_=t.address;a.push(_);var n=new u(0|r._crypto_kx_secretkeybytes()),s=n.address;if(a.push(s),!(0|r._crypto_kx_keypair(_,s))){var c={publicKey:y(t,e),privateKey:y(n,e),keyType:"x25519"};return g(a),c}b(a,"internal error")}function Ka(e,a){var t=[];l(a),e=E(t,e,"seed");var _,n=0|r._crypto_kx_seedbytes();e.length!==n&&f(t,"invalid seed length"),_=d(e),t.push(_);var s=new u(0|r._crypto_kx_publickeybytes()),c=s.address;t.push(c);var o=new u(0|r._crypto_kx_secretkeybytes()),h=o.address;if(t.push(h),!(0|r._crypto_kx_seed_keypair(c,h,_))){var p={publicKey:y(s,a),privateKey:y(o,a),keyType:"x25519"};return g(t),p}b(t,"internal error")}function Na(e,a,t,_){var n=[];l(_),e=E(n,e,"serverPublicKey");var s,c=0|r._crypto_kx_publickeybytes();e.length!==c&&f(n,"invalid serverPublicKey length"),s=d(e),n.push(s),a=E(n,a,"serverSecretKey");var o,h=0|r._crypto_kx_secretkeybytes();a.length!==h&&f(n,"invalid serverSecretKey length"),o=d(a),n.push(o),t=E(n,t,"clientPublicKey");var p,i=0|r._crypto_kx_publickeybytes();t.length!==i&&f(n,"invalid clientPublicKey length"),p=d(t),n.push(p);var v=new u(0|r._crypto_kx_sessionkeybytes()),m=v.address;n.push(m);var x=new u(0|r._crypto_kx_sessionkeybytes()),k=x.address;if(n.push(k),!(0|r._crypto_kx_server_session_keys(m,k,s,o,p))){var S=y({sharedRx:v,sharedTx:x},_);return g(n),S}b(n,"invalid usage")}function La(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"key");var c,o=0|r._crypto_onetimeauth_keybytes();a.length!==o&&f(_,"invalid key length"),c=d(a),_.push(c);var h=new u(0|r._crypto_onetimeauth_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_onetimeauth(p,n,s,0,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function Oa(e,a){var t=[];l(a),m(t,e,"state_address");var _=new u(0|r._crypto_onetimeauth_bytes()),n=_.address;if(t.push(n),!(0|r._crypto_onetimeauth_final(e,n))){var s=(r._free(e),y(_,a));return g(t),s}b(t,"invalid usage")}function Ua(e,a){var t=[];l(a);var _=null;null!=e&&(_=d(e=E(t,e,"key")),e.length,t.push(_));var n=new u(144).address;if(!(0|r._crypto_onetimeauth_init(n,_))){var s=n;return g(t),s}b(t,"invalid usage")}function Ca(e){var a=[];l(e);var t=new u(0|r._crypto_onetimeauth_keybytes()),_=t.address;a.push(_),r._crypto_onetimeauth_keygen(_);var n=y(t,e);return g(a),n}function Pa(e,a,t){var _=[];l(t),m(_,e,"state_address");var n=d(a=E(_,a,"message_chunk")),s=a.length;_.push(n),0|r._crypto_onetimeauth_update(e,n,s)&&b(_,"invalid usage"),g(_)}function Ra(e,a,t){var _=[];e=E(_,e,"hash");var n,s=0|r._crypto_onetimeauth_bytes();e.length!==s&&f(_,"invalid hash length"),n=d(e),_.push(n);var c=d(a=E(_,a,"message")),o=a.length;_.push(c),t=E(_,t,"key");var h,p=0|r._crypto_onetimeauth_keybytes();t.length!==p&&f(_,"invalid key length"),h=d(t),_.push(h);var y=!(0|r._crypto_onetimeauth_verify(n,c,o,0,h));return g(_),y}function Xa(e,a,t,_,n,s,c){var o=[];l(c),m(o,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&f(o,"keyLength must be an unsigned integer");var h=d(a=E(o,a,"password")),p=a.length;o.push(h),t=E(o,t,"salt");var i,v=0|r._crypto_pwhash_saltbytes();t.length!==v&&f(o,"invalid salt length"),i=d(t),o.push(i),m(o,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&f(o,"opsLimit must be an unsigned integer"),m(o,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&f(o,"memLimit must be an unsigned integer"),m(o,s,"algorithm"),("number"!=typeof s||(0|s)!==s||s<0)&&f(o,"algorithm must be an unsigned integer");var x=new u(0|e),k=x.address;if(o.push(k),!(0|r._crypto_pwhash(k,e,0,h,p,0,i,_,0,n,s))){var S=y(x,c);return g(o),S}b(o,"invalid usage")}function Ga(e,a,t,_,n,s){var c=[];l(s),m(c,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&f(c,"keyLength must be an unsigned integer");var o=d(a=E(c,a,"password")),h=a.length;c.push(o),t=E(c,t,"salt");var p,i=0|r._crypto_pwhash_scryptsalsa208sha256_saltbytes();t.length!==i&&f(c,"invalid salt length"),p=d(t),c.push(p),m(c,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&f(c,"opsLimit must be an unsigned integer"),m(c,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&f(c,"memLimit must be an unsigned integer");var v=new u(0|e),x=v.address;if(c.push(x),!(0|r._crypto_pwhash_scryptsalsa208sha256(x,e,0,o,h,0,p,_,0,n))){var k=y(v,s);return g(c),k}b(c,"invalid usage")}function Da(e,a,t,_,n,s,c){var o=[];l(c);var h=d(e=E(o,e,"password")),p=e.length;o.push(h);var i=d(a=E(o,a,"salt")),v=a.length;o.push(i),m(o,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&f(o,"opsLimit must be an unsigned integer"),m(o,_,"r"),("number"!=typeof _||(0|_)!==_||_<0)&&f(o,"r must be an unsigned integer"),m(o,n,"p"),("number"!=typeof n||(0|n)!==n||n<0)&&f(o,"p must be an unsigned integer"),m(o,s,"keyLength"),("number"!=typeof s||(0|s)!==s||s<0)&&f(o,"keyLength must be an unsigned integer");var x=new u(0|s),k=x.address;if(o.push(k),!(0|r._crypto_pwhash_scryptsalsa208sha256_ll(h,p,i,v,t,0,_,n,k,s))){var S=y(x,c);return g(o),S}b(o,"invalid usage")}function Fa(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"password")),c=e.length;n.push(s),m(n,a,"opsLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(n,"opsLimit must be an unsigned integer"),m(n,t,"memLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&f(n,"memLimit must be an unsigned integer");var o=new u(0|r._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(n.push(o),!(0|r._crypto_pwhash_scryptsalsa208sha256_str(o,s,c,0,a,0,t))){var h=r.UTF8ToString(o);return g(n),h}b(n,"invalid usage")}function Va(e,a,t){var _=[];l(t),"string"!=typeof e&&f(_,"hashed_password must be a string"),e=n(e+"\0"),null!=c&&e.length-1!==c&&f(_,"invalid hashed_password length");var s=d(e),c=e.length-1;_.push(s);var o=d(a=E(_,a,"password")),h=a.length;_.push(o);var p=!(0|r._crypto_pwhash_scryptsalsa208sha256_str_verify(s,o,h,0));return g(_),p}function Ha(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"password")),c=e.length;n.push(s),m(n,a,"opsLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(n,"opsLimit must be an unsigned integer"),m(n,t,"memLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&f(n,"memLimit must be an unsigned integer");var o=new u(0|r._crypto_pwhash_strbytes()).address;if(n.push(o),!(0|r._crypto_pwhash_str(o,s,c,0,a,0,t))){var h=r.UTF8ToString(o);return g(n),h}b(n,"invalid usage")}function Wa(e,a,t,_){var s=[];l(_),"string"!=typeof e&&f(s,"hashed_password must be a string"),e=n(e+"\0"),null!=o&&e.length-1!==o&&f(s,"invalid hashed_password length");var c=d(e),o=e.length-1;s.push(c),m(s,a,"opsLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(s,"opsLimit must be an unsigned integer"),m(s,t,"memLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&f(s,"memLimit must be an unsigned integer");var h=!!(0|r._crypto_pwhash_str_needs_rehash(c,a,0,t));return g(s),h}function qa(e,a,t){var _=[];l(t),"string"!=typeof e&&f(_,"hashed_password must be a string"),e=n(e+"\0"),null!=c&&e.length-1!==c&&f(_,"invalid hashed_password length");var s=d(e),c=e.length-1;_.push(s);var o=d(a=E(_,a,"password")),h=a.length;_.push(o);var p=!(0|r._crypto_pwhash_str_verify(s,o,h,0));return g(_),p}function ja(e,a,t){var _=[];l(t),e=E(_,e,"privateKey");var n,s=0|r._crypto_scalarmult_scalarbytes();e.length!==s&&f(_,"invalid privateKey length"),n=d(e),_.push(n),a=E(_,a,"publicKey");var c,o=0|r._crypto_scalarmult_bytes();a.length!==o&&f(_,"invalid publicKey length"),c=d(a),_.push(c);var h=new u(0|r._crypto_scalarmult_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_scalarmult(p,n,c))){var i=y(h,t);return g(_),i}b(_,"weak public key")}function za(e,a){var t=[];l(a),e=E(t,e,"privateKey");var _,n=0|r._crypto_scalarmult_scalarbytes();e.length!==n&&f(t,"invalid privateKey length"),_=d(e),t.push(_);var s=new u(0|r._crypto_scalarmult_bytes()),c=s.address;if(t.push(c),!(0|r._crypto_scalarmult_base(c,_))){var o=y(s,a);return g(t),o}b(t,"unknown error")}function Ja(e,a,t){var _=[];l(t),e=E(_,e,"n");var n,s=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==s&&f(_,"invalid n length"),n=d(e),_.push(n),a=E(_,a,"p");var c,o=0|r._crypto_scalarmult_ed25519_bytes();a.length!==o&&f(_,"invalid p length"),c=d(a),_.push(c);var h=new u(0|r._crypto_scalarmult_ed25519_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_scalarmult_ed25519(p,n,c))){var i=y(h,t);return g(_),i}b(_,"invalid point or scalar is 0")}function Qa(e,a){var t=[];l(a),e=E(t,e,"scalar");var _,n=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==n&&f(t,"invalid scalar length"),_=d(e),t.push(_);var s=new u(0|r._crypto_scalarmult_ed25519_bytes()),c=s.address;if(t.push(c),!(0|r._crypto_scalarmult_ed25519_base(c,_))){var o=y(s,a);return g(t),o}b(t,"scalar is 0")}function Za(e,a){var t=[];l(a),e=E(t,e,"scalar");var _,n=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==n&&f(t,"invalid scalar length"),_=d(e),t.push(_);var s=new u(0|r._crypto_scalarmult_ed25519_bytes()),c=s.address;if(t.push(c),!(0|r._crypto_scalarmult_ed25519_base_noclamp(c,_))){var o=y(s,a);return g(t),o}b(t,"scalar is 0")}function $a(e,a,t){var _=[];l(t),e=E(_,e,"n");var n,s=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==s&&f(_,"invalid n length"),n=d(e),_.push(n),a=E(_,a,"p");var c,o=0|r._crypto_scalarmult_ed25519_bytes();a.length!==o&&f(_,"invalid p length"),c=d(a),_.push(c);var h=new u(0|r._crypto_scalarmult_ed25519_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_scalarmult_ed25519_noclamp(p,n,c))){var i=y(h,t);return g(_),i}b(_,"invalid point or scalar is 0")}function er(e,a,t){var _=[];l(t),e=E(_,e,"scalar");var n,s=0|r._crypto_scalarmult_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid scalar length"),n=d(e),_.push(n),a=E(_,a,"element");var c,o=0|r._crypto_scalarmult_ristretto255_bytes();a.length!==o&&f(_,"invalid element length"),c=d(a),_.push(c);var h=new u(0|r._crypto_scalarmult_ristretto255_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_scalarmult_ristretto255(p,n,c))){var i=y(h,t);return g(_),i}b(_,"result is identity element")}function ar(e,a){var t=[];l(a),e=E(t,e,"scalar");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(t,"invalid scalar length"),_=d(e),t.push(_);var s=new u(0|r._crypto_core_ristretto255_bytes()),c=s.address;if(t.push(c),!(0|r._crypto_scalarmult_ristretto255_base(c,_))){var o=y(s,a);return g(t),o}b(t,"scalar is 0")}function rr(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"message")),c=e.length;n.push(s),a=E(n,a,"nonce");var o,h=0|r._crypto_secretbox_noncebytes();a.length!==h&&f(n,"invalid nonce length"),o=d(a),n.push(o),t=E(n,t,"key");var p,i=0|r._crypto_secretbox_keybytes();t.length!==i&&f(n,"invalid key length"),p=d(t),n.push(p);var v=new u(0|c),m=v.address;n.push(m);var x=new u(0|r._crypto_secretbox_macbytes()),k=x.address;if(n.push(k),!(0|r._crypto_secretbox_detached(m,k,s,c,0,o,p))){var S=y({mac:x,cipher:v},_);return g(n),S}b(n,"invalid usage")}function tr(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"message")),c=e.length;n.push(s),a=E(n,a,"nonce");var o,h=0|r._crypto_secretbox_noncebytes();a.length!==h&&f(n,"invalid nonce length"),o=d(a),n.push(o),t=E(n,t,"key");var p,i=0|r._crypto_secretbox_keybytes();t.length!==i&&f(n,"invalid key length"),p=d(t),n.push(p);var v=new u(c+r._crypto_secretbox_macbytes()|0),m=v.address;if(n.push(m),!(0|r._crypto_secretbox_easy(m,s,c,0,o,p))){var x=y(v,_);return g(n),x}b(n,"invalid usage")}function _r(e){var a=[];l(e);var t=new u(0|r._crypto_secretbox_keybytes()),_=t.address;a.push(_),r._crypto_secretbox_keygen(_);var n=y(t,e);return g(a),n}function nr(e,a,t,_,n){var s=[];l(n);var c=d(e=E(s,e,"ciphertext")),o=e.length;s.push(c),a=E(s,a,"mac");var h,p=0|r._crypto_secretbox_macbytes();a.length!==p&&f(s,"invalid mac length"),h=d(a),s.push(h),t=E(s,t,"nonce");var i,v=0|r._crypto_secretbox_noncebytes();t.length!==v&&f(s,"invalid nonce length"),i=d(t),s.push(i),_=E(s,_,"key");var m,x=0|r._crypto_secretbox_keybytes();_.length!==x&&f(s,"invalid key length"),m=d(_),s.push(m);var k=new u(0|o),S=k.address;if(s.push(S),!(0|r._crypto_secretbox_open_detached(S,c,h,o,0,i,m))){var T=y(k,n);return g(s),T}b(s,"wrong secret key for the given ciphertext")}function sr(e,a,t,_){var n=[];l(_),e=E(n,e,"ciphertext");var s,c=r._crypto_secretbox_macbytes(),o=e.length;o<c&&f(n,"ciphertext is too short"),s=d(e),n.push(s),a=E(n,a,"nonce");var h,p=0|r._crypto_secretbox_noncebytes();a.length!==p&&f(n,"invalid nonce length"),h=d(a),n.push(h),t=E(n,t,"key");var i,v=0|r._crypto_secretbox_keybytes();t.length!==v&&f(n,"invalid key length"),i=d(t),n.push(i);var m=new u(o-r._crypto_secretbox_macbytes()|0),x=m.address;if(n.push(x),!(0|r._crypto_secretbox_open_easy(x,s,o,0,h,i))){var k=y(m,_);return g(n),k}b(n,"wrong secret key for the given ciphertext")}function cr(e,a,t){var _=[];l(t),e=E(_,e,"header");var n,s=0|r._crypto_secretstream_xchacha20poly1305_headerbytes();e.length!==s&&f(_,"invalid header length"),n=d(e),_.push(n),a=E(_,a,"key");var c,o=0|r._crypto_secretstream_xchacha20poly1305_keybytes();a.length!==o&&f(_,"invalid key length"),c=d(a),_.push(c);var h=new u(52).address;if(!(0|r._crypto_secretstream_xchacha20poly1305_init_pull(h,n,c))){var p=h;return g(_),p}b(_,"invalid usage")}function or(e,a){var t=[];l(a),e=E(t,e,"key");var _,n=0|r._crypto_secretstream_xchacha20poly1305_keybytes();e.length!==n&&f(t,"invalid key length"),_=d(e),t.push(_);var s=new u(52).address,c=new u(0|r._crypto_secretstream_xchacha20poly1305_headerbytes()),o=c.address;if(t.push(o),!(0|r._crypto_secretstream_xchacha20poly1305_init_push(s,o,_))){var h={state:s,header:y(c,a)};return g(t),h}b(t,"invalid usage")}function hr(e){var a=[];l(e);var t=new u(0|r._crypto_secretstream_xchacha20poly1305_keybytes()),_=t.address;a.push(_),r._crypto_secretstream_xchacha20poly1305_keygen(_);var n=y(t,e);return g(a),n}function pr(e,a,t,_){var n=[];l(_),m(n,e,"state_address"),a=E(n,a,"cipher");var s,c=r._crypto_secretstream_xchacha20poly1305_abytes(),o=a.length;o<c&&f(n,"cipher is too short"),s=d(a),n.push(s);var h=null,p=0;null!=t&&(h=d(t=E(n,t,"ad")),p=t.length,n.push(h));var i=new u(o-r._crypto_secretstream_xchacha20poly1305_abytes()|0),b=i.address;n.push(b);var x,k=(x=v(1),n.push(x),(k=0===r._crypto_secretstream_xchacha20poly1305_pull(e,b,0,x,s,o,0,h,p)&&{tag:r.HEAPU8[x],message:i})&&{message:y(k.message,_),tag:k.tag});return g(n),k}function yr(e,a,t,_,n){var s=[];l(n),m(s,e,"state_address");var c=d(a=E(s,a,"message_chunk")),o=a.length;s.push(c);var h=null,p=0;null!=t&&(h=d(t=E(s,t,"ad")),p=t.length,s.push(h)),m(s,_,"tag"),("number"!=typeof _||(0|_)!==_||_<0)&&f(s,"tag must be an unsigned integer");var i=new u(o+r._crypto_secretstream_xchacha20poly1305_abytes()|0),v=i.address;if(s.push(v),!(0|r._crypto_secretstream_xchacha20poly1305_push(e,v,0,c,o,0,h,p,0,_))){var x=y(i,n);return g(s),x}b(s,"invalid usage")}function ir(e,a){var t=[];return l(a),m(t,e,"state_address"),r._crypto_secretstream_xchacha20poly1305_rekey(e),g(t),!0}function lr(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"key");var c,o=0|r._crypto_shorthash_keybytes();a.length!==o&&f(_,"invalid key length"),c=d(a),_.push(c);var h=new u(0|r._crypto_shorthash_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_shorthash(p,n,s,0,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function ur(e){var a=[];l(e);var t=new u(0|r._crypto_shorthash_keybytes()),_=t.address;a.push(_),r._crypto_shorthash_keygen(_);var n=y(t,e);return g(a),n}function dr(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"key");var c,o=0|r._crypto_shorthash_siphashx24_keybytes();a.length!==o&&f(_,"invalid key length"),c=d(a),_.push(c);var h=new u(0|r._crypto_shorthash_siphashx24_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_shorthash_siphashx24(p,n,s,0,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function vr(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"privateKey");var c,o=0|r._crypto_sign_secretkeybytes();a.length!==o&&f(_,"invalid privateKey length"),c=d(a),_.push(c);var h=new u(e.length+r._crypto_sign_bytes()|0),p=h.address;if(_.push(p),!(0|r._crypto_sign(p,null,n,s,0,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function gr(e,a,t){var _=[];l(t);var n=d(e=E(_,e,"message")),s=e.length;_.push(n),a=E(_,a,"privateKey");var c,o=0|r._crypto_sign_secretkeybytes();a.length!==o&&f(_,"invalid privateKey length"),c=d(a),_.push(c);var h=new u(0|r._crypto_sign_bytes()),p=h.address;if(_.push(p),!(0|r._crypto_sign_detached(p,null,n,s,0,c))){var i=y(h,t);return g(_),i}b(_,"invalid usage")}function br(e,a){var t=[];l(a),e=E(t,e,"edPk");var _,n=0|r._crypto_sign_publickeybytes();e.length!==n&&f(t,"invalid edPk length"),_=d(e),t.push(_);var s=new u(0|r._crypto_scalarmult_scalarbytes()),c=s.address;if(t.push(c),!(0|r._crypto_sign_ed25519_pk_to_curve25519(c,_))){var o=y(s,a);return g(t),o}b(t,"invalid key")}function fr(e,a){var t=[];l(a),e=E(t,e,"edSk");var _,n=0|r._crypto_sign_secretkeybytes();e.length!==n&&f(t,"invalid edSk length"),_=d(e),t.push(_);var s=new u(0|r._crypto_scalarmult_scalarbytes()),c=s.address;if(t.push(c),!(0|r._crypto_sign_ed25519_sk_to_curve25519(c,_))){var o=y(s,a);return g(t),o}b(t,"invalid key")}function mr(e,a){var t=[];l(a),e=E(t,e,"privateKey");var _,n=0|r._crypto_sign_secretkeybytes();e.length!==n&&f(t,"invalid privateKey length"),_=d(e),t.push(_);var s=new u(0|r._crypto_sign_publickeybytes()),c=s.address;if(t.push(c),!(0|r._crypto_sign_ed25519_sk_to_pk(c,_))){var o=y(s,a);return g(t),o}b(t,"invalid key")}function Er(e,a){var t=[];l(a),e=E(t,e,"privateKey");var _,n=0|r._crypto_sign_secretkeybytes();e.length!==n&&f(t,"invalid privateKey length"),_=d(e),t.push(_);var s=new u(0|r._crypto_sign_seedbytes()),c=s.address;if(t.push(c),!(0|r._crypto_sign_ed25519_sk_to_seed(c,_))){var o=y(s,a);return g(t),o}b(t,"invalid key")}function xr(e,a,t){var _=[];l(t),m(_,e,"state_address"),a=E(_,a,"privateKey");var n,s=0|r._crypto_sign_secretkeybytes();a.length!==s&&f(_,"invalid privateKey length"),n=d(a),_.push(n);var c=new u(0|r._crypto_sign_bytes()),o=c.address;if(_.push(o),!(0|r._crypto_sign_final_create(e,o,null,n))){var h=(r._free(e),y(c,t));return g(_),h}b(_,"invalid usage")}function kr(e,a,t,_){var n=[];l(_),m(n,e,"state_address"),a=E(n,a,"signature");var s,c=0|r._crypto_sign_bytes();a.length!==c&&f(n,"invalid signature length"),s=d(a),n.push(s),t=E(n,t,"publicKey");var o,h=0|r._crypto_sign_publickeybytes();t.length!==h&&f(n,"invalid publicKey length"),o=d(t),n.push(o);var p=!(0|r._crypto_sign_final_verify(e,s,o));return g(n),p}function Sr(e){var a=[];l(e);var t=new u(208).address;if(!(0|r._crypto_sign_init(t))){var _=t;return g(a),_}b(a,"internal error")}function Tr(e){var a=[];l(e);var t=new u(0|r._crypto_sign_publickeybytes()),_=t.address;a.push(_);var n=new u(0|r._crypto_sign_secretkeybytes()),s=n.address;if(a.push(s),!(0|r._crypto_sign_keypair(_,s))){var c={publicKey:y(t,e),privateKey:y(n,e),keyType:"ed25519"};return g(a),c}b(a,"internal error")}function wr(e,a,t){var _=[];l(t),e=E(_,e,"signedMessage");var n,s=r._crypto_sign_bytes(),c=e.length;c<s&&f(_,"signedMessage is too short"),n=d(e),_.push(n),a=E(_,a,"publicKey");var o,h=0|r._crypto_sign_publickeybytes();a.length!==h&&f(_,"invalid publicKey length"),o=d(a),_.push(o);var p=new u(c-r._crypto_sign_bytes()|0),i=p.address;if(_.push(i),!(0|r._crypto_sign_open(i,null,n,c,0,o))){var v=y(p,t);return g(_),v}b(_,"incorrect signature for the given public key")}function Yr(e,a){var t=[];l(a),e=E(t,e,"seed");var _,n=0|r._crypto_sign_seedbytes();e.length!==n&&f(t,"invalid seed length"),_=d(e),t.push(_);var s=new u(0|r._crypto_sign_publickeybytes()),c=s.address;t.push(c);var o=new u(0|r._crypto_sign_secretkeybytes()),h=o.address;if(t.push(h),!(0|r._crypto_sign_seed_keypair(c,h,_))){var p={publicKey:y(s,a),privateKey:y(o,a),keyType:"ed25519"};return g(t),p}b(t,"invalid usage")}function Br(e,a,t){var _=[];l(t),m(_,e,"state_address");var n=d(a=E(_,a,"message_chunk")),s=a.length;_.push(n),0|r._crypto_sign_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function Ar(e,a,t){var _=[];e=E(_,e,"signature");var n,s=0|r._crypto_sign_bytes();e.length!==s&&f(_,"invalid signature length"),n=d(e),_.push(n);var c=d(a=E(_,a,"message")),o=a.length;_.push(c),t=E(_,t,"publicKey");var h,p=0|r._crypto_sign_publickeybytes();t.length!==p&&f(_,"invalid publicKey length"),h=d(t),_.push(h);var y=!(0|r._crypto_sign_verify_detached(n,c,o,0,h));return g(_),y}function Mr(e,a,t,_){var n=[];l(_),m(n,e,"outLength"),("number"!=typeof e||(0|e)!==e||e<0)&&f(n,"outLength must be an unsigned integer"),a=E(n,a,"key");var s,c=0|r._crypto_stream_chacha20_keybytes();a.length!==c&&f(n,"invalid key length"),s=d(a),n.push(s),t=E(n,t,"nonce");var o,h=0|r._crypto_stream_chacha20_noncebytes();t.length!==h&&f(n,"invalid nonce length"),o=d(t),n.push(o);var p=new u(0|e),i=p.address;n.push(i),r._crypto_stream_chacha20(i,e,0,o,s);var v=y(p,_);return g(n),v}function Ir(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"input_message")),c=e.length;n.push(s),a=E(n,a,"nonce");var o,h=0|r._crypto_stream_chacha20_ietf_noncebytes();a.length!==h&&f(n,"invalid nonce length"),o=d(a),n.push(o),t=E(n,t,"key");var p,i=0|r._crypto_stream_chacha20_ietf_keybytes();t.length!==i&&f(n,"invalid key length"),p=d(t),n.push(p);var v=new u(0|c),m=v.address;if(n.push(m),0===r._crypto_stream_chacha20_ietf_xor(m,s,c,0,o,p)){var x=y(v,_);return g(n),x}b(n,"invalid usage")}function Kr(e,a,t,_,n){var s=[];l(n);var c=d(e=E(s,e,"input_message")),o=e.length;s.push(c),a=E(s,a,"nonce");var h,p=0|r._crypto_stream_chacha20_ietf_noncebytes();a.length!==p&&f(s,"invalid nonce length"),h=d(a),s.push(h),m(s,t,"nonce_increment"),("number"!=typeof t||(0|t)!==t||t<0)&&f(s,"nonce_increment must be an unsigned integer"),_=E(s,_,"key");var i,v=0|r._crypto_stream_chacha20_ietf_keybytes();_.length!==v&&f(s,"invalid key length"),i=d(_),s.push(i);var x=new u(0|o),k=x.address;if(s.push(k),0===r._crypto_stream_chacha20_ietf_xor_ic(k,c,o,0,h,t,i)){var S=y(x,n);return g(s),S}b(s,"invalid usage")}function Nr(e){var a=[];l(e);var t=new u(0|r._crypto_stream_chacha20_keybytes()),_=t.address;a.push(_),r._crypto_stream_chacha20_keygen(_);var n=y(t,e);return g(a),n}function Lr(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"input_message")),c=e.length;n.push(s),a=E(n,a,"nonce");var o,h=0|r._crypto_stream_chacha20_noncebytes();a.length!==h&&f(n,"invalid nonce length"),o=d(a),n.push(o),t=E(n,t,"key");var p,i=0|r._crypto_stream_chacha20_keybytes();t.length!==i&&f(n,"invalid key length"),p=d(t),n.push(p);var v=new u(0|c),m=v.address;if(n.push(m),0===r._crypto_stream_chacha20_xor(m,s,c,0,o,p)){var x=y(v,_);return g(n),x}b(n,"invalid usage")}function Or(e,a,t,_,n){var s=[];l(n);var c=d(e=E(s,e,"input_message")),o=e.length;s.push(c),a=E(s,a,"nonce");var h,p=0|r._crypto_stream_chacha20_noncebytes();a.length!==p&&f(s,"invalid nonce length"),h=d(a),s.push(h),m(s,t,"nonce_increment"),("number"!=typeof t||(0|t)!==t||t<0)&&f(s,"nonce_increment must be an unsigned integer"),_=E(s,_,"key");var i,v=0|r._crypto_stream_chacha20_keybytes();_.length!==v&&f(s,"invalid key length"),i=d(_),s.push(i);var x=new u(0|o),k=x.address;if(s.push(k),0===r._crypto_stream_chacha20_xor_ic(k,c,o,0,h,t,0,i)){var S=y(x,n);return g(s),S}b(s,"invalid usage")}function Ur(e){var a=[];l(e);var t=new u(0|r._crypto_stream_keybytes()),_=t.address;a.push(_),r._crypto_stream_keygen(_);var n=y(t,e);return g(a),n}function Cr(e){var a=[];l(e);var t=new u(0|r._crypto_stream_xchacha20_keybytes()),_=t.address;a.push(_),r._crypto_stream_xchacha20_keygen(_);var n=y(t,e);return g(a),n}function Pr(e,a,t,_){var n=[];l(_);var s=d(e=E(n,e,"input_message")),c=e.length;n.push(s),a=E(n,a,"nonce");var o,h=0|r._crypto_stream_xchacha20_noncebytes();a.length!==h&&f(n,"invalid nonce length"),o=d(a),n.push(o),t=E(n,t,"key");var p,i=0|r._crypto_stream_xchacha20_keybytes();t.length!==i&&f(n,"invalid key length"),p=d(t),n.push(p);var v=new u(0|c),m=v.address;if(n.push(m),0===r._crypto_stream_xchacha20_xor(m,s,c,0,o,p)){var x=y(v,_);return g(n),x}b(n,"invalid usage")}function Rr(e,a,t,_,n){var s=[];l(n);var c=d(e=E(s,e,"input_message")),o=e.length;s.push(c),a=E(s,a,"nonce");var h,p=0|r._crypto_stream_xchacha20_noncebytes();a.length!==p&&f(s,"invalid nonce length"),h=d(a),s.push(h),m(s,t,"nonce_increment"),("number"!=typeof t||(0|t)!==t||t<0)&&f(s,"nonce_increment must be an unsigned integer"),_=E(s,_,"key");var i,v=0|r._crypto_stream_xchacha20_keybytes();_.length!==v&&f(s,"invalid key length"),i=d(_),s.push(i);var x=new u(0|o),k=x.address;if(s.push(k),0===r._crypto_stream_xchacha20_xor_ic(k,c,o,0,h,t,0,i)){var S=y(x,n);return g(s),S}b(s,"invalid usage")}function Xr(e,a){var t=[];l(a),m(t,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(t,"length must be an unsigned integer");var _=new u(0|e),n=_.address;t.push(n),r._randombytes_buf(n,e);var s=y(_,a);return g(t),s}function Gr(e,a,t){var _=[];l(t),m(_,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"length must be an unsigned integer"),a=E(_,a,"seed");var n,s=0|r._randombytes_seedbytes();a.length!==s&&f(_,"invalid seed length"),n=d(a),_.push(n);var c=new u(0|e),o=c.address;_.push(o),r._randombytes_buf_deterministic(o,e,n);var h=y(c,t);return g(_),h}function Dr(e){l(e),r._randombytes_close()}function Fr(e){l(e);var a=r._randombytes_random()>>>0;return g([]),a}function Vr(e,a){var t=[];l(a);for(var _=r._malloc(24),n=0;n<6;n++)r.setValue(_+4*n,r.Runtime.addFunction(e[["implementation_name","random","stir","uniform","buf","close"][n]]),"i32");0|r._randombytes_set_implementation(_)&&b(t,"unsupported implementation"),g(t)}function Hr(e){l(e),r._randombytes_stir()}function Wr(e,a){var t=[];l(a),m(t,e,"upper_bound"),("number"!=typeof e||(0|e)!==e||e<0)&&f(t,"upper_bound must be an unsigned integer");var _=r._randombytes_uniform(e)>>>0;return g(t),_}function qr(){var e=r._sodium_version_string(),a=r.UTF8ToString(e);return g([]),a}return u.prototype.to_Uint8Array=function(){var e=new Uint8Array(this.length);return e.set(r.HEAPU8.subarray(this.address,this.address+this.length)),e},e.add=function(e,a){if(!(e instanceof Uint8Array&&a instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can added");var r=e.length,t=0,_=0;if(a.length!=e.length)throw new TypeError("Arguments must have the same length");for(_=0;_<r;_++)t>>=8,t+=e[_]+a[_],e[_]=255&t},e.base64_variants=o,e.compare=function(e,a){if(!(e instanceof Uint8Array&&a instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==a.length)throw new TypeError("Only instances of identical length can be compared");for(var r=0,t=1,_=e.length;_-- >0;)r|=a[_]-e[_]>>8&t,t&=(a[_]^e[_])-1>>8;return r+r+t-1},e.from_base64=function(e,a){a=h(a);var t,_=[],n=new u(3*(e=E(_,e,"input")).length/4),s=d(e),c=v(4),o=v(4);return _.push(s),_.push(n.address),_.push(n.result_bin_len_p),_.push(n.b64_end_p),0!==r._sodium_base642bin(n.address,n.length,s,e.length,0,c,o,a)&&b(_,"invalid input"),r.getValue(o,"i32")-s!==e.length&&b(_,"incomplete input"),n.length=r.getValue(c,"i32"),t=n.to_Uint8Array(),g(_),t},e.from_hex=function(e){var a,t=[],_=new u((e=E(t,e,"input")).length/2),n=d(e),s=v(4);return t.push(n),t.push(_.address),t.push(_.hex_end_p),0!==r._sodium_hex2bin(_.address,_.length,n,e.length,0,0,s)&&b(t,"invalid input"),r.getValue(s,"i32")-n!==e.length&&b(t,"incomplete input"),a=_.to_Uint8Array(),g(t),a},e.from_string=n,e.increment=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be incremented");for(var a=256,r=0,t=e.length;r<t;r++)a>>=8,a+=e[r],e[r]=255&a},e.is_zero=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be checked");for(var a=0,r=0,t=e.length;r<t;r++)a|=e[r];return 0===a},e.libsodium=a,e.memcmp=function(e,a){if(!(e instanceof Uint8Array&&a instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==a.length)throw new TypeError("Only instances of identical length can be compared");for(var r=0,t=0,_=e.length;t<_;t++)r|=e[t]^a[t];return 0===r},e.memzero=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be wiped");for(var a=0,r=e.length;a<r;a++)e[a]=0},e.output_formats=function(){return["uint8array","text","hex","base64"]},e.pad=function(e,a){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((a|=0)<=0)throw new Error("block size must be > 0");var t,_=[],n=v(4),s=1,c=0,o=0|e.length,h=new u(o+a);_.push(n),_.push(h.address);for(var p=h.address,y=h.address+o+a;p<y;p++)r.HEAPU8[p]=e[c],c+=s=1&~((65535&((o-=s)>>>48|o>>>32|o>>>16|o))-1>>16);return 0!==r._sodium_pad(n,h.address,e.length,a,h.length)&&b(_,"internal error"),h.length=r.getValue(n,"i32"),t=h.to_Uint8Array(),g(_),t},e.unpad=function(e,a){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((a|=0)<=0)throw new Error("block size must be > 0");var t=[],_=d(e),n=v(4);return t.push(_),t.push(n),0!==r._sodium_unpad(n,_,e.length,a)&&b(t,"unsupported/invalid padding"),e=(e=new Uint8Array(e)).subarray(0,r.getValue(n,"i32")),g(t),e},e.ready=_,e.symbols=function(){return Object.keys(e).sort()},e.to_base64=p,e.to_hex=c,e.to_string=s,e}var r="object"==typeof e.sodium&&"function"==typeof e.sodium.onload?e.sodium.onload:null;"function"==typeof define&&define.amd?define(["exports","libsodium-sumo"],a):"object"==typeof exports&&"string"!=typeof exports.nodeName?a(exports,require("libsodium-sumo")):e.sodium=a(e.commonJsStrict={},e.libsodium),r&&e.sodium.ready.then((function(){r(e.sodium)}))}(this);
1
+ !function(e){function r(e,r){"use strict";var t,a=r.ready.then(function(){function a(){if(t._sodium_init()<0)throw new Error("libsodium was not correctly initialized.");for(var r=["crypto_aead_aegis128l_decrypt","crypto_aead_aegis128l_decrypt_detached","crypto_aead_aegis128l_encrypt","crypto_aead_aegis128l_encrypt_detached","crypto_aead_aegis128l_keygen","crypto_aead_aegis256_decrypt","crypto_aead_aegis256_decrypt_detached","crypto_aead_aegis256_encrypt","crypto_aead_aegis256_encrypt_detached","crypto_aead_aegis256_keygen","crypto_aead_chacha20poly1305_decrypt","crypto_aead_chacha20poly1305_decrypt_detached","crypto_aead_chacha20poly1305_encrypt","crypto_aead_chacha20poly1305_encrypt_detached","crypto_aead_chacha20poly1305_ietf_decrypt","crypto_aead_chacha20poly1305_ietf_decrypt_detached","crypto_aead_chacha20poly1305_ietf_encrypt","crypto_aead_chacha20poly1305_ietf_encrypt_detached","crypto_aead_chacha20poly1305_ietf_keygen","crypto_aead_chacha20poly1305_keygen","crypto_aead_xchacha20poly1305_ietf_decrypt","crypto_aead_xchacha20poly1305_ietf_decrypt_detached","crypto_aead_xchacha20poly1305_ietf_encrypt","crypto_aead_xchacha20poly1305_ietf_encrypt_detached","crypto_aead_xchacha20poly1305_ietf_keygen","crypto_auth","crypto_auth_hmacsha256","crypto_auth_hmacsha256_final","crypto_auth_hmacsha256_init","crypto_auth_hmacsha256_keygen","crypto_auth_hmacsha256_update","crypto_auth_hmacsha256_verify","crypto_auth_hmacsha512","crypto_auth_hmacsha512256","crypto_auth_hmacsha512256_final","crypto_auth_hmacsha512256_init","crypto_auth_hmacsha512256_keygen","crypto_auth_hmacsha512256_update","crypto_auth_hmacsha512256_verify","crypto_auth_hmacsha512_final","crypto_auth_hmacsha512_init","crypto_auth_hmacsha512_keygen","crypto_auth_hmacsha512_update","crypto_auth_hmacsha512_verify","crypto_auth_keygen","crypto_auth_verify","crypto_box_beforenm","crypto_box_curve25519xchacha20poly1305_beforenm","crypto_box_curve25519xchacha20poly1305_detached","crypto_box_curve25519xchacha20poly1305_detached_afternm","crypto_box_curve25519xchacha20poly1305_easy","crypto_box_curve25519xchacha20poly1305_easy_afternm","crypto_box_curve25519xchacha20poly1305_keypair","crypto_box_curve25519xchacha20poly1305_open_detached","crypto_box_curve25519xchacha20poly1305_open_detached_afternm","crypto_box_curve25519xchacha20poly1305_open_easy","crypto_box_curve25519xchacha20poly1305_open_easy_afternm","crypto_box_curve25519xchacha20poly1305_seal","crypto_box_curve25519xchacha20poly1305_seal_open","crypto_box_curve25519xchacha20poly1305_seed_keypair","crypto_box_detached","crypto_box_easy","crypto_box_easy_afternm","crypto_box_keypair","crypto_box_open_detached","crypto_box_open_easy","crypto_box_open_easy_afternm","crypto_box_seal","crypto_box_seal_open","crypto_box_seed_keypair","crypto_core_ed25519_add","crypto_core_ed25519_from_hash","crypto_core_ed25519_from_uniform","crypto_core_ed25519_is_valid_point","crypto_core_ed25519_random","crypto_core_ed25519_scalar_add","crypto_core_ed25519_scalar_complement","crypto_core_ed25519_scalar_invert","crypto_core_ed25519_scalar_mul","crypto_core_ed25519_scalar_negate","crypto_core_ed25519_scalar_random","crypto_core_ed25519_scalar_reduce","crypto_core_ed25519_scalar_sub","crypto_core_ed25519_sub","crypto_core_hchacha20","crypto_core_hsalsa20","crypto_core_ristretto255_add","crypto_core_ristretto255_from_hash","crypto_core_ristretto255_is_valid_point","crypto_core_ristretto255_random","crypto_core_ristretto255_scalar_add","crypto_core_ristretto255_scalar_complement","crypto_core_ristretto255_scalar_invert","crypto_core_ristretto255_scalar_mul","crypto_core_ristretto255_scalar_negate","crypto_core_ristretto255_scalar_random","crypto_core_ristretto255_scalar_reduce","crypto_core_ristretto255_scalar_sub","crypto_core_ristretto255_sub","crypto_generichash","crypto_generichash_blake2b_salt_personal","crypto_generichash_final","crypto_generichash_init","crypto_generichash_keygen","crypto_generichash_update","crypto_hash","crypto_hash_sha256","crypto_hash_sha256_final","crypto_hash_sha256_init","crypto_hash_sha256_update","crypto_hash_sha512","crypto_hash_sha512_final","crypto_hash_sha512_init","crypto_hash_sha512_update","crypto_ipcrypt_decrypt","crypto_ipcrypt_encrypt","crypto_ipcrypt_keygen","crypto_ipcrypt_nd_decrypt","crypto_ipcrypt_nd_encrypt","crypto_ipcrypt_ndx_decrypt","crypto_ipcrypt_ndx_encrypt","crypto_ipcrypt_ndx_keygen","crypto_ipcrypt_pfx_decrypt","crypto_ipcrypt_pfx_encrypt","crypto_ipcrypt_pfx_keygen","crypto_kdf_derive_from_key","crypto_kdf_keygen","crypto_kx_client_session_keys","crypto_kx_keypair","crypto_kx_seed_keypair","crypto_kx_server_session_keys","crypto_onetimeauth","crypto_onetimeauth_final","crypto_onetimeauth_init","crypto_onetimeauth_keygen","crypto_onetimeauth_update","crypto_onetimeauth_verify","crypto_pwhash","crypto_pwhash_scryptsalsa208sha256","crypto_pwhash_scryptsalsa208sha256_ll","crypto_pwhash_scryptsalsa208sha256_str","crypto_pwhash_scryptsalsa208sha256_str_verify","crypto_pwhash_str","crypto_pwhash_str_needs_rehash","crypto_pwhash_str_verify","crypto_scalarmult","crypto_scalarmult_base","crypto_scalarmult_ed25519","crypto_scalarmult_ed25519_base","crypto_scalarmult_ed25519_base_noclamp","crypto_scalarmult_ed25519_noclamp","crypto_scalarmult_ristretto255","crypto_scalarmult_ristretto255_base","crypto_secretbox_detached","crypto_secretbox_easy","crypto_secretbox_keygen","crypto_secretbox_open_detached","crypto_secretbox_open_easy","crypto_secretstream_xchacha20poly1305_init_pull","crypto_secretstream_xchacha20poly1305_init_push","crypto_secretstream_xchacha20poly1305_keygen","crypto_secretstream_xchacha20poly1305_pull","crypto_secretstream_xchacha20poly1305_push","crypto_secretstream_xchacha20poly1305_rekey","crypto_shorthash","crypto_shorthash_keygen","crypto_shorthash_siphashx24","crypto_sign","crypto_sign_detached","crypto_sign_ed25519_pk_to_curve25519","crypto_sign_ed25519_sk_to_curve25519","crypto_sign_ed25519_sk_to_pk","crypto_sign_ed25519_sk_to_seed","crypto_sign_final_create","crypto_sign_final_verify","crypto_sign_init","crypto_sign_keypair","crypto_sign_open","crypto_sign_seed_keypair","crypto_sign_update","crypto_sign_verify_detached","crypto_stream_chacha20","crypto_stream_chacha20_ietf_xor","crypto_stream_chacha20_ietf_xor_ic","crypto_stream_chacha20_keygen","crypto_stream_chacha20_xor","crypto_stream_chacha20_xor_ic","crypto_stream_keygen","crypto_stream_xchacha20_keygen","crypto_stream_xchacha20_xor","crypto_stream_xchacha20_xor_ic","crypto_xof_shake128","crypto_xof_shake128_init","crypto_xof_shake128_init_with_domain","crypto_xof_shake128_squeeze","crypto_xof_shake128_update","crypto_xof_shake256","crypto_xof_shake256_init","crypto_xof_shake256_init_with_domain","crypto_xof_shake256_squeeze","crypto_xof_shake256_update","crypto_xof_turboshake128","crypto_xof_turboshake128_init","crypto_xof_turboshake128_init_with_domain","crypto_xof_turboshake128_squeeze","crypto_xof_turboshake128_update","crypto_xof_turboshake256","crypto_xof_turboshake256_init","crypto_xof_turboshake256_init_with_domain","crypto_xof_turboshake256_squeeze","crypto_xof_turboshake256_update","randombytes_buf","randombytes_buf_deterministic","randombytes_close","randombytes_random","randombytes_set_implementation","randombytes_stir","randombytes_uniform","sodium_bin2ip","sodium_ip2bin","sodium_version_string"],a=[E,k,S,T,w,Y,B,A,M,I,K,N,L,O,U,P,C,R,X,D,G,F,V,q,z,W,H,j,J,Q,Z,$,ee,re,te,ae,_e,ne,se,ce,oe,pe,he,ye,ie,le,ue,de,ve,ge,be,fe,me,xe,Ee,ke,Se,Te,we,Ye,Be,Ae,Me,Ie,Ke,Ne,Le,Oe,Ue,Pe,Ce,Re,Xe,De,Ge,Fe,Ve,qe,ze,We,He,je,Je,Qe,Ze,$e,er,rr,tr,ar,_r,nr,sr,cr,or,pr,hr,yr,ir,lr,ur,dr,vr,gr,br,fr,mr,xr,Er,kr,Sr,Tr,wr,Yr,Br,Ar,Mr,Ir,Kr,Nr,Lr,Or,Ur,Pr,Cr,Rr,Xr,Dr,Gr,Fr,Vr,qr,zr,Wr,Hr,jr,Jr,Qr,Zr,$r,et,rt,tt,at,_t,nt,st,ct,ot,pt,ht,yt,it,lt,ut,dt,vt,gt,bt,ft,mt,xt,Et,kt,St,Tt,wt,Yt,Bt,At,Mt,It,Kt,Nt,Lt,Ot,Ut,Pt,Ct,Rt,Xt,Dt,Gt,Ft,Vt,qt,zt,Wt,Ht,jt,Jt,Qt,Zt,$t,ea,ra,ta,aa,_a,na,sa,ca,oa,pa,ha,ya,ia,la,ua,da,va,ga,ba,fa,ma,xa,Ea,ka,Sa,Ta,wa],_=0;_<a.length;_++)"function"==typeof t["_"+r[_]]&&(e[r[_]]=a[_]);var n=["SODIUM_LIBRARY_VERSION_MAJOR","SODIUM_LIBRARY_VERSION_MINOR","crypto_aead_aegis128l_ABYTES","crypto_aead_aegis128l_KEYBYTES","crypto_aead_aegis128l_MESSAGEBYTES_MAX","crypto_aead_aegis128l_NPUBBYTES","crypto_aead_aegis128l_NSECBYTES","crypto_aead_aegis256_ABYTES","crypto_aead_aegis256_KEYBYTES","crypto_aead_aegis256_MESSAGEBYTES_MAX","crypto_aead_aegis256_NPUBBYTES","crypto_aead_aegis256_NSECBYTES","crypto_aead_aes256gcm_ABYTES","crypto_aead_aes256gcm_KEYBYTES","crypto_aead_aes256gcm_MESSAGEBYTES_MAX","crypto_aead_aes256gcm_NPUBBYTES","crypto_aead_aes256gcm_NSECBYTES","crypto_aead_chacha20poly1305_ABYTES","crypto_aead_chacha20poly1305_IETF_ABYTES","crypto_aead_chacha20poly1305_IETF_KEYBYTES","crypto_aead_chacha20poly1305_IETF_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_IETF_NPUBBYTES","crypto_aead_chacha20poly1305_IETF_NSECBYTES","crypto_aead_chacha20poly1305_KEYBYTES","crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_NPUBBYTES","crypto_aead_chacha20poly1305_NSECBYTES","crypto_aead_chacha20poly1305_ietf_ABYTES","crypto_aead_chacha20poly1305_ietf_KEYBYTES","crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_ietf_NPUBBYTES","crypto_aead_chacha20poly1305_ietf_NSECBYTES","crypto_aead_xchacha20poly1305_IETF_ABYTES","crypto_aead_xchacha20poly1305_IETF_KEYBYTES","crypto_aead_xchacha20poly1305_IETF_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_IETF_NPUBBYTES","crypto_aead_xchacha20poly1305_IETF_NSECBYTES","crypto_aead_xchacha20poly1305_ietf_ABYTES","crypto_aead_xchacha20poly1305_ietf_KEYBYTES","crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_ietf_NPUBBYTES","crypto_aead_xchacha20poly1305_ietf_NSECBYTES","crypto_auth_BYTES","crypto_auth_KEYBYTES","crypto_auth_hmacsha256_BYTES","crypto_auth_hmacsha256_KEYBYTES","crypto_auth_hmacsha512256_BYTES","crypto_auth_hmacsha512256_KEYBYTES","crypto_auth_hmacsha512_BYTES","crypto_auth_hmacsha512_KEYBYTES","crypto_box_BEFORENMBYTES","crypto_box_MACBYTES","crypto_box_MESSAGEBYTES_MAX","crypto_box_NONCEBYTES","crypto_box_PUBLICKEYBYTES","crypto_box_SEALBYTES","crypto_box_SECRETKEYBYTES","crypto_box_SEEDBYTES","crypto_box_curve25519xchacha20poly1305_BEFORENMBYTES","crypto_box_curve25519xchacha20poly1305_MACBYTES","crypto_box_curve25519xchacha20poly1305_MESSAGEBYTES_MAX","crypto_box_curve25519xchacha20poly1305_NONCEBYTES","crypto_box_curve25519xchacha20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xchacha20poly1305_SEALBYTES","crypto_box_curve25519xchacha20poly1305_SECRETKEYBYTES","crypto_box_curve25519xchacha20poly1305_SEEDBYTES","crypto_box_curve25519xsalsa20poly1305_BEFORENMBYTES","crypto_box_curve25519xsalsa20poly1305_MACBYTES","crypto_box_curve25519xsalsa20poly1305_MESSAGEBYTES_MAX","crypto_box_curve25519xsalsa20poly1305_NONCEBYTES","crypto_box_curve25519xsalsa20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xsalsa20poly1305_SECRETKEYBYTES","crypto_box_curve25519xsalsa20poly1305_SEEDBYTES","crypto_core_ed25519_BYTES","crypto_core_ed25519_HASHBYTES","crypto_core_ed25519_NONREDUCEDSCALARBYTES","crypto_core_ed25519_SCALARBYTES","crypto_core_ed25519_UNIFORMBYTES","crypto_core_hchacha20_CONSTBYTES","crypto_core_hchacha20_INPUTBYTES","crypto_core_hchacha20_KEYBYTES","crypto_core_hchacha20_OUTPUTBYTES","crypto_core_hsalsa20_CONSTBYTES","crypto_core_hsalsa20_INPUTBYTES","crypto_core_hsalsa20_KEYBYTES","crypto_core_hsalsa20_OUTPUTBYTES","crypto_core_ristretto255_BYTES","crypto_core_ristretto255_HASHBYTES","crypto_core_ristretto255_NONREDUCEDSCALARBYTES","crypto_core_ristretto255_SCALARBYTES","crypto_core_salsa2012_CONSTBYTES","crypto_core_salsa2012_INPUTBYTES","crypto_core_salsa2012_KEYBYTES","crypto_core_salsa2012_OUTPUTBYTES","crypto_core_salsa208_CONSTBYTES","crypto_core_salsa208_INPUTBYTES","crypto_core_salsa208_KEYBYTES","crypto_core_salsa208_OUTPUTBYTES","crypto_core_salsa20_CONSTBYTES","crypto_core_salsa20_INPUTBYTES","crypto_core_salsa20_KEYBYTES","crypto_core_salsa20_OUTPUTBYTES","crypto_generichash_BYTES","crypto_generichash_BYTES_MAX","crypto_generichash_BYTES_MIN","crypto_generichash_KEYBYTES","crypto_generichash_KEYBYTES_MAX","crypto_generichash_KEYBYTES_MIN","crypto_generichash_blake2b_BYTES","crypto_generichash_blake2b_BYTES_MAX","crypto_generichash_blake2b_BYTES_MIN","crypto_generichash_blake2b_KEYBYTES","crypto_generichash_blake2b_KEYBYTES_MAX","crypto_generichash_blake2b_KEYBYTES_MIN","crypto_generichash_blake2b_PERSONALBYTES","crypto_generichash_blake2b_SALTBYTES","crypto_hash_BYTES","crypto_hash_sha256_BYTES","crypto_hash_sha512_BYTES","crypto_ipcrypt_BYTES","crypto_ipcrypt_KEYBYTES","crypto_ipcrypt_NDX_INPUTBYTES","crypto_ipcrypt_NDX_KEYBYTES","crypto_ipcrypt_NDX_OUTPUTBYTES","crypto_ipcrypt_NDX_TWEAKBYTES","crypto_ipcrypt_ND_INPUTBYTES","crypto_ipcrypt_ND_KEYBYTES","crypto_ipcrypt_ND_OUTPUTBYTES","crypto_ipcrypt_ND_TWEAKBYTES","crypto_ipcrypt_PFX_BYTES","crypto_ipcrypt_PFX_KEYBYTES","crypto_kdf_BYTES_MAX","crypto_kdf_BYTES_MIN","crypto_kdf_CONTEXTBYTES","crypto_kdf_KEYBYTES","crypto_kdf_blake2b_BYTES_MAX","crypto_kdf_blake2b_BYTES_MIN","crypto_kdf_blake2b_CONTEXTBYTES","crypto_kdf_blake2b_KEYBYTES","crypto_kdf_hkdf_sha256_BYTES_MAX","crypto_kdf_hkdf_sha256_BYTES_MIN","crypto_kdf_hkdf_sha256_KEYBYTES","crypto_kdf_hkdf_sha512_BYTES_MAX","crypto_kdf_hkdf_sha512_BYTES_MIN","crypto_kdf_hkdf_sha512_KEYBYTES","crypto_kx_PUBLICKEYBYTES","crypto_kx_SECRETKEYBYTES","crypto_kx_SEEDBYTES","crypto_kx_SESSIONKEYBYTES","crypto_onetimeauth_BYTES","crypto_onetimeauth_KEYBYTES","crypto_onetimeauth_poly1305_BYTES","crypto_onetimeauth_poly1305_KEYBYTES","crypto_pwhash_ALG_ARGON2I13","crypto_pwhash_ALG_ARGON2ID13","crypto_pwhash_ALG_DEFAULT","crypto_pwhash_BYTES_MAX","crypto_pwhash_BYTES_MIN","crypto_pwhash_MEMLIMIT_INTERACTIVE","crypto_pwhash_MEMLIMIT_MAX","crypto_pwhash_MEMLIMIT_MIN","crypto_pwhash_MEMLIMIT_MODERATE","crypto_pwhash_MEMLIMIT_SENSITIVE","crypto_pwhash_OPSLIMIT_INTERACTIVE","crypto_pwhash_OPSLIMIT_MAX","crypto_pwhash_OPSLIMIT_MIN","crypto_pwhash_OPSLIMIT_MODERATE","crypto_pwhash_OPSLIMIT_SENSITIVE","crypto_pwhash_PASSWD_MAX","crypto_pwhash_PASSWD_MIN","crypto_pwhash_SALTBYTES","crypto_pwhash_STRBYTES","crypto_pwhash_argon2i_BYTES_MAX","crypto_pwhash_argon2i_BYTES_MIN","crypto_pwhash_argon2i_MEMLIMIT_INTERACTIVE","crypto_pwhash_argon2i_MEMLIMIT_MAX","crypto_pwhash_argon2i_MEMLIMIT_MIN","crypto_pwhash_argon2i_MEMLIMIT_MODERATE","crypto_pwhash_argon2i_MEMLIMIT_SENSITIVE","crypto_pwhash_argon2i_OPSLIMIT_INTERACTIVE","crypto_pwhash_argon2i_OPSLIMIT_MAX","crypto_pwhash_argon2i_OPSLIMIT_MIN","crypto_pwhash_argon2i_OPSLIMIT_MODERATE","crypto_pwhash_argon2i_OPSLIMIT_SENSITIVE","crypto_pwhash_argon2i_PASSWD_MAX","crypto_pwhash_argon2i_PASSWD_MIN","crypto_pwhash_argon2i_SALTBYTES","crypto_pwhash_argon2i_STRBYTES","crypto_pwhash_argon2id_BYTES_MAX","crypto_pwhash_argon2id_BYTES_MIN","crypto_pwhash_argon2id_MEMLIMIT_INTERACTIVE","crypto_pwhash_argon2id_MEMLIMIT_MAX","crypto_pwhash_argon2id_MEMLIMIT_MIN","crypto_pwhash_argon2id_MEMLIMIT_MODERATE","crypto_pwhash_argon2id_MEMLIMIT_SENSITIVE","crypto_pwhash_argon2id_OPSLIMIT_INTERACTIVE","crypto_pwhash_argon2id_OPSLIMIT_MAX","crypto_pwhash_argon2id_OPSLIMIT_MIN","crypto_pwhash_argon2id_OPSLIMIT_MODERATE","crypto_pwhash_argon2id_OPSLIMIT_SENSITIVE","crypto_pwhash_argon2id_PASSWD_MAX","crypto_pwhash_argon2id_PASSWD_MIN","crypto_pwhash_argon2id_SALTBYTES","crypto_pwhash_argon2id_STRBYTES","crypto_pwhash_scryptsalsa208sha256_BYTES_MAX","crypto_pwhash_scryptsalsa208sha256_BYTES_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_PASSWD_MAX","crypto_pwhash_scryptsalsa208sha256_PASSWD_MIN","crypto_pwhash_scryptsalsa208sha256_SALTBYTES","crypto_pwhash_scryptsalsa208sha256_STRBYTES","crypto_scalarmult_BYTES","crypto_scalarmult_SCALARBYTES","crypto_scalarmult_curve25519_BYTES","crypto_scalarmult_curve25519_SCALARBYTES","crypto_scalarmult_ed25519_BYTES","crypto_scalarmult_ed25519_SCALARBYTES","crypto_scalarmult_ristretto255_BYTES","crypto_scalarmult_ristretto255_SCALARBYTES","crypto_secretbox_KEYBYTES","crypto_secretbox_MACBYTES","crypto_secretbox_MESSAGEBYTES_MAX","crypto_secretbox_NONCEBYTES","crypto_secretbox_xchacha20poly1305_KEYBYTES","crypto_secretbox_xchacha20poly1305_MACBYTES","crypto_secretbox_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretbox_xchacha20poly1305_NONCEBYTES","crypto_secretbox_xsalsa20poly1305_KEYBYTES","crypto_secretbox_xsalsa20poly1305_MACBYTES","crypto_secretbox_xsalsa20poly1305_MESSAGEBYTES_MAX","crypto_secretbox_xsalsa20poly1305_NONCEBYTES","crypto_secretstream_xchacha20poly1305_ABYTES","crypto_secretstream_xchacha20poly1305_HEADERBYTES","crypto_secretstream_xchacha20poly1305_KEYBYTES","crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretstream_xchacha20poly1305_TAG_FINAL","crypto_secretstream_xchacha20poly1305_TAG_MESSAGE","crypto_secretstream_xchacha20poly1305_TAG_PUSH","crypto_secretstream_xchacha20poly1305_TAG_REKEY","crypto_shorthash_BYTES","crypto_shorthash_KEYBYTES","crypto_shorthash_siphash24_BYTES","crypto_shorthash_siphash24_KEYBYTES","crypto_shorthash_siphashx24_BYTES","crypto_shorthash_siphashx24_KEYBYTES","crypto_sign_BYTES","crypto_sign_MESSAGEBYTES_MAX","crypto_sign_PUBLICKEYBYTES","crypto_sign_SECRETKEYBYTES","crypto_sign_SEEDBYTES","crypto_sign_ed25519_BYTES","crypto_sign_ed25519_MESSAGEBYTES_MAX","crypto_sign_ed25519_PUBLICKEYBYTES","crypto_sign_ed25519_SECRETKEYBYTES","crypto_sign_ed25519_SEEDBYTES","crypto_stream_KEYBYTES","crypto_stream_MESSAGEBYTES_MAX","crypto_stream_NONCEBYTES","crypto_stream_chacha20_IETF_KEYBYTES","crypto_stream_chacha20_IETF_MESSAGEBYTES_MAX","crypto_stream_chacha20_IETF_NONCEBYTES","crypto_stream_chacha20_KEYBYTES","crypto_stream_chacha20_MESSAGEBYTES_MAX","crypto_stream_chacha20_NONCEBYTES","crypto_stream_chacha20_ietf_KEYBYTES","crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX","crypto_stream_chacha20_ietf_NONCEBYTES","crypto_stream_salsa2012_KEYBYTES","crypto_stream_salsa2012_MESSAGEBYTES_MAX","crypto_stream_salsa2012_NONCEBYTES","crypto_stream_salsa208_KEYBYTES","crypto_stream_salsa208_MESSAGEBYTES_MAX","crypto_stream_salsa208_NONCEBYTES","crypto_stream_salsa20_KEYBYTES","crypto_stream_salsa20_MESSAGEBYTES_MAX","crypto_stream_salsa20_NONCEBYTES","crypto_stream_xchacha20_KEYBYTES","crypto_stream_xchacha20_MESSAGEBYTES_MAX","crypto_stream_xchacha20_NONCEBYTES","crypto_stream_xsalsa20_KEYBYTES","crypto_stream_xsalsa20_MESSAGEBYTES_MAX","crypto_stream_xsalsa20_NONCEBYTES","crypto_verify_16_BYTES","crypto_verify_32_BYTES","crypto_verify_64_BYTES","crypto_xof_shake128_BLOCKBYTES","crypto_xof_shake128_STATEBYTES","crypto_xof_shake256_BLOCKBYTES","crypto_xof_shake256_STATEBYTES","crypto_xof_turboshake128_BLOCKBYTES","crypto_xof_turboshake128_STATEBYTES","crypto_xof_turboshake256_BLOCKBYTES","crypto_xof_turboshake256_STATEBYTES"];for(_=0;_<n.length;_++)"function"==typeof(c=t["_"+n[_].toLowerCase()])&&(e[n[_]]=c());var s=["SODIUM_VERSION_STRING","crypto_pwhash_STRPREFIX","crypto_pwhash_argon2i_STRPREFIX","crypto_pwhash_argon2id_STRPREFIX","crypto_pwhash_scryptsalsa208sha256_STRPREFIX"];for(_=0;_<s.length;_++){var c;"function"==typeof(c=t["_"+s[_].toLowerCase()])&&(e[s[_]]=t.UTF8ToString(c()))}}t=r;try{a();var _=new Uint8Array([98,97,108,108,115]),n=e.randombytes_buf(e.crypto_secretbox_NONCEBYTES),s=e.randombytes_buf(e.crypto_secretbox_KEYBYTES),c=e.crypto_secretbox_easy(_,n,s),o=e.crypto_secretbox_open_easy(c,n,s);if(e.memcmp(_,o))return}catch(e){if(null==t.useBackupModule)throw new Error("Both wasm and asm failed to load"+e)}t.useBackupModule(),a()});function _(e){if("function"==typeof TextEncoder)return(new TextEncoder).encode(e);e=unescape(encodeURIComponent(e));for(var r=new Uint8Array(e.length),t=0,a=e.length;t<a;t++)r[t]=e.charCodeAt(t);return r}function n(e){if("function"==typeof TextDecoder)return new TextDecoder("utf-8",{fatal:!0}).decode(e);var r=8192,t=Math.ceil(e.length/r);if(t<=1)try{return decodeURIComponent(escape(String.fromCharCode.apply(null,e)))}catch(e){throw new TypeError("The encoded data was not valid.")}for(var a="",_=0,s=0;s<t;s++){var c=Array.prototype.slice.call(e,s*r+_,(s+1)*r+_);if(0!==c.length){var o,p=c.length,h=0;do{var y=c[--p];y>=240?(h=4,o=!0):y>=224?(h=3,o=!0):y>=192?(h=2,o=!0):y<128&&(h=1,o=!0)}while(!o);for(var i=h-(c.length-p),l=0;l<i;l++)_--,c.pop();a+=n(c)}}return a}function s(e){e=x(null,e,"input");for(var r,t,a,_="",n=0;n<e.length;n++)a=87+(t=15&e[n])+(t-10>>8&-39)<<8|87+(r=e[n]>>>4)+(r-10>>8&-39),_+=String.fromCharCode(255&a)+String.fromCharCode(a>>>8);return _}var c={ORIGINAL:1,ORIGINAL_NO_PADDING:3,URLSAFE:5,URLSAFE_NO_PADDING:7};function o(e){if(void 0===e)return c.URLSAFE_NO_PADDING;if(e!==c.ORIGINAL&&e!==c.ORIGINAL_NO_PADDING&&e!==c.URLSAFE&&e!==c.URLSAFE_NO_PADDING)throw new Error("unsupported base64 variant");return e}function p(e,r){r=o(r);var a=[];e=x(a,e,"input");var _,s=0|Math.floor(e.length/3),c=e.length-3*s,p=4*s+(0!==c?2&r?2+(c>>>1):4:0),h=new l(p+1),y=u(e);return a.push(y),a.push(h.address),0===t._sodium_bin2base64(h.address,h.length,y,e.length,r)&&b(a,"conversion failed"),h.length=p,_=n(h.to_Uint8Array()),g(a),_}function h(e,r){var t=r||"uint8array";if(!y(t))throw new Error(t+" output format is not available");if(e instanceof l){if("uint8array"===t)return e.to_Uint8Array();if("text"===t)return n(e.to_Uint8Array());if("hex"===t)return s(e.to_Uint8Array());if("base64"===t)return p(e.to_Uint8Array(),c.URLSAFE_NO_PADDING);throw new Error('What is output format "'+t+'"?')}if("object"==typeof e){for(var a=Object.keys(e),_={},o=0;o<a.length;o++)_[a[o]]=h(e[a[o]],t);return _}if("string"==typeof e)return e;throw new TypeError("Cannot format output")}function y(e){for(var r=["uint8array","text","hex","base64"],t=0;t<r.length;t++)if(r[t]===e)return!0;return!1}function i(e){if(e){if("string"!=typeof e)throw new TypeError("When defined, the output format must be a string");if(!y(e))throw new Error(e+" is not a supported output format")}}function l(e){this.length=e,this.address=d(e)}function u(e){var r=d(e.length);return t.HEAPU8.set(e,r),r}function d(e){var r=t._malloc(e);if(0===r)throw{message:"_malloc() failed",length:e};return r}function v(e){t._free(e)}function g(e){if(e)for(var r=0;r<e.length;r++)v(e[r])}function b(e,r){throw g(e),new Error(r)}function f(e,r){throw g(e),new TypeError(r)}function m(e,r,t){null==r&&f(e,t+" cannot be null or undefined")}function x(e,r,t){return m(e,r,t),r instanceof Uint8Array?r:"string"==typeof r?_(r):void f(e,"unsupported input type for "+t)}function E(e,r,a,_,n,s){var c=[];i(s);var o=null;null!=e&&(o=u(e=x(c,e,"secret_nonce")),e.length,c.push(o)),r=x(c,r,"ciphertext");var p,y=t._crypto_aead_aegis128l_abytes(),d=r.length;d<y&&f(c,"ciphertext is too short"),p=u(r),c.push(p);var v=null,m=0;null!=a&&(v=u(a=x(c,a,"additional_data")),m=a.length,c.push(v)),_=x(c,_,"public_nonce");var E,k=0|t._crypto_aead_aegis128l_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),E=u(_),c.push(E),n=x(c,n,"key");var S,T=0|t._crypto_aead_aegis128l_keybytes();n.length!==T&&f(c,"invalid key length"),S=u(n),c.push(S);var w=new l(d-t._crypto_aead_aegis128l_abytes()|0),Y=w.address;if(c.push(Y),0===t._crypto_aead_aegis128l_decrypt(Y,null,o,p,d,0,v,m,0,E,S)){var B=h(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function k(e,r,a,_,n,s,c){var o=[];i(c);var p=null;null!=e&&(p=u(e=x(o,e,"secret_nonce")),e.length,o.push(p));var y=u(r=x(o,r,"ciphertext")),d=r.length;o.push(y),a=x(o,a,"mac");var v,m=0|t._crypto_aead_aegis128l_abytes();a.length!==m&&f(o,"invalid mac length"),v=u(a),o.push(v);var E=null,k=0;null!=_&&(E=u(_=x(o,_,"additional_data")),k=_.length,o.push(E)),n=x(o,n,"public_nonce");var S,T=0|t._crypto_aead_aegis128l_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=u(n),o.push(S),s=x(o,s,"key");var w,Y=0|t._crypto_aead_aegis128l_keybytes();s.length!==Y&&f(o,"invalid key length"),w=u(s),o.push(w);var B=new l(0|d),A=B.address;if(o.push(A),0===t._crypto_aead_aegis128l_decrypt_detached(A,p,y,d,0,v,E,k,0,S,w)){var M=h(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function S(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=u(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=u(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_aegis128l_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=u(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_aegis128l_keybytes();n.length!==S&&f(c,"invalid key length"),k=u(n),c.push(k);var T=new l(p+t._crypto_aead_aegis128l_abytes()|0),w=T.address;if(c.push(w),0===t._crypto_aead_aegis128l_encrypt(w,null,o,p,0,y,d,0,v,m,k)){var Y=h(T,s);return g(c),Y}b(c,"invalid usage")}function T(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=u(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=u(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_aegis128l_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=u(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_aegis128l_keybytes();n.length!==S&&f(c,"invalid key length"),k=u(n),c.push(k);var T=new l(0|p),w=T.address;c.push(w);var Y=new l(0|t._crypto_aead_aegis128l_abytes()),B=Y.address;if(c.push(B),0===t._crypto_aead_aegis128l_encrypt_detached(w,B,null,o,p,0,y,d,0,v,m,k)){var A=h({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function w(e){var r=[];i(e);var a=new l(0|t._crypto_aead_aegis128l_keybytes()),_=a.address;r.push(_),t._crypto_aead_aegis128l_keygen(_);var n=h(a,e);return g(r),n}function Y(e,r,a,_,n,s){var c=[];i(s);var o=null;null!=e&&(o=u(e=x(c,e,"secret_nonce")),e.length,c.push(o)),r=x(c,r,"ciphertext");var p,y=t._crypto_aead_aegis256_abytes(),d=r.length;d<y&&f(c,"ciphertext is too short"),p=u(r),c.push(p);var v=null,m=0;null!=a&&(v=u(a=x(c,a,"additional_data")),m=a.length,c.push(v)),_=x(c,_,"public_nonce");var E,k=0|t._crypto_aead_aegis256_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),E=u(_),c.push(E),n=x(c,n,"key");var S,T=0|t._crypto_aead_aegis256_keybytes();n.length!==T&&f(c,"invalid key length"),S=u(n),c.push(S);var w=new l(d-t._crypto_aead_aegis256_abytes()|0),Y=w.address;if(c.push(Y),0===t._crypto_aead_aegis256_decrypt(Y,null,o,p,d,0,v,m,0,E,S)){var B=h(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function B(e,r,a,_,n,s,c){var o=[];i(c);var p=null;null!=e&&(p=u(e=x(o,e,"secret_nonce")),e.length,o.push(p));var y=u(r=x(o,r,"ciphertext")),d=r.length;o.push(y),a=x(o,a,"mac");var v,m=0|t._crypto_aead_aegis256_abytes();a.length!==m&&f(o,"invalid mac length"),v=u(a),o.push(v);var E=null,k=0;null!=_&&(E=u(_=x(o,_,"additional_data")),k=_.length,o.push(E)),n=x(o,n,"public_nonce");var S,T=0|t._crypto_aead_aegis256_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=u(n),o.push(S),s=x(o,s,"key");var w,Y=0|t._crypto_aead_aegis256_keybytes();s.length!==Y&&f(o,"invalid key length"),w=u(s),o.push(w);var B=new l(0|d),A=B.address;if(o.push(A),0===t._crypto_aead_aegis256_decrypt_detached(A,p,y,d,0,v,E,k,0,S,w)){var M=h(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function A(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=u(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=u(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_aegis256_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=u(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_aegis256_keybytes();n.length!==S&&f(c,"invalid key length"),k=u(n),c.push(k);var T=new l(p+t._crypto_aead_aegis256_abytes()|0),w=T.address;if(c.push(w),0===t._crypto_aead_aegis256_encrypt(w,null,o,p,0,y,d,0,v,m,k)){var Y=h(T,s);return g(c),Y}b(c,"invalid usage")}function M(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=u(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=u(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_aegis256_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=u(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_aegis256_keybytes();n.length!==S&&f(c,"invalid key length"),k=u(n),c.push(k);var T=new l(0|p),w=T.address;c.push(w);var Y=new l(0|t._crypto_aead_aegis256_abytes()),B=Y.address;if(c.push(B),0===t._crypto_aead_aegis256_encrypt_detached(w,B,null,o,p,0,y,d,0,v,m,k)){var A=h({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function I(e){var r=[];i(e);var a=new l(0|t._crypto_aead_aegis256_keybytes()),_=a.address;r.push(_),t._crypto_aead_aegis256_keygen(_);var n=h(a,e);return g(r),n}function K(e,r,a,_,n,s){var c=[];i(s);var o=null;null!=e&&(o=u(e=x(c,e,"secret_nonce")),e.length,c.push(o)),r=x(c,r,"ciphertext");var p,y=t._crypto_aead_chacha20poly1305_abytes(),d=r.length;d<y&&f(c,"ciphertext is too short"),p=u(r),c.push(p);var v=null,m=0;null!=a&&(v=u(a=x(c,a,"additional_data")),m=a.length,c.push(v)),_=x(c,_,"public_nonce");var E,k=0|t._crypto_aead_chacha20poly1305_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),E=u(_),c.push(E),n=x(c,n,"key");var S,T=0|t._crypto_aead_chacha20poly1305_keybytes();n.length!==T&&f(c,"invalid key length"),S=u(n),c.push(S);var w=new l(d-t._crypto_aead_chacha20poly1305_abytes()|0),Y=w.address;if(c.push(Y),0===t._crypto_aead_chacha20poly1305_decrypt(Y,null,o,p,d,0,v,m,0,E,S)){var B=h(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function N(e,r,a,_,n,s,c){var o=[];i(c);var p=null;null!=e&&(p=u(e=x(o,e,"secret_nonce")),e.length,o.push(p));var y=u(r=x(o,r,"ciphertext")),d=r.length;o.push(y),a=x(o,a,"mac");var v,m=0|t._crypto_box_macbytes();a.length!==m&&f(o,"invalid mac length"),v=u(a),o.push(v);var E=null,k=0;null!=_&&(E=u(_=x(o,_,"additional_data")),k=_.length,o.push(E)),n=x(o,n,"public_nonce");var S,T=0|t._crypto_aead_chacha20poly1305_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=u(n),o.push(S),s=x(o,s,"key");var w,Y=0|t._crypto_aead_chacha20poly1305_keybytes();s.length!==Y&&f(o,"invalid key length"),w=u(s),o.push(w);var B=new l(0|d),A=B.address;if(o.push(A),0===t._crypto_aead_chacha20poly1305_decrypt_detached(A,p,y,d,0,v,E,k,0,S,w)){var M=h(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function L(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=u(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=u(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_chacha20poly1305_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=u(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_chacha20poly1305_keybytes();n.length!==S&&f(c,"invalid key length"),k=u(n),c.push(k);var T=new l(p+t._crypto_aead_chacha20poly1305_abytes()|0),w=T.address;if(c.push(w),0===t._crypto_aead_chacha20poly1305_encrypt(w,null,o,p,0,y,d,0,v,m,k)){var Y=h(T,s);return g(c),Y}b(c,"invalid usage")}function O(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=u(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=u(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_chacha20poly1305_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=u(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_chacha20poly1305_keybytes();n.length!==S&&f(c,"invalid key length"),k=u(n),c.push(k);var T=new l(0|p),w=T.address;c.push(w);var Y=new l(0|t._crypto_aead_chacha20poly1305_abytes()),B=Y.address;if(c.push(B),0===t._crypto_aead_chacha20poly1305_encrypt_detached(w,B,null,o,p,0,y,d,0,v,m,k)){var A=h({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function U(e,r,a,_,n,s){var c=[];i(s);var o=null;null!=e&&(o=u(e=x(c,e,"secret_nonce")),e.length,c.push(o)),r=x(c,r,"ciphertext");var p,y=t._crypto_aead_chacha20poly1305_ietf_abytes(),d=r.length;d<y&&f(c,"ciphertext is too short"),p=u(r),c.push(p);var v=null,m=0;null!=a&&(v=u(a=x(c,a,"additional_data")),m=a.length,c.push(v)),_=x(c,_,"public_nonce");var E,k=0|t._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),E=u(_),c.push(E),n=x(c,n,"key");var S,T=0|t._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==T&&f(c,"invalid key length"),S=u(n),c.push(S);var w=new l(d-t._crypto_aead_chacha20poly1305_ietf_abytes()|0),Y=w.address;if(c.push(Y),0===t._crypto_aead_chacha20poly1305_ietf_decrypt(Y,null,o,p,d,0,v,m,0,E,S)){var B=h(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function P(e,r,a,_,n,s,c){var o=[];i(c);var p=null;null!=e&&(p=u(e=x(o,e,"secret_nonce")),e.length,o.push(p));var y=u(r=x(o,r,"ciphertext")),d=r.length;o.push(y),a=x(o,a,"mac");var v,m=0|t._crypto_box_macbytes();a.length!==m&&f(o,"invalid mac length"),v=u(a),o.push(v);var E=null,k=0;null!=_&&(E=u(_=x(o,_,"additional_data")),k=_.length,o.push(E)),n=x(o,n,"public_nonce");var S,T=0|t._crypto_aead_chacha20poly1305_ietf_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=u(n),o.push(S),s=x(o,s,"key");var w,Y=0|t._crypto_aead_chacha20poly1305_ietf_keybytes();s.length!==Y&&f(o,"invalid key length"),w=u(s),o.push(w);var B=new l(0|d),A=B.address;if(o.push(A),0===t._crypto_aead_chacha20poly1305_ietf_decrypt_detached(A,p,y,d,0,v,E,k,0,S,w)){var M=h(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function C(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=u(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=u(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=u(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=u(n),c.push(k);var T=new l(p+t._crypto_aead_chacha20poly1305_ietf_abytes()|0),w=T.address;if(c.push(w),0===t._crypto_aead_chacha20poly1305_ietf_encrypt(w,null,o,p,0,y,d,0,v,m,k)){var Y=h(T,s);return g(c),Y}b(c,"invalid usage")}function R(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=u(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=u(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=u(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=u(n),c.push(k);var T=new l(0|p),w=T.address;c.push(w);var Y=new l(0|t._crypto_aead_chacha20poly1305_ietf_abytes()),B=Y.address;if(c.push(B),0===t._crypto_aead_chacha20poly1305_ietf_encrypt_detached(w,B,null,o,p,0,y,d,0,v,m,k)){var A=h({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function X(e){var r=[];i(e);var a=new l(0|t._crypto_aead_chacha20poly1305_ietf_keybytes()),_=a.address;r.push(_),t._crypto_aead_chacha20poly1305_ietf_keygen(_);var n=h(a,e);return g(r),n}function D(e){var r=[];i(e);var a=new l(0|t._crypto_aead_chacha20poly1305_keybytes()),_=a.address;r.push(_),t._crypto_aead_chacha20poly1305_keygen(_);var n=h(a,e);return g(r),n}function G(e,r,a,_,n,s){var c=[];i(s);var o=null;null!=e&&(o=u(e=x(c,e,"secret_nonce")),e.length,c.push(o)),r=x(c,r,"ciphertext");var p,y=t._crypto_aead_xchacha20poly1305_ietf_abytes(),d=r.length;d<y&&f(c,"ciphertext is too short"),p=u(r),c.push(p);var v=null,m=0;null!=a&&(v=u(a=x(c,a,"additional_data")),m=a.length,c.push(v)),_=x(c,_,"public_nonce");var E,k=0|t._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),E=u(_),c.push(E),n=x(c,n,"key");var S,T=0|t._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==T&&f(c,"invalid key length"),S=u(n),c.push(S);var w=new l(d-t._crypto_aead_xchacha20poly1305_ietf_abytes()|0),Y=w.address;if(c.push(Y),0===t._crypto_aead_xchacha20poly1305_ietf_decrypt(Y,null,o,p,d,0,v,m,0,E,S)){var B=h(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function F(e,r,a,_,n,s,c){var o=[];i(c);var p=null;null!=e&&(p=u(e=x(o,e,"secret_nonce")),e.length,o.push(p));var y=u(r=x(o,r,"ciphertext")),d=r.length;o.push(y),a=x(o,a,"mac");var v,m=0|t._crypto_box_macbytes();a.length!==m&&f(o,"invalid mac length"),v=u(a),o.push(v);var E=null,k=0;null!=_&&(E=u(_=x(o,_,"additional_data")),k=_.length,o.push(E)),n=x(o,n,"public_nonce");var S,T=0|t._crypto_aead_xchacha20poly1305_ietf_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=u(n),o.push(S),s=x(o,s,"key");var w,Y=0|t._crypto_aead_xchacha20poly1305_ietf_keybytes();s.length!==Y&&f(o,"invalid key length"),w=u(s),o.push(w);var B=new l(0|d),A=B.address;if(o.push(A),0===t._crypto_aead_xchacha20poly1305_ietf_decrypt_detached(A,p,y,d,0,v,E,k,0,S,w)){var M=h(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function V(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=u(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=u(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=u(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=u(n),c.push(k);var T=new l(p+t._crypto_aead_xchacha20poly1305_ietf_abytes()|0),w=T.address;if(c.push(w),0===t._crypto_aead_xchacha20poly1305_ietf_encrypt(w,null,o,p,0,y,d,0,v,m,k)){var Y=h(T,s);return g(c),Y}b(c,"invalid usage")}function q(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=u(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=u(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=u(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=u(n),c.push(k);var T=new l(0|p),w=T.address;c.push(w);var Y=new l(0|t._crypto_aead_xchacha20poly1305_ietf_abytes()),B=Y.address;if(c.push(B),0===t._crypto_aead_xchacha20poly1305_ietf_encrypt_detached(w,B,null,o,p,0,y,d,0,v,m,k)){var A=h({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function z(e){var r=[];i(e);var a=new l(0|t._crypto_aead_xchacha20poly1305_ietf_keybytes()),_=a.address;r.push(_),t._crypto_aead_xchacha20poly1305_ietf_keygen(_);var n=h(a,e);return g(r),n}function W(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_auth_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_auth_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_auth(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function H(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_auth_hmacsha256_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_auth_hmacsha256_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_auth_hmacsha256(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function j(e,r){var a=[];i(r),m(a,e,"state_address");var _=new l(0|t._crypto_auth_hmacsha256_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_auth_hmacsha256_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function J(e,r){var a=[];i(r);var _=null,n=0;null!=e&&(_=u(e=x(a,e,"key")),n=e.length,a.push(_));var s=new l(208).address;if(!(0|t._crypto_auth_hmacsha256_init(s,_,n))){var c=s;return g(a),c}b(a,"invalid usage")}function Q(e){var r=[];i(e);var a=new l(0|t._crypto_auth_hmacsha256_keybytes()),_=a.address;r.push(_),t._crypto_auth_hmacsha256_keygen(_);var n=h(a,e);return g(r),n}function Z(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_auth_hmacsha256_update(e,n,s)&&b(_,"invalid usage"),g(_)}function $(e,r,a){var _=[];e=x(_,e,"tag");var n,s=0|t._crypto_auth_hmacsha256_bytes();e.length!==s&&f(_,"invalid tag length"),n=u(e),_.push(n);var c=u(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"key");var p,h=0|t._crypto_auth_hmacsha256_keybytes();a.length!==h&&f(_,"invalid key length"),p=u(a),_.push(p);var y=!(0|t._crypto_auth_hmacsha256_verify(n,c,o,0,p));return g(_),y}function ee(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_auth_hmacsha512_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_auth_hmacsha512_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_auth_hmacsha512(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function re(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_auth_hmacsha512256_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_auth_hmacsha512256_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_auth_hmacsha512256(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function te(e,r){var a=[];i(r),m(a,e,"state_address");var _=new l(0|t._crypto_auth_hmacsha512256_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_auth_hmacsha512256_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function ae(e,r){var a=[];i(r);var _=null,n=0;null!=e&&(_=u(e=x(a,e,"key")),n=e.length,a.push(_));var s=new l(416).address;if(!(0|t._crypto_auth_hmacsha512256_init(s,_,n))){var c=s;return g(a),c}b(a,"invalid usage")}function _e(e){var r=[];i(e);var a=new l(0|t._crypto_auth_hmacsha512256_keybytes()),_=a.address;r.push(_),t._crypto_auth_hmacsha512256_keygen(_);var n=h(a,e);return g(r),n}function ne(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_auth_hmacsha512256_update(e,n,s)&&b(_,"invalid usage"),g(_)}function se(e,r,a){var _=[];e=x(_,e,"tag");var n,s=0|t._crypto_auth_hmacsha512256_bytes();e.length!==s&&f(_,"invalid tag length"),n=u(e),_.push(n);var c=u(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"key");var p,h=0|t._crypto_auth_hmacsha512256_keybytes();a.length!==h&&f(_,"invalid key length"),p=u(a),_.push(p);var y=!(0|t._crypto_auth_hmacsha512256_verify(n,c,o,0,p));return g(_),y}function ce(e,r){var a=[];i(r),m(a,e,"state_address");var _=new l(0|t._crypto_auth_hmacsha512_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_auth_hmacsha512_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function oe(e,r){var a=[];i(r);var _=null,n=0;null!=e&&(_=u(e=x(a,e,"key")),n=e.length,a.push(_));var s=new l(416).address;if(!(0|t._crypto_auth_hmacsha512_init(s,_,n))){var c=s;return g(a),c}b(a,"invalid usage")}function pe(e){var r=[];i(e);var a=new l(0|t._crypto_auth_hmacsha512_keybytes()),_=a.address;r.push(_),t._crypto_auth_hmacsha512_keygen(_);var n=h(a,e);return g(r),n}function he(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_auth_hmacsha512_update(e,n,s)&&b(_,"invalid usage"),g(_)}function ye(e,r,a){var _=[];e=x(_,e,"tag");var n,s=0|t._crypto_auth_hmacsha512_bytes();e.length!==s&&f(_,"invalid tag length"),n=u(e),_.push(n);var c=u(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"key");var p,h=0|t._crypto_auth_hmacsha512_keybytes();a.length!==h&&f(_,"invalid key length"),p=u(a),_.push(p);var y=!(0|t._crypto_auth_hmacsha512_verify(n,c,o,0,p));return g(_),y}function ie(e){var r=[];i(e);var a=new l(0|t._crypto_auth_keybytes()),_=a.address;r.push(_),t._crypto_auth_keygen(_);var n=h(a,e);return g(r),n}function le(e,r,a){var _=[];e=x(_,e,"tag");var n,s=0|t._crypto_auth_bytes();e.length!==s&&f(_,"invalid tag length"),n=u(e),_.push(n);var c=u(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"key");var p,h=0|t._crypto_auth_keybytes();a.length!==h&&f(_,"invalid key length"),p=u(a),_.push(p);var y=!(0|t._crypto_auth_verify(n,c,o,0,p));return g(_),y}function ue(e,r,a){var _=[];i(a),e=x(_,e,"publicKey");var n,s=0|t._crypto_box_publickeybytes();e.length!==s&&f(_,"invalid publicKey length"),n=u(e),_.push(n),r=x(_,r,"privateKey");var c,o=0|t._crypto_box_secretkeybytes();r.length!==o&&f(_,"invalid privateKey length"),c=u(r),_.push(c);var p=new l(0|t._crypto_box_beforenmbytes()),y=p.address;if(_.push(y),!(0|t._crypto_box_beforenm(y,n,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function de(e,r,a){var _=[];i(a),e=x(_,e,"publicKey");var n,s=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();e.length!==s&&f(_,"invalid publicKey length"),n=u(e),_.push(n),r=x(_,r,"privateKey");var c,o=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();r.length!==o&&f(_,"invalid privateKey length"),c=u(r),_.push(c);var p=new l(0|t._crypto_box_curve25519xchacha20poly1305_beforenmbytes()),y=p.address;if(_.push(y),!(0|t._crypto_box_curve25519xchacha20poly1305_beforenm(y,n,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function ve(e,r,a,_,n){var s=[];i(n);var c=u(e=x(s,e,"message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=u(r),s.push(p),a=x(s,a,"publicKey");var d,v=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==v&&f(s,"invalid publicKey length"),d=u(a),s.push(d),_=x(s,_,"privateKey");var m,E=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==E&&f(s,"invalid privateKey length"),m=u(_),s.push(m);var k=new l(0|o),S=k.address;s.push(S);var T=new l(0|t._crypto_box_curve25519xchacha20poly1305_macbytes()),w=T.address;if(s.push(w),!(0|t._crypto_box_curve25519xchacha20poly1305_detached(S,w,c,o,0,p,d,m))){var Y=h({ciphertext:k,mac:T},n);return g(s),Y}b(s,"invalid usage")}function ge(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=u(r),n.push(o),a=x(n,a,"sharedKey");var y,d=0|t._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==d&&f(n,"invalid sharedKey length"),y=u(a),n.push(y);var v=new l(0|c),m=v.address;n.push(m);var E=new l(0|t._crypto_box_curve25519xchacha20poly1305_macbytes()),k=E.address;if(n.push(k),!(0|t._crypto_box_curve25519xchacha20poly1305_detached_afternm(m,k,s,c,0,o,y))){var S=h({ciphertext:v,mac:E},_);return g(n),S}b(n,"invalid usage")}function be(e,r,a,_,n){var s=[];i(n);var c=u(e=x(s,e,"message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=u(r),s.push(p),a=x(s,a,"publicKey");var d,v=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==v&&f(s,"invalid publicKey length"),d=u(a),s.push(d),_=x(s,_,"privateKey");var m,E=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==E&&f(s,"invalid privateKey length"),m=u(_),s.push(m);var k=new l(o+t._crypto_box_curve25519xchacha20poly1305_macbytes()|0),S=k.address;if(s.push(S),!(0|t._crypto_box_curve25519xchacha20poly1305_easy(S,c,o,0,p,d,m))){var T=h(k,n);return g(s),T}b(s,"invalid usage")}function fe(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=u(r),n.push(o),a=x(n,a,"sharedKey");var y,d=0|t._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==d&&f(n,"invalid sharedKey length"),y=u(a),n.push(y);var v=new l(c+t._crypto_box_curve25519xchacha20poly1305_macbytes()|0),m=v.address;if(n.push(m),!(0|t._crypto_box_curve25519xchacha20poly1305_easy_afternm(m,s,c,0,o,y))){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function me(e){var r=[];i(e);var a=new l(0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes()),_=a.address;r.push(_);var n=new l(0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),s=n.address;r.push(s),t._crypto_box_curve25519xchacha20poly1305_keypair(_,s);var c=h({publicKey:a,privateKey:n,keyType:"curve25519"},e);return g(r),c}function xe(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"ciphertext")),p=e.length;c.push(o),r=x(c,r,"mac");var y,d=0|t._crypto_box_curve25519xchacha20poly1305_macbytes();r.length!==d&&f(c,"invalid mac length"),y=u(r),c.push(y),a=x(c,a,"nonce");var v,m=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==m&&f(c,"invalid nonce length"),v=u(a),c.push(v),_=x(c,_,"publicKey");var E,k=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();_.length!==k&&f(c,"invalid publicKey length"),E=u(_),c.push(E),n=x(c,n,"privateKey");var S,T=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();n.length!==T&&f(c,"invalid privateKey length"),S=u(n),c.push(S);var w=new l(0|p),Y=w.address;if(c.push(Y),!(0|t._crypto_box_curve25519xchacha20poly1305_open_detached(Y,o,y,p,0,v,E,S))){var B=h(w,s);return g(c),B}b(c,"incorrect key pair for the given ciphertext")}function Ee(e,r,a,_,n){var s=[];i(n);var c=u(e=x(s,e,"ciphertext")),o=e.length;s.push(c),r=x(s,r,"mac");var p,y=0|t._crypto_box_curve25519xchacha20poly1305_macbytes();r.length!==y&&f(s,"invalid mac length"),p=u(r),s.push(p),a=x(s,a,"nonce");var d,v=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==v&&f(s,"invalid nonce length"),d=u(a),s.push(d),_=x(s,_,"sharedKey");var m,E=0|t._crypto_box_curve25519xchacha20poly1305_beforenmbytes();_.length!==E&&f(s,"invalid sharedKey length"),m=u(_),s.push(m);var k=new l(0|o),S=k.address;if(s.push(S),!(0|t._crypto_box_curve25519xchacha20poly1305_open_detached_afternm(S,c,p,o,0,d,m))){var T=h(k,n);return g(s),T}b(s,"incorrect secret key for the given ciphertext")}function ke(e,r,a,_,n){var s=[];i(n),e=x(s,e,"ciphertext");var c,o=t._crypto_box_curve25519xchacha20poly1305_macbytes(),p=e.length;p<o&&f(s,"ciphertext is too short"),c=u(e),s.push(c),r=x(s,r,"nonce");var y,d=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==d&&f(s,"invalid nonce length"),y=u(r),s.push(y),a=x(s,a,"publicKey");var v,m=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==m&&f(s,"invalid publicKey length"),v=u(a),s.push(v),_=x(s,_,"privateKey");var E,k=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==k&&f(s,"invalid privateKey length"),E=u(_),s.push(E);var S=new l(p-t._crypto_box_curve25519xchacha20poly1305_macbytes()|0),T=S.address;if(s.push(T),!(0|t._crypto_box_curve25519xchacha20poly1305_open_easy(T,c,p,0,y,v,E))){var w=h(S,n);return g(s),w}b(s,"incorrect key pair for the given ciphertext")}function Se(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"ciphertext")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=u(r),n.push(o),a=x(n,a,"sharedKey");var y,d=0|t._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==d&&f(n,"invalid sharedKey length"),y=u(a),n.push(y);var v=new l(c-t._crypto_box_curve25519xchacha20poly1305_macbytes()|0),m=v.address;if(n.push(m),!(0|t._crypto_box_curve25519xchacha20poly1305_open_easy_afternm(m,s,c,0,o,y))){var E=h(v,_);return g(n),E}b(n,"incorrect secret key for the given ciphertext")}function Te(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"publicKey");var c,o=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();r.length!==o&&f(_,"invalid publicKey length"),c=u(r),_.push(c);var p=new l(s+t._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),y=p.address;_.push(y),t._crypto_box_curve25519xchacha20poly1305_seal(y,n,s,0,c);var d=h(p,a);return g(_),d}function we(e,r,a,_){var n=[];i(_),e=x(n,e,"ciphertext");var s,c=t._crypto_box_curve25519xchacha20poly1305_sealbytes(),o=e.length;o<c&&f(n,"ciphertext is too short"),s=u(e),n.push(s),r=x(n,r,"publicKey");var p,y=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();r.length!==y&&f(n,"invalid publicKey length"),p=u(r),n.push(p),a=x(n,a,"secretKey");var d,v=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();a.length!==v&&f(n,"invalid secretKey length"),d=u(a),n.push(d);var b=new l(o-t._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),m=b.address;n.push(m),t._crypto_box_curve25519xchacha20poly1305_seal_open(m,s,o,0,p,d);var E=h(b,_);return g(n),E}function Ye(e,r){var a=[];i(r),e=x(a,e,"seed");var _,n=0|t._crypto_box_curve25519xchacha20poly1305_seedbytes();e.length!==n&&f(a,"invalid seed length"),_=u(e),a.push(_);var s=new l(0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes()),c=s.address;a.push(c);var o=new l(0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),p=o.address;if(a.push(p),!(0|t._crypto_box_curve25519xchacha20poly1305_seed_keypair(c,p,_))){var y={publicKey:h(s,r),privateKey:h(o,r),keyType:"x25519"};return g(a),y}b(a,"invalid usage")}function Be(e,r,a,_,n){var s=[];i(n);var c=u(e=x(s,e,"message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_box_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=u(r),s.push(p),a=x(s,a,"publicKey");var d,v=0|t._crypto_box_publickeybytes();a.length!==v&&f(s,"invalid publicKey length"),d=u(a),s.push(d),_=x(s,_,"privateKey");var m,E=0|t._crypto_box_secretkeybytes();_.length!==E&&f(s,"invalid privateKey length"),m=u(_),s.push(m);var k=new l(0|o),S=k.address;s.push(S);var T=new l(0|t._crypto_box_macbytes()),w=T.address;if(s.push(w),!(0|t._crypto_box_detached(S,w,c,o,0,p,d,m))){var Y=h({ciphertext:k,mac:T},n);return g(s),Y}b(s,"invalid usage")}function Ae(e,r,a,_,n){var s=[];i(n);var c=u(e=x(s,e,"message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_box_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=u(r),s.push(p),a=x(s,a,"publicKey");var d,v=0|t._crypto_box_publickeybytes();a.length!==v&&f(s,"invalid publicKey length"),d=u(a),s.push(d),_=x(s,_,"privateKey");var m,E=0|t._crypto_box_secretkeybytes();_.length!==E&&f(s,"invalid privateKey length"),m=u(_),s.push(m);var k=new l(o+t._crypto_box_macbytes()|0),S=k.address;if(s.push(S),!(0|t._crypto_box_easy(S,c,o,0,p,d,m))){var T=h(k,n);return g(s),T}b(s,"invalid usage")}function Me(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_box_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=u(r),n.push(o),a=x(n,a,"sharedKey");var y,d=0|t._crypto_box_beforenmbytes();a.length!==d&&f(n,"invalid sharedKey length"),y=u(a),n.push(y);var v=new l(c+t._crypto_box_macbytes()|0),m=v.address;if(n.push(m),!(0|t._crypto_box_easy_afternm(m,s,c,0,o,y))){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function Ie(e){var r=[];i(e);var a=new l(0|t._crypto_box_publickeybytes()),_=a.address;r.push(_);var n=new l(0|t._crypto_box_secretkeybytes()),s=n.address;if(r.push(s),!(0|t._crypto_box_keypair(_,s))){var c={publicKey:h(a,e),privateKey:h(n,e),keyType:"x25519"};return g(r),c}b(r,"internal error")}function Ke(e,r,a,_,n,s){var c=[];i(s);var o=u(e=x(c,e,"ciphertext")),p=e.length;c.push(o),r=x(c,r,"mac");var y,d=0|t._crypto_box_macbytes();r.length!==d&&f(c,"invalid mac length"),y=u(r),c.push(y),a=x(c,a,"nonce");var v,m=0|t._crypto_box_noncebytes();a.length!==m&&f(c,"invalid nonce length"),v=u(a),c.push(v),_=x(c,_,"publicKey");var E,k=0|t._crypto_box_publickeybytes();_.length!==k&&f(c,"invalid publicKey length"),E=u(_),c.push(E),n=x(c,n,"privateKey");var S,T=0|t._crypto_box_secretkeybytes();n.length!==T&&f(c,"invalid privateKey length"),S=u(n),c.push(S);var w=new l(0|p),Y=w.address;if(c.push(Y),!(0|t._crypto_box_open_detached(Y,o,y,p,0,v,E,S))){var B=h(w,s);return g(c),B}b(c,"incorrect key pair for the given ciphertext")}function Ne(e,r,a,_,n){var s=[];i(n),e=x(s,e,"ciphertext");var c,o=t._crypto_box_macbytes(),p=e.length;p<o&&f(s,"ciphertext is too short"),c=u(e),s.push(c),r=x(s,r,"nonce");var y,d=0|t._crypto_box_noncebytes();r.length!==d&&f(s,"invalid nonce length"),y=u(r),s.push(y),a=x(s,a,"publicKey");var v,m=0|t._crypto_box_publickeybytes();a.length!==m&&f(s,"invalid publicKey length"),v=u(a),s.push(v),_=x(s,_,"privateKey");var E,k=0|t._crypto_box_secretkeybytes();_.length!==k&&f(s,"invalid privateKey length"),E=u(_),s.push(E);var S=new l(p-t._crypto_box_macbytes()|0),T=S.address;if(s.push(T),!(0|t._crypto_box_open_easy(T,c,p,0,y,v,E))){var w=h(S,n);return g(s),w}b(s,"incorrect key pair for the given ciphertext")}function Le(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"ciphertext")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_box_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=u(r),n.push(o),a=x(n,a,"sharedKey");var y,d=0|t._crypto_box_beforenmbytes();a.length!==d&&f(n,"invalid sharedKey length"),y=u(a),n.push(y);var v=new l(c-t._crypto_box_macbytes()|0),m=v.address;if(n.push(m),!(0|t._crypto_box_open_easy_afternm(m,s,c,0,o,y))){var E=h(v,_);return g(n),E}b(n,"incorrect secret key for the given ciphertext")}function Oe(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"publicKey");var c,o=0|t._crypto_box_publickeybytes();r.length!==o&&f(_,"invalid publicKey length"),c=u(r),_.push(c);var p=new l(s+t._crypto_box_sealbytes()|0),y=p.address;if(_.push(y),!(0|t._crypto_box_seal(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function Ue(e,r,a,_){var n=[];i(_),e=x(n,e,"ciphertext");var s,c=t._crypto_box_sealbytes(),o=e.length;o<c&&f(n,"ciphertext is too short"),s=u(e),n.push(s),r=x(n,r,"publicKey");var p,y=0|t._crypto_box_publickeybytes();r.length!==y&&f(n,"invalid publicKey length"),p=u(r),n.push(p),a=x(n,a,"privateKey");var d,v=0|t._crypto_box_secretkeybytes();a.length!==v&&f(n,"invalid privateKey length"),d=u(a),n.push(d);var m=new l(o-t._crypto_box_sealbytes()|0),E=m.address;if(n.push(E),!(0|t._crypto_box_seal_open(E,s,o,0,p,d))){var k=h(m,_);return g(n),k}b(n,"incorrect key pair for the given ciphertext")}function Pe(e,r){var a=[];i(r),e=x(a,e,"seed");var _,n=0|t._crypto_box_seedbytes();e.length!==n&&f(a,"invalid seed length"),_=u(e),a.push(_);var s=new l(0|t._crypto_box_publickeybytes()),c=s.address;a.push(c);var o=new l(0|t._crypto_box_secretkeybytes()),p=o.address;if(a.push(p),!(0|t._crypto_box_seed_keypair(c,p,_))){var y={publicKey:h(s,r),privateKey:h(o,r),keyType:"x25519"};return g(a),y}b(a,"invalid usage")}function Ce(e,r,a){var _=[];i(a),e=x(_,e,"p");var n,s=0|t._crypto_core_ed25519_bytes();e.length!==s&&f(_,"invalid p length"),n=u(e),_.push(n),r=x(_,r,"q");var c,o=0|t._crypto_core_ed25519_bytes();r.length!==o&&f(_,"invalid q length"),c=u(r),_.push(c);var p=new l(0|t._crypto_core_ed25519_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_core_ed25519_add(y,n,c))){var d=h(p,a);return g(_),d}b(_,"input is an invalid element")}function Re(e,r){var a=[];i(r);var _=u(e=x(a,e,"r"));e.length,a.push(_);var n=new l(0|t._crypto_core_ed25519_bytes()),s=n.address;if(a.push(s),!(0|t._crypto_core_ed25519_from_hash(s,_))){var c=h(n,r);return g(a),c}b(a,"invalid usage")}function Xe(e,r){var a=[];i(r);var _=u(e=x(a,e,"r"));e.length,a.push(_);var n=new l(0|t._crypto_core_ed25519_bytes()),s=n.address;if(a.push(s),!(0|t._crypto_core_ed25519_from_uniform(s,_))){var c=h(n,r);return g(a),c}b(a,"invalid usage")}function De(e,r){var a=[];i(r),e=x(a,e,"repr");var _,n=0|t._crypto_core_ed25519_bytes();e.length!==n&&f(a,"invalid repr length"),_=u(e),a.push(_);var s=1==(0|t._crypto_core_ed25519_is_valid_point(_));return g(a),s}function Ge(e){var r=[];i(e);var a=new l(0|t._crypto_core_ed25519_bytes()),_=a.address;r.push(_),t._crypto_core_ed25519_random(_);var n=h(a,e);return g(r),n}function Fe(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ed25519_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=u(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ed25519_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=u(r),_.push(c);var p=new l(0|t._crypto_core_ed25519_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ed25519_scalar_add(y,n,c);var d=h(p,a);return g(_),d}function Ve(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ed25519_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=u(e),a.push(_);var s=new l(0|t._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ed25519_scalar_complement(c,_);var o=h(s,r);return g(a),o}function qe(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ed25519_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=u(e),a.push(_);var s=new l(0|t._crypto_core_ed25519_scalarbytes()),c=s.address;if(a.push(c),!(0|t._crypto_core_ed25519_scalar_invert(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid reciprocate")}function ze(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ed25519_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=u(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ed25519_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=u(r),_.push(c);var p=new l(0|t._crypto_core_ed25519_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ed25519_scalar_mul(y,n,c);var d=h(p,a);return g(_),d}function We(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ed25519_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=u(e),a.push(_);var s=new l(0|t._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ed25519_scalar_negate(c,_);var o=h(s,r);return g(a),o}function He(e){var r=[];i(e);var a=new l(0|t._crypto_core_ed25519_scalarbytes()),_=a.address;r.push(_),t._crypto_core_ed25519_scalar_random(_);var n=h(a,e);return g(r),n}function je(e,r){var a=[];i(r),e=x(a,e,"sample");var _,n=0|t._crypto_core_ed25519_nonreducedscalarbytes();e.length!==n&&f(a,"invalid sample length"),_=u(e),a.push(_);var s=new l(0|t._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ed25519_scalar_reduce(c,_);var o=h(s,r);return g(a),o}function Je(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ed25519_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=u(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ed25519_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=u(r),_.push(c);var p=new l(0|t._crypto_core_ed25519_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ed25519_scalar_sub(y,n,c);var d=h(p,a);return g(_),d}function Qe(e,r,a){var _=[];i(a),e=x(_,e,"p");var n,s=0|t._crypto_core_ed25519_bytes();e.length!==s&&f(_,"invalid p length"),n=u(e),_.push(n),r=x(_,r,"q");var c,o=0|t._crypto_core_ed25519_bytes();r.length!==o&&f(_,"invalid q length"),c=u(r),_.push(c);var p=new l(0|t._crypto_core_ed25519_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_core_ed25519_sub(y,n,c))){var d=h(p,a);return g(_),d}b(_,"input is an invalid element")}function Ze(e,r,a,_){var n=[];i(_),e=x(n,e,"input");var s,c=0|t._crypto_core_hchacha20_inputbytes();e.length!==c&&f(n,"invalid input length"),s=u(e),n.push(s),r=x(n,r,"privateKey");var o,p=0|t._crypto_core_hchacha20_keybytes();r.length!==p&&f(n,"invalid privateKey length"),o=u(r),n.push(o);var y=null;null!=a&&(y=u(a=x(n,a,"constant")),a.length,n.push(y));var d=new l(0|t._crypto_core_hchacha20_outputbytes()),v=d.address;if(n.push(v),!(0|t._crypto_core_hchacha20(v,s,o,y))){var m=h(d,_);return g(n),m}b(n,"invalid usage")}function $e(e,r,a,_){var n=[];i(_),e=x(n,e,"input");var s,c=0|t._crypto_core_hsalsa20_inputbytes();e.length!==c&&f(n,"invalid input length"),s=u(e),n.push(s),r=x(n,r,"privateKey");var o,p=0|t._crypto_core_hsalsa20_keybytes();r.length!==p&&f(n,"invalid privateKey length"),o=u(r),n.push(o);var y=null;null!=a&&(y=u(a=x(n,a,"constant")),a.length,n.push(y));var d=new l(0|t._crypto_core_hsalsa20_outputbytes()),v=d.address;if(n.push(v),!(0|t._crypto_core_hsalsa20(v,s,o,y))){var m=h(d,_);return g(n),m}b(n,"invalid usage")}function er(e,r,a){var _=[];i(a),e=x(_,e,"p");var n,s=0|t._crypto_core_ristretto255_bytes();e.length!==s&&f(_,"invalid p length"),n=u(e),_.push(n),r=x(_,r,"q");var c,o=0|t._crypto_core_ristretto255_bytes();r.length!==o&&f(_,"invalid q length"),c=u(r),_.push(c);var p=new l(0|t._crypto_core_ristretto255_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_core_ristretto255_add(y,n,c))){var d=h(p,a);return g(_),d}b(_,"input is an invalid element")}function rr(e,r){var a=[];i(r);var _=u(e=x(a,e,"r"));e.length,a.push(_);var n=new l(0|t._crypto_core_ristretto255_bytes()),s=n.address;if(a.push(s),!(0|t._crypto_core_ristretto255_from_hash(s,_))){var c=h(n,r);return g(a),c}b(a,"invalid usage")}function tr(e,r){var a=[];i(r),e=x(a,e,"repr");var _,n=0|t._crypto_core_ristretto255_bytes();e.length!==n&&f(a,"invalid repr length"),_=u(e),a.push(_);var s=1==(0|t._crypto_core_ristretto255_is_valid_point(_));return g(a),s}function ar(e){var r=[];i(e);var a=new l(0|t._crypto_core_ristretto255_bytes()),_=a.address;r.push(_),t._crypto_core_ristretto255_random(_);var n=h(a,e);return g(r),n}function _r(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=u(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ristretto255_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=u(r),_.push(c);var p=new l(0|t._crypto_core_ristretto255_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ristretto255_scalar_add(y,n,c);var d=h(p,a);return g(_),d}function nr(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=u(e),a.push(_);var s=new l(0|t._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ristretto255_scalar_complement(c,_);var o=h(s,r);return g(a),o}function sr(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=u(e),a.push(_);var s=new l(0|t._crypto_core_ristretto255_scalarbytes()),c=s.address;if(a.push(c),!(0|t._crypto_core_ristretto255_scalar_invert(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid reciprocate")}function cr(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=u(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ristretto255_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=u(r),_.push(c);var p=new l(0|t._crypto_core_ristretto255_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ristretto255_scalar_mul(y,n,c);var d=h(p,a);return g(_),d}function or(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=u(e),a.push(_);var s=new l(0|t._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ristretto255_scalar_negate(c,_);var o=h(s,r);return g(a),o}function pr(e){var r=[];i(e);var a=new l(0|t._crypto_core_ristretto255_scalarbytes()),_=a.address;r.push(_),t._crypto_core_ristretto255_scalar_random(_);var n=h(a,e);return g(r),n}function hr(e,r){var a=[];i(r),e=x(a,e,"sample");var _,n=0|t._crypto_core_ristretto255_nonreducedscalarbytes();e.length!==n&&f(a,"invalid sample length"),_=u(e),a.push(_);var s=new l(0|t._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ristretto255_scalar_reduce(c,_);var o=h(s,r);return g(a),o}function yr(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=u(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ristretto255_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=u(r),_.push(c);var p=new l(0|t._crypto_core_ristretto255_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ristretto255_scalar_sub(y,n,c);var d=h(p,a);return g(_),d}function ir(e,r,a){var _=[];i(a),e=x(_,e,"p");var n,s=0|t._crypto_core_ristretto255_bytes();e.length!==s&&f(_,"invalid p length"),n=u(e),_.push(n),r=x(_,r,"q");var c,o=0|t._crypto_core_ristretto255_bytes();r.length!==o&&f(_,"invalid q length"),c=u(r),_.push(c);var p=new l(0|t._crypto_core_ristretto255_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_core_ristretto255_sub(y,n,c))){var d=h(p,a);return g(_),d}b(_,"input is an invalid element")}function lr(e,r,a,_){var n=[];i(_),m(n,e,"hash_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(n,"hash_length must be an unsigned integer");var s=u(r=x(n,r,"message")),c=r.length;n.push(s);var o=null,p=0;null!=a&&(o=u(a=x(n,a,"key")),p=a.length,n.push(o));var y=new l(e|=0),d=y.address;if(n.push(d),!(0|t._crypto_generichash(d,e,s,c,0,o,p))){var v=h(y,_);return g(n),v}b(n,"invalid usage")}function ur(e,r,a,_,n){var s=[];i(n),m(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&f(s,"subkey_len must be an unsigned integer");var c=null,o=0;null!=r&&(c=u(r=x(s,r,"key")),o=r.length,s.push(c));var p=null,y=0;null!=a&&(a=x(s,a,"id"),y=0|t._crypto_generichash_blake2b_saltbytes(),a.length!==y&&f(s,"invalid id length"),p=u(a),s.push(p));var d=null,v=0;null!=_&&(_=x(s,_,"ctx"),v=0|t._crypto_generichash_blake2b_personalbytes(),_.length!==v&&f(s,"invalid ctx length"),d=u(_),s.push(d));var E=new l(0|e),k=E.address;if(s.push(k),!(0|t._crypto_generichash_blake2b_salt_personal(k,e,null,0,0,c,o,p,d))){var S=h(E,n);return g(s),S}b(s,"invalid usage")}function dr(e,r,a){var _=[];i(a),m(_,e,"state_address"),m(_,r,"hash_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"hash_length must be an unsigned integer");var n=new l(r|=0),s=n.address;if(_.push(s),!(0|t._crypto_generichash_final(e,s,r))){var c=(t._free(e),h(n,a));return g(_),c}b(_,"invalid usage")}function vr(e,r,a){var _=[];i(a);var n=null,s=0;null!=e&&(n=u(e=x(_,e,"key")),s=e.length,_.push(n)),m(_,r,"hash_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"hash_length must be an unsigned integer");var c=new l(357).address;if(!(0|t._crypto_generichash_init(c,n,s,r))){var o=c;return g(_),o}b(_,"invalid usage")}function gr(e){var r=[];i(e);var a=new l(0|t._crypto_generichash_keybytes()),_=a.address;r.push(_),t._crypto_generichash_keygen(_);var n=h(a,e);return g(r),n}function br(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_generichash_update(e,n,s)&&b(_,"invalid usage"),g(_)}function fr(e,r){var a=[];i(r);var _=u(e=x(a,e,"message")),n=e.length;a.push(_);var s=new l(0|t._crypto_hash_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_hash(c,_,n,0))){var o=h(s,r);return g(a),o}b(a,"invalid usage")}function mr(e,r){var a=[];i(r);var _=u(e=x(a,e,"message")),n=e.length;a.push(_);var s=new l(0|t._crypto_hash_sha256_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_hash_sha256(c,_,n,0))){var o=h(s,r);return g(a),o}b(a,"invalid usage")}function xr(e,r){var a=[];i(r),m(a,e,"state_address");var _=new l(0|t._crypto_hash_sha256_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_hash_sha256_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function Er(e){var r=[];i(e);var a=new l(104).address;if(!(0|t._crypto_hash_sha256_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function kr(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_hash_sha256_update(e,n,s)&&b(_,"invalid usage"),g(_)}function Sr(e,r){var a=[];i(r);var _=u(e=x(a,e,"message")),n=e.length;a.push(_);var s=new l(0|t._crypto_hash_sha512_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_hash_sha512(c,_,n,0))){var o=h(s,r);return g(a),o}b(a,"invalid usage")}function Tr(e,r){var a=[];i(r),m(a,e,"state_address");var _=new l(0|t._crypto_hash_sha512_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_hash_sha512_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function wr(e){var r=[];i(e);var a=new l(208).address;if(!(0|t._crypto_hash_sha512_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function Yr(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_hash_sha512_update(e,n,s)&&b(_,"invalid usage"),g(_)}function Br(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_bytes();e.length!==s&&f(_,"invalid input length"),n=u(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_ipcrypt_bytes()),y=p.address;_.push(y),t._crypto_ipcrypt_decrypt(y,n,c);var d=h(p,a);return g(_),d}function Ar(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_bytes();e.length!==s&&f(_,"invalid input length"),n=u(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_ipcrypt_bytes()),y=p.address;_.push(y),t._crypto_ipcrypt_encrypt(y,n,c);var d=h(p,a);return g(_),d}function Mr(e){var r=[];i(e);var a=new l(0|t._crypto_ipcrypt_keybytes()),_=a.address;r.push(_),t._crypto_ipcrypt_keygen(_);var n=h(a,e);return g(r),n}function Ir(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_nd_outputbytes();e.length!==s&&f(_,"invalid input length"),n=u(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_nd_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_ipcrypt_nd_inputbytes()),y=p.address;_.push(y),t._crypto_ipcrypt_nd_decrypt(y,n,c);var d=h(p,a);return g(_),d}function Kr(e,r,a,_){var n=[];i(_),e=x(n,e,"input");var s,c=0|t._crypto_ipcrypt_nd_inputbytes();e.length!==c&&f(n,"invalid input length"),s=u(e),n.push(s),r=x(n,r,"tweak");var o,p=0|t._crypto_ipcrypt_nd_tweakbytes();r.length!==p&&f(n,"invalid tweak length"),o=u(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_ipcrypt_nd_keybytes();a.length!==d&&f(n,"invalid key length"),y=u(a),n.push(y);var v=new l(0|t._crypto_ipcrypt_nd_outputbytes()),b=v.address;n.push(b),t._crypto_ipcrypt_nd_encrypt(b,s,o,y);var m=h(v,_);return g(n),m}function Nr(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_ndx_outputbytes();e.length!==s&&f(_,"invalid input length"),n=u(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_ndx_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_ipcrypt_ndx_inputbytes()),y=p.address;_.push(y),t._crypto_ipcrypt_ndx_decrypt(y,n,c);var d=h(p,a);return g(_),d}function Lr(e,r,a,_){var n=[];i(_),e=x(n,e,"input");var s,c=0|t._crypto_ipcrypt_ndx_inputbytes();e.length!==c&&f(n,"invalid input length"),s=u(e),n.push(s),r=x(n,r,"tweak");var o,p=0|t._crypto_ipcrypt_ndx_tweakbytes();r.length!==p&&f(n,"invalid tweak length"),o=u(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_ipcrypt_ndx_keybytes();a.length!==d&&f(n,"invalid key length"),y=u(a),n.push(y);var v=new l(0|t._crypto_ipcrypt_ndx_outputbytes()),b=v.address;n.push(b),t._crypto_ipcrypt_ndx_encrypt(b,s,o,y);var m=h(v,_);return g(n),m}function Or(e){var r=[];i(e);var a=new l(0|t._crypto_ipcrypt_ndx_keybytes()),_=a.address;r.push(_),t._crypto_ipcrypt_ndx_keygen(_);var n=h(a,e);return g(r),n}function Ur(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_pfx_bytes();e.length!==s&&f(_,"invalid input length"),n=u(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_pfx_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_ipcrypt_pfx_bytes()),y=p.address;_.push(y),t._crypto_ipcrypt_pfx_decrypt(y,n,c);var d=h(p,a);return g(_),d}function Pr(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_pfx_bytes();e.length!==s&&f(_,"invalid input length"),n=u(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_pfx_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_ipcrypt_pfx_bytes()),y=p.address;_.push(y),t._crypto_ipcrypt_pfx_encrypt(y,n,c);var d=h(p,a);return g(_),d}function Cr(e){var r=[];i(e);var a=new l(0|t._crypto_ipcrypt_pfx_keybytes()),_=a.address;r.push(_),t._crypto_ipcrypt_pfx_keygen(_);var n=h(a,e);return g(r),n}function Rr(e,r,a,n,s){var c=[];i(s),m(c,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&f(c,"subkey_len must be an unsigned integer"),m(c,r,"subkey_id");var o,p=0;if("bigint"==typeof r&&r>=BigInt(0)){const e=r>>BigInt(32);e>BigInt(4294967295)&&f(c,"subkey_id cannot be more than 64 bits"),p=Number(e),o=Number(r&BigInt(4294967295))}else"number"==typeof r&&(0|r)===r&&r>=0?o=r:f(c,"subkey_id must be an unsigned integer or bigint");"string"!=typeof a&&f(c,"ctx must be a string"),(a=_(a+"\0")).length-1!==t._crypto_kdf_contextbytes()&&f(c,"invalid ctx length");var y=u(a);a.length,c.push(y),n=x(c,n,"key");var d,v=0|t._crypto_kdf_keybytes();n.length!==v&&f(c,"invalid key length"),d=u(n),c.push(d);var b=new l(0|e),E=b.address;c.push(E),t._crypto_kdf_derive_from_key(E,e,o,p,y,d);var k=h(b,s);return g(c),k}function Xr(e){var r=[];i(e);var a=new l(0|t._crypto_kdf_keybytes()),_=a.address;r.push(_),t._crypto_kdf_keygen(_);var n=h(a,e);return g(r),n}function Dr(e,r,a,_){var n=[];i(_),e=x(n,e,"clientPublicKey");var s,c=0|t._crypto_kx_publickeybytes();e.length!==c&&f(n,"invalid clientPublicKey length"),s=u(e),n.push(s),r=x(n,r,"clientSecretKey");var o,p=0|t._crypto_kx_secretkeybytes();r.length!==p&&f(n,"invalid clientSecretKey length"),o=u(r),n.push(o),a=x(n,a,"serverPublicKey");var y,d=0|t._crypto_kx_publickeybytes();a.length!==d&&f(n,"invalid serverPublicKey length"),y=u(a),n.push(y);var v=new l(0|t._crypto_kx_sessionkeybytes()),m=v.address;n.push(m);var E=new l(0|t._crypto_kx_sessionkeybytes()),k=E.address;if(n.push(k),!(0|t._crypto_kx_client_session_keys(m,k,s,o,y))){var S=h({sharedRx:v,sharedTx:E},_);return g(n),S}b(n,"invalid usage")}function Gr(e){var r=[];i(e);var a=new l(0|t._crypto_kx_publickeybytes()),_=a.address;r.push(_);var n=new l(0|t._crypto_kx_secretkeybytes()),s=n.address;if(r.push(s),!(0|t._crypto_kx_keypair(_,s))){var c={publicKey:h(a,e),privateKey:h(n,e),keyType:"x25519"};return g(r),c}b(r,"internal error")}function Fr(e,r){var a=[];i(r),e=x(a,e,"seed");var _,n=0|t._crypto_kx_seedbytes();e.length!==n&&f(a,"invalid seed length"),_=u(e),a.push(_);var s=new l(0|t._crypto_kx_publickeybytes()),c=s.address;a.push(c);var o=new l(0|t._crypto_kx_secretkeybytes()),p=o.address;if(a.push(p),!(0|t._crypto_kx_seed_keypair(c,p,_))){var y={publicKey:h(s,r),privateKey:h(o,r),keyType:"x25519"};return g(a),y}b(a,"internal error")}function Vr(e,r,a,_){var n=[];i(_),e=x(n,e,"serverPublicKey");var s,c=0|t._crypto_kx_publickeybytes();e.length!==c&&f(n,"invalid serverPublicKey length"),s=u(e),n.push(s),r=x(n,r,"serverSecretKey");var o,p=0|t._crypto_kx_secretkeybytes();r.length!==p&&f(n,"invalid serverSecretKey length"),o=u(r),n.push(o),a=x(n,a,"clientPublicKey");var y,d=0|t._crypto_kx_publickeybytes();a.length!==d&&f(n,"invalid clientPublicKey length"),y=u(a),n.push(y);var v=new l(0|t._crypto_kx_sessionkeybytes()),m=v.address;n.push(m);var E=new l(0|t._crypto_kx_sessionkeybytes()),k=E.address;if(n.push(k),!(0|t._crypto_kx_server_session_keys(m,k,s,o,y))){var S=h({sharedRx:v,sharedTx:E},_);return g(n),S}b(n,"invalid usage")}function qr(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_onetimeauth_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_onetimeauth_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_onetimeauth(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function zr(e,r){var a=[];i(r),m(a,e,"state_address");var _=new l(0|t._crypto_onetimeauth_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_onetimeauth_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function Wr(e,r){var a=[];i(r);var _=null;null!=e&&(_=u(e=x(a,e,"key")),e.length,a.push(_));var n=new l(144).address;if(!(0|t._crypto_onetimeauth_init(n,_))){var s=n;return g(a),s}b(a,"invalid usage")}function Hr(e){var r=[];i(e);var a=new l(0|t._crypto_onetimeauth_keybytes()),_=a.address;r.push(_),t._crypto_onetimeauth_keygen(_);var n=h(a,e);return g(r),n}function jr(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_onetimeauth_update(e,n,s)&&b(_,"invalid usage"),g(_)}function Jr(e,r,a){var _=[];e=x(_,e,"hash");var n,s=0|t._crypto_onetimeauth_bytes();e.length!==s&&f(_,"invalid hash length"),n=u(e),_.push(n);var c=u(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"key");var p,h=0|t._crypto_onetimeauth_keybytes();a.length!==h&&f(_,"invalid key length"),p=u(a),_.push(p);var y=!(0|t._crypto_onetimeauth_verify(n,c,o,0,p));return g(_),y}function Qr(e,r,a,_,n,s,c){var o=[];i(c),m(o,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&f(o,"keyLength must be an unsigned integer");var p=u(r=x(o,r,"password")),y=r.length;o.push(p),a=x(o,a,"salt");var d,v=0|t._crypto_pwhash_saltbytes();a.length!==v&&f(o,"invalid salt length"),d=u(a),o.push(d),m(o,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&f(o,"opsLimit must be an unsigned integer"),m(o,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&f(o,"memLimit must be an unsigned integer"),m(o,s,"algorithm"),("number"!=typeof s||(0|s)!==s||s<0)&&f(o,"algorithm must be an unsigned integer");var E=new l(0|e),k=E.address;if(o.push(k),!(0|t._crypto_pwhash(k,e,0,p,y,0,d,_,0,n,s))){var S=h(E,c);return g(o),S}b(o,"invalid usage")}function Zr(e,r,a,_,n,s){var c=[];i(s),m(c,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&f(c,"keyLength must be an unsigned integer");var o=u(r=x(c,r,"password")),p=r.length;c.push(o),a=x(c,a,"salt");var y,d=0|t._crypto_pwhash_scryptsalsa208sha256_saltbytes();a.length!==d&&f(c,"invalid salt length"),y=u(a),c.push(y),m(c,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&f(c,"opsLimit must be an unsigned integer"),m(c,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&f(c,"memLimit must be an unsigned integer");var v=new l(0|e),E=v.address;if(c.push(E),!(0|t._crypto_pwhash_scryptsalsa208sha256(E,e,0,o,p,0,y,_,0,n))){var k=h(v,s);return g(c),k}b(c,"invalid usage")}function $r(e,r,a,_,n,s,c){var o=[];i(c);var p=u(e=x(o,e,"password")),y=e.length;o.push(p);var d=u(r=x(o,r,"salt")),v=r.length;o.push(d),m(o,a,"opsLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(o,"opsLimit must be an unsigned integer"),m(o,_,"r"),("number"!=typeof _||(0|_)!==_||_<0)&&f(o,"r must be an unsigned integer"),m(o,n,"p"),("number"!=typeof n||(0|n)!==n||n<0)&&f(o,"p must be an unsigned integer"),m(o,s,"keyLength"),("number"!=typeof s||(0|s)!==s||s<0)&&f(o,"keyLength must be an unsigned integer");var E=new l(0|s),k=E.address;if(o.push(k),!(0|t._crypto_pwhash_scryptsalsa208sha256_ll(p,y,d,v,a,0,_,n,k,s))){var S=h(E,c);return g(o),S}b(o,"invalid usage")}function et(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"password")),c=e.length;n.push(s),m(n,r,"opsLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&f(n,"opsLimit must be an unsigned integer"),m(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(n,"memLimit must be an unsigned integer");var o=new l(0|t._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(n.push(o),!(0|t._crypto_pwhash_scryptsalsa208sha256_str(o,s,c,0,r,0,a))){var p=t.UTF8ToString(o);return g(n),p}b(n,"invalid usage")}function rt(e,r,a){var n=[];i(a),"string"!=typeof e&&f(n,"hashed_password must be a string");var s=u(e=_(e+"\0"));e.length,n.push(s);var c=u(r=x(n,r,"password")),o=r.length;n.push(c);var p=!(0|t._crypto_pwhash_scryptsalsa208sha256_str_verify(s,c,o,0));return g(n),p}function tt(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"password")),c=e.length;n.push(s),m(n,r,"opsLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&f(n,"opsLimit must be an unsigned integer"),m(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(n,"memLimit must be an unsigned integer");var o=new l(0|t._crypto_pwhash_strbytes()).address;if(n.push(o),!(0|t._crypto_pwhash_str(o,s,c,0,r,0,a))){var p=t.UTF8ToString(o);return g(n),p}b(n,"invalid usage")}function at(e,r,a,n){var s=[];i(n),"string"!=typeof e&&f(s,"hashed_password must be a string");var c=u(e=_(e+"\0"));e.length,s.push(c),m(s,r,"opsLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&f(s,"opsLimit must be an unsigned integer"),m(s,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(s,"memLimit must be an unsigned integer");var o=!!(0|t._crypto_pwhash_str_needs_rehash(c,r,0,a));return g(s),o}function _t(e,r,a){var n=[];i(a),"string"!=typeof e&&f(n,"hashed_password must be a string");var s=u(e=_(e+"\0"));e.length,n.push(s);var c=u(r=x(n,r,"password")),o=r.length;n.push(c);var p=!(0|t._crypto_pwhash_str_verify(s,c,o,0));return g(n),p}function nt(e,r,a){var _=[];i(a),e=x(_,e,"privateKey");var n,s=0|t._crypto_scalarmult_scalarbytes();e.length!==s&&f(_,"invalid privateKey length"),n=u(e),_.push(n),r=x(_,r,"publicKey");var c,o=0|t._crypto_scalarmult_bytes();r.length!==o&&f(_,"invalid publicKey length"),c=u(r),_.push(c);var p=new l(0|t._crypto_scalarmult_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_scalarmult(y,n,c))){var d=h(p,a);return g(_),d}b(_,"weak public key")}function st(e,r){var a=[];i(r),e=x(a,e,"privateKey");var _,n=0|t._crypto_scalarmult_scalarbytes();e.length!==n&&f(a,"invalid privateKey length"),_=u(e),a.push(_);var s=new l(0|t._crypto_scalarmult_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_scalarmult_base(c,_))){var o=h(s,r);return g(a),o}b(a,"unknown error")}function ct(e,r,a){var _=[];i(a),e=x(_,e,"n");var n,s=0|t._crypto_scalarmult_ed25519_scalarbytes();e.length!==s&&f(_,"invalid n length"),n=u(e),_.push(n),r=x(_,r,"p");var c,o=0|t._crypto_scalarmult_ed25519_bytes();r.length!==o&&f(_,"invalid p length"),c=u(r),_.push(c);var p=new l(0|t._crypto_scalarmult_ed25519_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_scalarmult_ed25519(y,n,c))){var d=h(p,a);return g(_),d}b(_,"invalid point or scalar is 0")}function ot(e,r){var a=[];i(r),e=x(a,e,"scalar");var _,n=0|t._crypto_scalarmult_ed25519_scalarbytes();e.length!==n&&f(a,"invalid scalar length"),_=u(e),a.push(_);var s=new l(0|t._crypto_scalarmult_ed25519_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_scalarmult_ed25519_base(c,_))){var o=h(s,r);return g(a),o}b(a,"scalar is 0")}function pt(e,r){var a=[];i(r),e=x(a,e,"scalar");var _,n=0|t._crypto_scalarmult_ed25519_scalarbytes();e.length!==n&&f(a,"invalid scalar length"),_=u(e),a.push(_);var s=new l(0|t._crypto_scalarmult_ed25519_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_scalarmult_ed25519_base_noclamp(c,_))){var o=h(s,r);return g(a),o}b(a,"scalar is 0")}function ht(e,r,a){var _=[];i(a),e=x(_,e,"n");var n,s=0|t._crypto_scalarmult_ed25519_scalarbytes();e.length!==s&&f(_,"invalid n length"),n=u(e),_.push(n),r=x(_,r,"p");var c,o=0|t._crypto_scalarmult_ed25519_bytes();r.length!==o&&f(_,"invalid p length"),c=u(r),_.push(c);var p=new l(0|t._crypto_scalarmult_ed25519_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_scalarmult_ed25519_noclamp(y,n,c))){var d=h(p,a);return g(_),d}b(_,"invalid point or scalar is 0")}function yt(e,r,a){var _=[];i(a),e=x(_,e,"scalar");var n,s=0|t._crypto_scalarmult_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid scalar length"),n=u(e),_.push(n),r=x(_,r,"element");var c,o=0|t._crypto_scalarmult_ristretto255_bytes();r.length!==o&&f(_,"invalid element length"),c=u(r),_.push(c);var p=new l(0|t._crypto_scalarmult_ristretto255_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_scalarmult_ristretto255(y,n,c))){var d=h(p,a);return g(_),d}b(_,"result is identity element")}function it(e,r){var a=[];i(r),e=x(a,e,"scalar");var _,n=0|t._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(a,"invalid scalar length"),_=u(e),a.push(_);var s=new l(0|t._crypto_core_ristretto255_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_scalarmult_ristretto255_base(c,_))){var o=h(s,r);return g(a),o}b(a,"scalar is 0")}function lt(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_secretbox_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=u(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_secretbox_keybytes();a.length!==d&&f(n,"invalid key length"),y=u(a),n.push(y);var v=new l(0|c),m=v.address;n.push(m);var E=new l(0|t._crypto_secretbox_macbytes()),k=E.address;if(n.push(k),!(0|t._crypto_secretbox_detached(m,k,s,c,0,o,y))){var S=h({mac:E,cipher:v},_);return g(n),S}b(n,"invalid usage")}function ut(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_secretbox_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=u(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_secretbox_keybytes();a.length!==d&&f(n,"invalid key length"),y=u(a),n.push(y);var v=new l(c+t._crypto_secretbox_macbytes()|0),m=v.address;if(n.push(m),!(0|t._crypto_secretbox_easy(m,s,c,0,o,y))){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function dt(e){var r=[];i(e);var a=new l(0|t._crypto_secretbox_keybytes()),_=a.address;r.push(_),t._crypto_secretbox_keygen(_);var n=h(a,e);return g(r),n}function vt(e,r,a,_,n){var s=[];i(n);var c=u(e=x(s,e,"ciphertext")),o=e.length;s.push(c),r=x(s,r,"mac");var p,y=0|t._crypto_secretbox_macbytes();r.length!==y&&f(s,"invalid mac length"),p=u(r),s.push(p),a=x(s,a,"nonce");var d,v=0|t._crypto_secretbox_noncebytes();a.length!==v&&f(s,"invalid nonce length"),d=u(a),s.push(d),_=x(s,_,"key");var m,E=0|t._crypto_secretbox_keybytes();_.length!==E&&f(s,"invalid key length"),m=u(_),s.push(m);var k=new l(0|o),S=k.address;if(s.push(S),!(0|t._crypto_secretbox_open_detached(S,c,p,o,0,d,m))){var T=h(k,n);return g(s),T}b(s,"wrong secret key for the given ciphertext")}function gt(e,r,a,_){var n=[];i(_),e=x(n,e,"ciphertext");var s,c=t._crypto_secretbox_macbytes(),o=e.length;o<c&&f(n,"ciphertext is too short"),s=u(e),n.push(s),r=x(n,r,"nonce");var p,y=0|t._crypto_secretbox_noncebytes();r.length!==y&&f(n,"invalid nonce length"),p=u(r),n.push(p),a=x(n,a,"key");var d,v=0|t._crypto_secretbox_keybytes();a.length!==v&&f(n,"invalid key length"),d=u(a),n.push(d);var m=new l(o-t._crypto_secretbox_macbytes()|0),E=m.address;if(n.push(E),!(0|t._crypto_secretbox_open_easy(E,s,o,0,p,d))){var k=h(m,_);return g(n),k}b(n,"wrong secret key for the given ciphertext")}function bt(e,r,a){var _=[];i(a),e=x(_,e,"header");var n,s=0|t._crypto_secretstream_xchacha20poly1305_headerbytes();e.length!==s&&f(_,"invalid header length"),n=u(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_secretstream_xchacha20poly1305_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(52).address;if(!(0|t._crypto_secretstream_xchacha20poly1305_init_pull(p,n,c))){var h=p;return g(_),h}b(_,"invalid usage")}function ft(e,r){var a=[];i(r),e=x(a,e,"key");var _,n=0|t._crypto_secretstream_xchacha20poly1305_keybytes();e.length!==n&&f(a,"invalid key length"),_=u(e),a.push(_);var s=new l(52).address,c=new l(0|t._crypto_secretstream_xchacha20poly1305_headerbytes()),o=c.address;if(a.push(o),!(0|t._crypto_secretstream_xchacha20poly1305_init_push(s,o,_))){var p={state:s,header:h(c,r)};return g(a),p}b(a,"invalid usage")}function mt(e){var r=[];i(e);var a=new l(0|t._crypto_secretstream_xchacha20poly1305_keybytes()),_=a.address;r.push(_),t._crypto_secretstream_xchacha20poly1305_keygen(_);var n=h(a,e);return g(r),n}function xt(e,r,a,_){var n=[];i(_),m(n,e,"state_address"),r=x(n,r,"cipher");var s,c=t._crypto_secretstream_xchacha20poly1305_abytes(),o=r.length;o<c&&f(n,"cipher is too short"),s=u(r),n.push(s);var p=null,y=0;null!=a&&(p=u(a=x(n,a,"ad")),y=a.length,n.push(p));var v=new l(o-t._crypto_secretstream_xchacha20poly1305_abytes()|0),b=v.address;n.push(b);var E,k=(E=d(1),n.push(E),(k=0===t._crypto_secretstream_xchacha20poly1305_pull(e,b,0,E,s,o,0,p,y)&&{tag:t.HEAPU8[E],message:v})&&{message:h(k.message,_),tag:k.tag});return g(n),k}function Et(e,r,a,_,n){var s=[];i(n),m(s,e,"state_address");var c=u(r=x(s,r,"message_chunk")),o=r.length;s.push(c);var p=null,y=0;null!=a&&(p=u(a=x(s,a,"ad")),y=a.length,s.push(p)),m(s,_,"tag"),("number"!=typeof _||(0|_)!==_||_<0)&&f(s,"tag must be an unsigned integer");var d=new l(o+t._crypto_secretstream_xchacha20poly1305_abytes()|0),v=d.address;if(s.push(v),!(0|t._crypto_secretstream_xchacha20poly1305_push(e,v,0,c,o,0,p,y,0,_))){var E=h(d,n);return g(s),E}b(s,"invalid usage")}function kt(e,r){var a=[];return i(r),m(a,e,"state_address"),t._crypto_secretstream_xchacha20poly1305_rekey(e),g(a),!0}function St(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_shorthash_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_shorthash_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_shorthash(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function Tt(e){var r=[];i(e);var a=new l(0|t._crypto_shorthash_keybytes()),_=a.address;r.push(_),t._crypto_shorthash_keygen(_);var n=h(a,e);return g(r),n}function wt(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_shorthash_siphashx24_keybytes();r.length!==o&&f(_,"invalid key length"),c=u(r),_.push(c);var p=new l(0|t._crypto_shorthash_siphashx24_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_shorthash_siphashx24(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function Yt(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"privateKey");var c,o=0|t._crypto_sign_secretkeybytes();r.length!==o&&f(_,"invalid privateKey length"),c=u(r),_.push(c);var p=new l(e.length+t._crypto_sign_bytes()|0),y=p.address;if(_.push(y),!(0|t._crypto_sign(y,null,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function Bt(e,r,a){var _=[];i(a);var n=u(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"privateKey");var c,o=0|t._crypto_sign_secretkeybytes();r.length!==o&&f(_,"invalid privateKey length"),c=u(r),_.push(c);var p=new l(0|t._crypto_sign_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_sign_detached(y,null,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function At(e,r){var a=[];i(r),e=x(a,e,"edPk");var _,n=0|t._crypto_sign_publickeybytes();e.length!==n&&f(a,"invalid edPk length"),_=u(e),a.push(_);var s=new l(0|t._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),!(0|t._crypto_sign_ed25519_pk_to_curve25519(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid key")}function Mt(e,r){var a=[];i(r),e=x(a,e,"edSk");var _,n=0|t._crypto_sign_secretkeybytes();e.length!==n&&f(a,"invalid edSk length"),_=u(e),a.push(_);var s=new l(0|t._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),!(0|t._crypto_sign_ed25519_sk_to_curve25519(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid key")}function It(e,r){var a=[];i(r),e=x(a,e,"privateKey");var _,n=0|t._crypto_sign_secretkeybytes();e.length!==n&&f(a,"invalid privateKey length"),_=u(e),a.push(_);var s=new l(0|t._crypto_sign_publickeybytes()),c=s.address;if(a.push(c),!(0|t._crypto_sign_ed25519_sk_to_pk(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid key")}function Kt(e,r){var a=[];i(r),e=x(a,e,"privateKey");var _,n=0|t._crypto_sign_secretkeybytes();e.length!==n&&f(a,"invalid privateKey length"),_=u(e),a.push(_);var s=new l(0|t._crypto_sign_seedbytes()),c=s.address;if(a.push(c),!(0|t._crypto_sign_ed25519_sk_to_seed(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid key")}function Nt(e,r,a){var _=[];i(a),m(_,e,"state_address"),r=x(_,r,"privateKey");var n,s=0|t._crypto_sign_secretkeybytes();r.length!==s&&f(_,"invalid privateKey length"),n=u(r),_.push(n);var c=new l(0|t._crypto_sign_bytes()),o=c.address;if(_.push(o),!(0|t._crypto_sign_final_create(e,o,null,n))){var p=(t._free(e),h(c,a));return g(_),p}b(_,"invalid usage")}function Lt(e,r,a,_){var n=[];i(_),m(n,e,"state_address"),r=x(n,r,"signature");var s,c=0|t._crypto_sign_bytes();r.length!==c&&f(n,"invalid signature length"),s=u(r),n.push(s),a=x(n,a,"publicKey");var o,p=0|t._crypto_sign_publickeybytes();a.length!==p&&f(n,"invalid publicKey length"),o=u(a),n.push(o);var h=!(0|t._crypto_sign_final_verify(e,s,o));return g(n),h}function Ot(e){var r=[];i(e);var a=new l(208).address;if(!(0|t._crypto_sign_init(a))){var _=a;return g(r),_}b(r,"internal error")}function Ut(e){var r=[];i(e);var a=new l(0|t._crypto_sign_publickeybytes()),_=a.address;r.push(_);var n=new l(0|t._crypto_sign_secretkeybytes()),s=n.address;if(r.push(s),!(0|t._crypto_sign_keypair(_,s))){var c={publicKey:h(a,e),privateKey:h(n,e),keyType:"ed25519"};return g(r),c}b(r,"internal error")}function Pt(e,r,a){var _=[];i(a),e=x(_,e,"signedMessage");var n,s=t._crypto_sign_bytes(),c=e.length;c<s&&f(_,"signedMessage is too short"),n=u(e),_.push(n),r=x(_,r,"publicKey");var o,p=0|t._crypto_sign_publickeybytes();r.length!==p&&f(_,"invalid publicKey length"),o=u(r),_.push(o);var y=new l(c-t._crypto_sign_bytes()|0),d=y.address;if(_.push(d),!(0|t._crypto_sign_open(d,null,n,c,0,o))){var v=h(y,a);return g(_),v}b(_,"incorrect signature for the given public key")}function Ct(e,r){var a=[];i(r),e=x(a,e,"seed");var _,n=0|t._crypto_sign_seedbytes();e.length!==n&&f(a,"invalid seed length"),_=u(e),a.push(_);var s=new l(0|t._crypto_sign_publickeybytes()),c=s.address;a.push(c);var o=new l(0|t._crypto_sign_secretkeybytes()),p=o.address;if(a.push(p),!(0|t._crypto_sign_seed_keypair(c,p,_))){var y={publicKey:h(s,r),privateKey:h(o,r),keyType:"ed25519"};return g(a),y}b(a,"invalid usage")}function Rt(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_sign_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function Xt(e,r,a){var _=[];e=x(_,e,"signature");var n,s=0|t._crypto_sign_bytes();e.length!==s&&f(_,"invalid signature length"),n=u(e),_.push(n);var c=u(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"publicKey");var p,h=0|t._crypto_sign_publickeybytes();a.length!==h&&f(_,"invalid publicKey length"),p=u(a),_.push(p);var y=!(0|t._crypto_sign_verify_detached(n,c,o,0,p));return g(_),y}function Dt(e,r,a,_){var n=[];i(_),m(n,e,"outLength"),("number"!=typeof e||(0|e)!==e||e<0)&&f(n,"outLength must be an unsigned integer"),r=x(n,r,"key");var s,c=0|t._crypto_stream_chacha20_keybytes();r.length!==c&&f(n,"invalid key length"),s=u(r),n.push(s),a=x(n,a,"nonce");var o,p=0|t._crypto_stream_chacha20_noncebytes();a.length!==p&&f(n,"invalid nonce length"),o=u(a),n.push(o);var y=new l(0|e),d=y.address;n.push(d),t._crypto_stream_chacha20(d,e,0,o,s);var v=h(y,_);return g(n),v}function Gt(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"input_message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_stream_chacha20_ietf_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=u(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_stream_chacha20_ietf_keybytes();a.length!==d&&f(n,"invalid key length"),y=u(a),n.push(y);var v=new l(0|c),m=v.address;if(n.push(m),0===t._crypto_stream_chacha20_ietf_xor(m,s,c,0,o,y)){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function Ft(e,r,a,_,n){var s=[];i(n);var c=u(e=x(s,e,"input_message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_stream_chacha20_ietf_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=u(r),s.push(p),m(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&f(s,"nonce_increment must be an unsigned integer"),_=x(s,_,"key");var d,v=0|t._crypto_stream_chacha20_ietf_keybytes();_.length!==v&&f(s,"invalid key length"),d=u(_),s.push(d);var E=new l(0|o),k=E.address;if(s.push(k),0===t._crypto_stream_chacha20_ietf_xor_ic(k,c,o,0,p,a,d)){var S=h(E,n);return g(s),S}b(s,"invalid usage")}function Vt(e){var r=[];i(e);var a=new l(0|t._crypto_stream_chacha20_keybytes()),_=a.address;r.push(_),t._crypto_stream_chacha20_keygen(_);var n=h(a,e);return g(r),n}function qt(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"input_message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_stream_chacha20_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=u(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_stream_chacha20_keybytes();a.length!==d&&f(n,"invalid key length"),y=u(a),n.push(y);var v=new l(0|c),m=v.address;if(n.push(m),0===t._crypto_stream_chacha20_xor(m,s,c,0,o,y)){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function zt(e,r,a,_,n){var s=[];i(n);var c=u(e=x(s,e,"input_message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_stream_chacha20_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=u(r),s.push(p),m(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&f(s,"nonce_increment must be an unsigned integer"),_=x(s,_,"key");var d,v=0|t._crypto_stream_chacha20_keybytes();_.length!==v&&f(s,"invalid key length"),d=u(_),s.push(d);var E=new l(0|o),k=E.address;if(s.push(k),0===t._crypto_stream_chacha20_xor_ic(k,c,o,0,p,a,0,d)){var S=h(E,n);return g(s),S}b(s,"invalid usage")}function Wt(e){var r=[];i(e);var a=new l(0|t._crypto_stream_keybytes()),_=a.address;r.push(_),t._crypto_stream_keygen(_);var n=h(a,e);return g(r),n}function Ht(e){var r=[];i(e);var a=new l(0|t._crypto_stream_xchacha20_keybytes()),_=a.address;r.push(_),t._crypto_stream_xchacha20_keygen(_);var n=h(a,e);return g(r),n}function jt(e,r,a,_){var n=[];i(_);var s=u(e=x(n,e,"input_message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_stream_xchacha20_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=u(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_stream_xchacha20_keybytes();a.length!==d&&f(n,"invalid key length"),y=u(a),n.push(y);var v=new l(0|c),m=v.address;if(n.push(m),0===t._crypto_stream_xchacha20_xor(m,s,c,0,o,y)){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function Jt(e,r,a,_,n){var s=[];i(n);var c=u(e=x(s,e,"input_message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_stream_xchacha20_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=u(r),s.push(p),m(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&f(s,"nonce_increment must be an unsigned integer"),_=x(s,_,"key");var d,v=0|t._crypto_stream_xchacha20_keybytes();_.length!==v&&f(s,"invalid key length"),d=u(_),s.push(d);var E=new l(0|o),k=E.address;if(s.push(k),0===t._crypto_stream_xchacha20_xor_ic(k,c,o,0,p,a,0,d)){var S=h(E,n);return g(s),S}b(s,"invalid usage")}function Qt(e,r,a){var _=[];i(a),m(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"out_length must be an unsigned integer");var n=u(r=x(_,r,"message")),s=r.length;_.push(n);var c=new l(e|=0),o=c.address;if(_.push(o),!(0|t._crypto_xof_shake128(o,e,n,s,0))){var p=h(c,a);return g(_),p}b(_,"invalid usage")}function Zt(e){var r=[];i(e);var a=new l(256).address;if(!(0|t._crypto_xof_shake128_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function $t(e,r){var a=[];i(r),m(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"domain must be an unsigned integer");var _=new l(256).address;if(!(0|t._crypto_xof_shake128_init_with_domain(_,e))){var n=_;return g(a),n}b(a,"invalid usage")}function ea(e,r,a){var _=[];i(a),m(_,e,"state_address"),m(_,r,"out_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"out_length must be an unsigned integer");var n=new l(r|=0),s=n.address;if(_.push(s),!(0|t._crypto_xof_shake128_squeeze(e,s,r))){var c=h(n,a);return g(_),c}b(_,"invalid usage")}function ra(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_xof_shake128_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function ta(e,r,a){var _=[];i(a),m(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"out_length must be an unsigned integer");var n=u(r=x(_,r,"message")),s=r.length;_.push(n);var c=new l(e|=0),o=c.address;if(_.push(o),!(0|t._crypto_xof_shake256(o,e,n,s,0))){var p=h(c,a);return g(_),p}b(_,"invalid usage")}function aa(e){var r=[];i(e);var a=new l(256).address;if(!(0|t._crypto_xof_shake256_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function _a(e,r){var a=[];i(r),m(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"domain must be an unsigned integer");var _=new l(256).address;if(!(0|t._crypto_xof_shake256_init_with_domain(_,e))){var n=_;return g(a),n}b(a,"invalid usage")}function na(e,r,a){var _=[];i(a),m(_,e,"state_address"),m(_,r,"out_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"out_length must be an unsigned integer");var n=new l(r|=0),s=n.address;if(_.push(s),!(0|t._crypto_xof_shake256_squeeze(e,s,r))){var c=h(n,a);return g(_),c}b(_,"invalid usage")}function sa(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_xof_shake256_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function ca(e,r,a){var _=[];i(a),m(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"out_length must be an unsigned integer");var n=u(r=x(_,r,"message")),s=r.length;_.push(n);var c=new l(e|=0),o=c.address;if(_.push(o),!(0|t._crypto_xof_turboshake128(o,e,n,s,0))){var p=h(c,a);return g(_),p}b(_,"invalid usage")}function oa(e){var r=[];i(e);var a=new l(256).address;if(!(0|t._crypto_xof_turboshake128_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function pa(e,r){var a=[];i(r),m(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"domain must be an unsigned integer");var _=new l(256).address;if(!(0|t._crypto_xof_turboshake128_init_with_domain(_,e))){var n=_;return g(a),n}b(a,"invalid usage")}function ha(e,r,a){var _=[];i(a),m(_,e,"state_address"),m(_,r,"out_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"out_length must be an unsigned integer");var n=new l(r|=0),s=n.address;if(_.push(s),!(0|t._crypto_xof_turboshake128_squeeze(e,s,r))){var c=h(n,a);return g(_),c}b(_,"invalid usage")}function ya(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_xof_turboshake128_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function ia(e,r,a){var _=[];i(a),m(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"out_length must be an unsigned integer");var n=u(r=x(_,r,"message")),s=r.length;_.push(n);var c=new l(e|=0),o=c.address;if(_.push(o),!(0|t._crypto_xof_turboshake256(o,e,n,s,0))){var p=h(c,a);return g(_),p}b(_,"invalid usage")}function la(e){var r=[];i(e);var a=new l(256).address;if(!(0|t._crypto_xof_turboshake256_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function ua(e,r){var a=[];i(r),m(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"domain must be an unsigned integer");var _=new l(256).address;if(!(0|t._crypto_xof_turboshake256_init_with_domain(_,e))){var n=_;return g(a),n}b(a,"invalid usage")}function da(e,r,a){var _=[];i(a),m(_,e,"state_address"),m(_,r,"out_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"out_length must be an unsigned integer");var n=new l(r|=0),s=n.address;if(_.push(s),!(0|t._crypto_xof_turboshake256_squeeze(e,s,r))){var c=h(n,a);return g(_),c}b(_,"invalid usage")}function va(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=u(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_xof_turboshake256_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function ga(e,r){var a=[];i(r),m(a,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"length must be an unsigned integer");var _=new l(0|e),n=_.address;a.push(n),t._randombytes_buf(n,e);var s=h(_,r);return g(a),s}function ba(e,r,a){var _=[];i(a),m(_,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"length must be an unsigned integer"),r=x(_,r,"seed");var n,s=0|t._randombytes_seedbytes();r.length!==s&&f(_,"invalid seed length"),n=u(r),_.push(n);var c=new l(0|e),o=c.address;_.push(o),t._randombytes_buf_deterministic(o,e,n);var p=h(c,a);return g(_),p}function fa(e){i(e),t._randombytes_close()}function ma(e){i(e);var r=t._randombytes_random()>>>0;return g([]),r}function xa(e,r){var a=[];i(r);for(var _=t._malloc(24),n=0;n<6;n++)t.setValue(_+4*n,t.Runtime.addFunction(e[["implementation_name","random","stir","uniform","buf","close"][n]]),"i32");0|t._randombytes_set_implementation(_)&&b(a,"unsupported implementation"),g(a)}function Ea(e){i(e),t._randombytes_stir()}function ka(e,r){var a=[];i(r),m(a,e,"upper_bound"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"upper_bound must be an unsigned integer");var _=t._randombytes_uniform(e)>>>0;return g(a),_}function Sa(e){var r,a=[];16!==(e=x(a,e,"bin")).length&&f(a,"invalid bin length"),r=u(e),a.push(r);var _=new l(46).address;if(a.push(_),0!==t._sodium_bin2ip(_,46,r)){var n=t.UTF8ToString(_);return g(a),n}b(a,"conversion failed")}function Ta(e,r){var a=[];i(r),"string"!=typeof e&&f(a,"ip must be a string");var n=u(e=_(e+"\0")),s=e.length-1;a.push(n);var c=new l(16),o=c.address;if(a.push(o),!(0|t._sodium_ip2bin(o,n,s))){var p=h(c,r);return g(a),p}b(a,"invalid IP address")}function wa(){var e=t._sodium_version_string(),r=t.UTF8ToString(e);return g([]),r}return l.prototype.to_Uint8Array=function(){var e=new Uint8Array(this.length);return e.set(t.HEAPU8.subarray(this.address,this.address+this.length)),e},e.add=function(e,r){if(!(e instanceof Uint8Array&&r instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be added");var t=e.length,a=0,_=0;if(r.length!==e.length)throw new TypeError("Arguments must have the same length");for(_=0;_<t;_++)a>>=8,a+=e[_]+r[_],e[_]=255&a},e.base64_variants=c,e.compare=function(e,r){if(!(e instanceof Uint8Array&&r instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==r.length)throw new TypeError("Only instances of identical length can be compared");for(var t=0,a=1,_=e.length;_-- >0;)t|=r[_]-e[_]>>8&a,a&=(r[_]^e[_])-1>>8;return t+t+a-1},e.from_base64=function(e,r){r=o(r);var a,_=[],n=new l(3*(e=x(_,e,"input")).length/4),s=u(e),c=d(4),p=d(4);return _.push(s),_.push(n.address),_.push(c),_.push(p),0!==t._sodium_base642bin(n.address,n.length,s,e.length,0,c,p,r)&&b(_,"invalid input"),t.getValue(p,"i32")-s!==e.length&&b(_,"incomplete input"),n.length=t.getValue(c,"i32"),a=n.to_Uint8Array(),g(_),a},e.from_hex=function(e){var r,a=[],_=new l((e=x(a,e,"input")).length/2),n=u(e),s=d(4);return a.push(n),a.push(_.address),a.push(s),0!==t._sodium_hex2bin(_.address,_.length,n,e.length,0,0,s)&&b(a,"invalid input"),t.getValue(s,"i32")-n!==e.length&&b(a,"incomplete input"),r=_.to_Uint8Array(),g(a),r},e.from_string=_,e.increment=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be incremented");for(var r=256,t=0,a=e.length;t<a;t++)r>>=8,r+=e[t],e[t]=255&r},e.is_zero=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be checked");for(var r=0,t=0,a=e.length;t<a;t++)r|=e[t];return 0===r},e.libsodium=r,e.memcmp=function(e,r){if(!(e instanceof Uint8Array&&r instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==r.length)throw new TypeError("Only instances of identical length can be compared");for(var t=0,a=0,_=e.length;a<_;a++)t|=e[a]^r[a];return 0===t},e.memzero=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be wiped");for(var r=0,t=e.length;r<t;r++)e[r]=0},e.output_formats=function(){return["uint8array","text","hex","base64"]},e.pad=function(e,r){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((r|=0)<=0)throw new Error("block size must be > 0");var a,_=[],n=d(4),s=1,c=0,o=0|e.length,p=new l(o+r);_.push(n),_.push(p.address);for(var h=p.address,y=p.address+o+r;h<y;h++)t.HEAPU8[h]=e[c],c+=s=1&~((65535&((o-=s)>>>48|o>>>32|o>>>16|o))-1>>16);return 0!==t._sodium_pad(n,p.address,e.length,r,p.length)&&b(_,"internal error"),p.length=t.getValue(n,"i32"),a=p.to_Uint8Array(),g(_),a},e.unpad=function(e,r){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((r|=0)<=0)throw new Error("block size must be > 0");var a=[],_=u(e),n=d(4);return a.push(_),a.push(n),0!==t._sodium_unpad(n,_,e.length,r)&&b(a,"unsupported/invalid padding"),e=(e=new Uint8Array(e)).subarray(0,t.getValue(n,"i32")),g(a),e},e.ready=a,e.symbols=function(){return Object.keys(e).sort()},e.to_base64=p,e.to_hex=s,e.to_string=n,e}var t="object"==typeof e.sodium&&"function"==typeof e.sodium.onload?e.sodium.onload:null;"function"==typeof define&&define.amd?define(["exports","libsodium-sumo"],r):"object"==typeof exports&&"string"!=typeof exports.nodeName?r(exports,require("libsodium-sumo")):e.sodium=r(e.commonJsStrict={},e.libsodium),t&&e.sodium.ready.then(function(){t(e.sodium)})}(this);
@@ -0,0 +1 @@
1
+ import e from"libsodium-sumo";let r;const t={},a=e.ready.then(function(){function a(){if(r._sodium_init()<0)throw new Error("libsodium was not correctly initialized.");for(var e=["crypto_aead_aegis128l_decrypt","crypto_aead_aegis128l_decrypt_detached","crypto_aead_aegis128l_encrypt","crypto_aead_aegis128l_encrypt_detached","crypto_aead_aegis128l_keygen","crypto_aead_aegis256_decrypt","crypto_aead_aegis256_decrypt_detached","crypto_aead_aegis256_encrypt","crypto_aead_aegis256_encrypt_detached","crypto_aead_aegis256_keygen","crypto_aead_chacha20poly1305_decrypt","crypto_aead_chacha20poly1305_decrypt_detached","crypto_aead_chacha20poly1305_encrypt","crypto_aead_chacha20poly1305_encrypt_detached","crypto_aead_chacha20poly1305_ietf_decrypt","crypto_aead_chacha20poly1305_ietf_decrypt_detached","crypto_aead_chacha20poly1305_ietf_encrypt","crypto_aead_chacha20poly1305_ietf_encrypt_detached","crypto_aead_chacha20poly1305_ietf_keygen","crypto_aead_chacha20poly1305_keygen","crypto_aead_xchacha20poly1305_ietf_decrypt","crypto_aead_xchacha20poly1305_ietf_decrypt_detached","crypto_aead_xchacha20poly1305_ietf_encrypt","crypto_aead_xchacha20poly1305_ietf_encrypt_detached","crypto_aead_xchacha20poly1305_ietf_keygen","crypto_auth","crypto_auth_hmacsha256","crypto_auth_hmacsha256_final","crypto_auth_hmacsha256_init","crypto_auth_hmacsha256_keygen","crypto_auth_hmacsha256_update","crypto_auth_hmacsha256_verify","crypto_auth_hmacsha512","crypto_auth_hmacsha512256","crypto_auth_hmacsha512256_final","crypto_auth_hmacsha512256_init","crypto_auth_hmacsha512256_keygen","crypto_auth_hmacsha512256_update","crypto_auth_hmacsha512256_verify","crypto_auth_hmacsha512_final","crypto_auth_hmacsha512_init","crypto_auth_hmacsha512_keygen","crypto_auth_hmacsha512_update","crypto_auth_hmacsha512_verify","crypto_auth_keygen","crypto_auth_verify","crypto_box_beforenm","crypto_box_curve25519xchacha20poly1305_beforenm","crypto_box_curve25519xchacha20poly1305_detached","crypto_box_curve25519xchacha20poly1305_detached_afternm","crypto_box_curve25519xchacha20poly1305_easy","crypto_box_curve25519xchacha20poly1305_easy_afternm","crypto_box_curve25519xchacha20poly1305_keypair","crypto_box_curve25519xchacha20poly1305_open_detached","crypto_box_curve25519xchacha20poly1305_open_detached_afternm","crypto_box_curve25519xchacha20poly1305_open_easy","crypto_box_curve25519xchacha20poly1305_open_easy_afternm","crypto_box_curve25519xchacha20poly1305_seal","crypto_box_curve25519xchacha20poly1305_seal_open","crypto_box_curve25519xchacha20poly1305_seed_keypair","crypto_box_detached","crypto_box_easy","crypto_box_easy_afternm","crypto_box_keypair","crypto_box_open_detached","crypto_box_open_easy","crypto_box_open_easy_afternm","crypto_box_seal","crypto_box_seal_open","crypto_box_seed_keypair","crypto_core_ed25519_add","crypto_core_ed25519_from_hash","crypto_core_ed25519_from_uniform","crypto_core_ed25519_is_valid_point","crypto_core_ed25519_random","crypto_core_ed25519_scalar_add","crypto_core_ed25519_scalar_complement","crypto_core_ed25519_scalar_invert","crypto_core_ed25519_scalar_mul","crypto_core_ed25519_scalar_negate","crypto_core_ed25519_scalar_random","crypto_core_ed25519_scalar_reduce","crypto_core_ed25519_scalar_sub","crypto_core_ed25519_sub","crypto_core_hchacha20","crypto_core_hsalsa20","crypto_core_ristretto255_add","crypto_core_ristretto255_from_hash","crypto_core_ristretto255_is_valid_point","crypto_core_ristretto255_random","crypto_core_ristretto255_scalar_add","crypto_core_ristretto255_scalar_complement","crypto_core_ristretto255_scalar_invert","crypto_core_ristretto255_scalar_mul","crypto_core_ristretto255_scalar_negate","crypto_core_ristretto255_scalar_random","crypto_core_ristretto255_scalar_reduce","crypto_core_ristretto255_scalar_sub","crypto_core_ristretto255_sub","crypto_generichash","crypto_generichash_blake2b_salt_personal","crypto_generichash_final","crypto_generichash_init","crypto_generichash_keygen","crypto_generichash_update","crypto_hash","crypto_hash_sha256","crypto_hash_sha256_final","crypto_hash_sha256_init","crypto_hash_sha256_update","crypto_hash_sha512","crypto_hash_sha512_final","crypto_hash_sha512_init","crypto_hash_sha512_update","crypto_ipcrypt_decrypt","crypto_ipcrypt_encrypt","crypto_ipcrypt_keygen","crypto_ipcrypt_nd_decrypt","crypto_ipcrypt_nd_encrypt","crypto_ipcrypt_ndx_decrypt","crypto_ipcrypt_ndx_encrypt","crypto_ipcrypt_ndx_keygen","crypto_ipcrypt_pfx_decrypt","crypto_ipcrypt_pfx_encrypt","crypto_ipcrypt_pfx_keygen","crypto_kdf_derive_from_key","crypto_kdf_keygen","crypto_kx_client_session_keys","crypto_kx_keypair","crypto_kx_seed_keypair","crypto_kx_server_session_keys","crypto_onetimeauth","crypto_onetimeauth_final","crypto_onetimeauth_init","crypto_onetimeauth_keygen","crypto_onetimeauth_update","crypto_onetimeauth_verify","crypto_pwhash","crypto_pwhash_scryptsalsa208sha256","crypto_pwhash_scryptsalsa208sha256_ll","crypto_pwhash_scryptsalsa208sha256_str","crypto_pwhash_scryptsalsa208sha256_str_verify","crypto_pwhash_str","crypto_pwhash_str_needs_rehash","crypto_pwhash_str_verify","crypto_scalarmult","crypto_scalarmult_base","crypto_scalarmult_ed25519","crypto_scalarmult_ed25519_base","crypto_scalarmult_ed25519_base_noclamp","crypto_scalarmult_ed25519_noclamp","crypto_scalarmult_ristretto255","crypto_scalarmult_ristretto255_base","crypto_secretbox_detached","crypto_secretbox_easy","crypto_secretbox_keygen","crypto_secretbox_open_detached","crypto_secretbox_open_easy","crypto_secretstream_xchacha20poly1305_init_pull","crypto_secretstream_xchacha20poly1305_init_push","crypto_secretstream_xchacha20poly1305_keygen","crypto_secretstream_xchacha20poly1305_pull","crypto_secretstream_xchacha20poly1305_push","crypto_secretstream_xchacha20poly1305_rekey","crypto_shorthash","crypto_shorthash_keygen","crypto_shorthash_siphashx24","crypto_sign","crypto_sign_detached","crypto_sign_ed25519_pk_to_curve25519","crypto_sign_ed25519_sk_to_curve25519","crypto_sign_ed25519_sk_to_pk","crypto_sign_ed25519_sk_to_seed","crypto_sign_final_create","crypto_sign_final_verify","crypto_sign_init","crypto_sign_keypair","crypto_sign_open","crypto_sign_seed_keypair","crypto_sign_update","crypto_sign_verify_detached","crypto_stream_chacha20","crypto_stream_chacha20_ietf_xor","crypto_stream_chacha20_ietf_xor_ic","crypto_stream_chacha20_keygen","crypto_stream_chacha20_xor","crypto_stream_chacha20_xor_ic","crypto_stream_keygen","crypto_stream_xchacha20_keygen","crypto_stream_xchacha20_xor","crypto_stream_xchacha20_xor_ic","crypto_xof_shake128","crypto_xof_shake128_init","crypto_xof_shake128_init_with_domain","crypto_xof_shake128_squeeze","crypto_xof_shake128_update","crypto_xof_shake256","crypto_xof_shake256_init","crypto_xof_shake256_init_with_domain","crypto_xof_shake256_squeeze","crypto_xof_shake256_update","crypto_xof_turboshake128","crypto_xof_turboshake128_init","crypto_xof_turboshake128_init_with_domain","crypto_xof_turboshake128_squeeze","crypto_xof_turboshake128_update","crypto_xof_turboshake256","crypto_xof_turboshake256_init","crypto_xof_turboshake256_init_with_domain","crypto_xof_turboshake256_squeeze","crypto_xof_turboshake256_update","randombytes_buf","randombytes_buf_deterministic","randombytes_close","randombytes_random","randombytes_set_implementation","randombytes_stir","randombytes_uniform","sodium_bin2ip","sodium_ip2bin","sodium_version_string"],a=[L,O,U,P,C,R,X,D,G,F,V,q,z,W,H,j,J,Q,Z,$,ee,re,te,ae,_e,ne,se,ce,oe,pe,he,ye,ie,le,ue,de,ve,ge,be,fe,me,xe,Ee,ke,Se,Te,we,Ye,Be,Ae,Me,Ie,Ke,Ne,Le,Oe,Ue,Pe,Ce,Re,Xe,De,Ge,Fe,Ve,qe,ze,We,He,je,Je,Qe,Ze,$e,er,rr,tr,ar,_r,nr,sr,cr,or,pr,hr,yr,ir,lr,ur,dr,vr,gr,br,fr,mr,xr,Er,kr,Sr,Tr,wr,Yr,Br,Ar,Mr,Ir,Kr,Nr,Lr,Or,Ur,Pr,Cr,Rr,Xr,Dr,Gr,Fr,Vr,qr,zr,Wr,Hr,jr,Jr,Qr,Zr,$r,et,rt,tt,at,_t,nt,st,ct,ot,pt,ht,yt,it,lt,ut,dt,vt,gt,bt,ft,mt,xt,Et,kt,St,Tt,wt,Yt,Bt,At,Mt,It,Kt,Nt,Lt,Ot,Ut,Pt,Ct,Rt,Xt,Dt,Gt,Ft,Vt,qt,zt,Wt,Ht,jt,Jt,Qt,Zt,$t,ea,ra,ta,aa,_a,na,sa,ca,oa,pa,ha,ya,ia,la,ua,da,va,ga,ba,fa,ma,xa,Ea,ka,Sa,Ta,wa,Ya,Ba,Aa,Ma,Ia,Ka,Na,La,Oa,Ua,Pa,Ca],_=0;_<a.length;_++)"function"==typeof r["_"+e[_]]&&(t[e[_]]=a[_]);var n=["SODIUM_LIBRARY_VERSION_MAJOR","SODIUM_LIBRARY_VERSION_MINOR","crypto_aead_aegis128l_ABYTES","crypto_aead_aegis128l_KEYBYTES","crypto_aead_aegis128l_MESSAGEBYTES_MAX","crypto_aead_aegis128l_NPUBBYTES","crypto_aead_aegis128l_NSECBYTES","crypto_aead_aegis256_ABYTES","crypto_aead_aegis256_KEYBYTES","crypto_aead_aegis256_MESSAGEBYTES_MAX","crypto_aead_aegis256_NPUBBYTES","crypto_aead_aegis256_NSECBYTES","crypto_aead_aes256gcm_ABYTES","crypto_aead_aes256gcm_KEYBYTES","crypto_aead_aes256gcm_MESSAGEBYTES_MAX","crypto_aead_aes256gcm_NPUBBYTES","crypto_aead_aes256gcm_NSECBYTES","crypto_aead_chacha20poly1305_ABYTES","crypto_aead_chacha20poly1305_IETF_ABYTES","crypto_aead_chacha20poly1305_IETF_KEYBYTES","crypto_aead_chacha20poly1305_IETF_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_IETF_NPUBBYTES","crypto_aead_chacha20poly1305_IETF_NSECBYTES","crypto_aead_chacha20poly1305_KEYBYTES","crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_NPUBBYTES","crypto_aead_chacha20poly1305_NSECBYTES","crypto_aead_chacha20poly1305_ietf_ABYTES","crypto_aead_chacha20poly1305_ietf_KEYBYTES","crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_ietf_NPUBBYTES","crypto_aead_chacha20poly1305_ietf_NSECBYTES","crypto_aead_xchacha20poly1305_IETF_ABYTES","crypto_aead_xchacha20poly1305_IETF_KEYBYTES","crypto_aead_xchacha20poly1305_IETF_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_IETF_NPUBBYTES","crypto_aead_xchacha20poly1305_IETF_NSECBYTES","crypto_aead_xchacha20poly1305_ietf_ABYTES","crypto_aead_xchacha20poly1305_ietf_KEYBYTES","crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_ietf_NPUBBYTES","crypto_aead_xchacha20poly1305_ietf_NSECBYTES","crypto_auth_BYTES","crypto_auth_KEYBYTES","crypto_auth_hmacsha256_BYTES","crypto_auth_hmacsha256_KEYBYTES","crypto_auth_hmacsha512256_BYTES","crypto_auth_hmacsha512256_KEYBYTES","crypto_auth_hmacsha512_BYTES","crypto_auth_hmacsha512_KEYBYTES","crypto_box_BEFORENMBYTES","crypto_box_MACBYTES","crypto_box_MESSAGEBYTES_MAX","crypto_box_NONCEBYTES","crypto_box_PUBLICKEYBYTES","crypto_box_SEALBYTES","crypto_box_SECRETKEYBYTES","crypto_box_SEEDBYTES","crypto_box_curve25519xchacha20poly1305_BEFORENMBYTES","crypto_box_curve25519xchacha20poly1305_MACBYTES","crypto_box_curve25519xchacha20poly1305_MESSAGEBYTES_MAX","crypto_box_curve25519xchacha20poly1305_NONCEBYTES","crypto_box_curve25519xchacha20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xchacha20poly1305_SEALBYTES","crypto_box_curve25519xchacha20poly1305_SECRETKEYBYTES","crypto_box_curve25519xchacha20poly1305_SEEDBYTES","crypto_box_curve25519xsalsa20poly1305_BEFORENMBYTES","crypto_box_curve25519xsalsa20poly1305_MACBYTES","crypto_box_curve25519xsalsa20poly1305_MESSAGEBYTES_MAX","crypto_box_curve25519xsalsa20poly1305_NONCEBYTES","crypto_box_curve25519xsalsa20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xsalsa20poly1305_SECRETKEYBYTES","crypto_box_curve25519xsalsa20poly1305_SEEDBYTES","crypto_core_ed25519_BYTES","crypto_core_ed25519_HASHBYTES","crypto_core_ed25519_NONREDUCEDSCALARBYTES","crypto_core_ed25519_SCALARBYTES","crypto_core_ed25519_UNIFORMBYTES","crypto_core_hchacha20_CONSTBYTES","crypto_core_hchacha20_INPUTBYTES","crypto_core_hchacha20_KEYBYTES","crypto_core_hchacha20_OUTPUTBYTES","crypto_core_hsalsa20_CONSTBYTES","crypto_core_hsalsa20_INPUTBYTES","crypto_core_hsalsa20_KEYBYTES","crypto_core_hsalsa20_OUTPUTBYTES","crypto_core_ristretto255_BYTES","crypto_core_ristretto255_HASHBYTES","crypto_core_ristretto255_NONREDUCEDSCALARBYTES","crypto_core_ristretto255_SCALARBYTES","crypto_core_salsa2012_CONSTBYTES","crypto_core_salsa2012_INPUTBYTES","crypto_core_salsa2012_KEYBYTES","crypto_core_salsa2012_OUTPUTBYTES","crypto_core_salsa208_CONSTBYTES","crypto_core_salsa208_INPUTBYTES","crypto_core_salsa208_KEYBYTES","crypto_core_salsa208_OUTPUTBYTES","crypto_core_salsa20_CONSTBYTES","crypto_core_salsa20_INPUTBYTES","crypto_core_salsa20_KEYBYTES","crypto_core_salsa20_OUTPUTBYTES","crypto_generichash_BYTES","crypto_generichash_BYTES_MAX","crypto_generichash_BYTES_MIN","crypto_generichash_KEYBYTES","crypto_generichash_KEYBYTES_MAX","crypto_generichash_KEYBYTES_MIN","crypto_generichash_blake2b_BYTES","crypto_generichash_blake2b_BYTES_MAX","crypto_generichash_blake2b_BYTES_MIN","crypto_generichash_blake2b_KEYBYTES","crypto_generichash_blake2b_KEYBYTES_MAX","crypto_generichash_blake2b_KEYBYTES_MIN","crypto_generichash_blake2b_PERSONALBYTES","crypto_generichash_blake2b_SALTBYTES","crypto_hash_BYTES","crypto_hash_sha256_BYTES","crypto_hash_sha512_BYTES","crypto_ipcrypt_BYTES","crypto_ipcrypt_KEYBYTES","crypto_ipcrypt_NDX_INPUTBYTES","crypto_ipcrypt_NDX_KEYBYTES","crypto_ipcrypt_NDX_OUTPUTBYTES","crypto_ipcrypt_NDX_TWEAKBYTES","crypto_ipcrypt_ND_INPUTBYTES","crypto_ipcrypt_ND_KEYBYTES","crypto_ipcrypt_ND_OUTPUTBYTES","crypto_ipcrypt_ND_TWEAKBYTES","crypto_ipcrypt_PFX_BYTES","crypto_ipcrypt_PFX_KEYBYTES","crypto_kdf_BYTES_MAX","crypto_kdf_BYTES_MIN","crypto_kdf_CONTEXTBYTES","crypto_kdf_KEYBYTES","crypto_kdf_blake2b_BYTES_MAX","crypto_kdf_blake2b_BYTES_MIN","crypto_kdf_blake2b_CONTEXTBYTES","crypto_kdf_blake2b_KEYBYTES","crypto_kdf_hkdf_sha256_BYTES_MAX","crypto_kdf_hkdf_sha256_BYTES_MIN","crypto_kdf_hkdf_sha256_KEYBYTES","crypto_kdf_hkdf_sha512_BYTES_MAX","crypto_kdf_hkdf_sha512_BYTES_MIN","crypto_kdf_hkdf_sha512_KEYBYTES","crypto_kx_PUBLICKEYBYTES","crypto_kx_SECRETKEYBYTES","crypto_kx_SEEDBYTES","crypto_kx_SESSIONKEYBYTES","crypto_onetimeauth_BYTES","crypto_onetimeauth_KEYBYTES","crypto_onetimeauth_poly1305_BYTES","crypto_onetimeauth_poly1305_KEYBYTES","crypto_pwhash_ALG_ARGON2I13","crypto_pwhash_ALG_ARGON2ID13","crypto_pwhash_ALG_DEFAULT","crypto_pwhash_BYTES_MAX","crypto_pwhash_BYTES_MIN","crypto_pwhash_MEMLIMIT_INTERACTIVE","crypto_pwhash_MEMLIMIT_MAX","crypto_pwhash_MEMLIMIT_MIN","crypto_pwhash_MEMLIMIT_MODERATE","crypto_pwhash_MEMLIMIT_SENSITIVE","crypto_pwhash_OPSLIMIT_INTERACTIVE","crypto_pwhash_OPSLIMIT_MAX","crypto_pwhash_OPSLIMIT_MIN","crypto_pwhash_OPSLIMIT_MODERATE","crypto_pwhash_OPSLIMIT_SENSITIVE","crypto_pwhash_PASSWD_MAX","crypto_pwhash_PASSWD_MIN","crypto_pwhash_SALTBYTES","crypto_pwhash_STRBYTES","crypto_pwhash_argon2i_BYTES_MAX","crypto_pwhash_argon2i_BYTES_MIN","crypto_pwhash_argon2i_MEMLIMIT_INTERACTIVE","crypto_pwhash_argon2i_MEMLIMIT_MAX","crypto_pwhash_argon2i_MEMLIMIT_MIN","crypto_pwhash_argon2i_MEMLIMIT_MODERATE","crypto_pwhash_argon2i_MEMLIMIT_SENSITIVE","crypto_pwhash_argon2i_OPSLIMIT_INTERACTIVE","crypto_pwhash_argon2i_OPSLIMIT_MAX","crypto_pwhash_argon2i_OPSLIMIT_MIN","crypto_pwhash_argon2i_OPSLIMIT_MODERATE","crypto_pwhash_argon2i_OPSLIMIT_SENSITIVE","crypto_pwhash_argon2i_PASSWD_MAX","crypto_pwhash_argon2i_PASSWD_MIN","crypto_pwhash_argon2i_SALTBYTES","crypto_pwhash_argon2i_STRBYTES","crypto_pwhash_argon2id_BYTES_MAX","crypto_pwhash_argon2id_BYTES_MIN","crypto_pwhash_argon2id_MEMLIMIT_INTERACTIVE","crypto_pwhash_argon2id_MEMLIMIT_MAX","crypto_pwhash_argon2id_MEMLIMIT_MIN","crypto_pwhash_argon2id_MEMLIMIT_MODERATE","crypto_pwhash_argon2id_MEMLIMIT_SENSITIVE","crypto_pwhash_argon2id_OPSLIMIT_INTERACTIVE","crypto_pwhash_argon2id_OPSLIMIT_MAX","crypto_pwhash_argon2id_OPSLIMIT_MIN","crypto_pwhash_argon2id_OPSLIMIT_MODERATE","crypto_pwhash_argon2id_OPSLIMIT_SENSITIVE","crypto_pwhash_argon2id_PASSWD_MAX","crypto_pwhash_argon2id_PASSWD_MIN","crypto_pwhash_argon2id_SALTBYTES","crypto_pwhash_argon2id_STRBYTES","crypto_pwhash_scryptsalsa208sha256_BYTES_MAX","crypto_pwhash_scryptsalsa208sha256_BYTES_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_PASSWD_MAX","crypto_pwhash_scryptsalsa208sha256_PASSWD_MIN","crypto_pwhash_scryptsalsa208sha256_SALTBYTES","crypto_pwhash_scryptsalsa208sha256_STRBYTES","crypto_scalarmult_BYTES","crypto_scalarmult_SCALARBYTES","crypto_scalarmult_curve25519_BYTES","crypto_scalarmult_curve25519_SCALARBYTES","crypto_scalarmult_ed25519_BYTES","crypto_scalarmult_ed25519_SCALARBYTES","crypto_scalarmult_ristretto255_BYTES","crypto_scalarmult_ristretto255_SCALARBYTES","crypto_secretbox_KEYBYTES","crypto_secretbox_MACBYTES","crypto_secretbox_MESSAGEBYTES_MAX","crypto_secretbox_NONCEBYTES","crypto_secretbox_xchacha20poly1305_KEYBYTES","crypto_secretbox_xchacha20poly1305_MACBYTES","crypto_secretbox_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretbox_xchacha20poly1305_NONCEBYTES","crypto_secretbox_xsalsa20poly1305_KEYBYTES","crypto_secretbox_xsalsa20poly1305_MACBYTES","crypto_secretbox_xsalsa20poly1305_MESSAGEBYTES_MAX","crypto_secretbox_xsalsa20poly1305_NONCEBYTES","crypto_secretstream_xchacha20poly1305_ABYTES","crypto_secretstream_xchacha20poly1305_HEADERBYTES","crypto_secretstream_xchacha20poly1305_KEYBYTES","crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretstream_xchacha20poly1305_TAG_FINAL","crypto_secretstream_xchacha20poly1305_TAG_MESSAGE","crypto_secretstream_xchacha20poly1305_TAG_PUSH","crypto_secretstream_xchacha20poly1305_TAG_REKEY","crypto_shorthash_BYTES","crypto_shorthash_KEYBYTES","crypto_shorthash_siphash24_BYTES","crypto_shorthash_siphash24_KEYBYTES","crypto_shorthash_siphashx24_BYTES","crypto_shorthash_siphashx24_KEYBYTES","crypto_sign_BYTES","crypto_sign_MESSAGEBYTES_MAX","crypto_sign_PUBLICKEYBYTES","crypto_sign_SECRETKEYBYTES","crypto_sign_SEEDBYTES","crypto_sign_ed25519_BYTES","crypto_sign_ed25519_MESSAGEBYTES_MAX","crypto_sign_ed25519_PUBLICKEYBYTES","crypto_sign_ed25519_SECRETKEYBYTES","crypto_sign_ed25519_SEEDBYTES","crypto_stream_KEYBYTES","crypto_stream_MESSAGEBYTES_MAX","crypto_stream_NONCEBYTES","crypto_stream_chacha20_IETF_KEYBYTES","crypto_stream_chacha20_IETF_MESSAGEBYTES_MAX","crypto_stream_chacha20_IETF_NONCEBYTES","crypto_stream_chacha20_KEYBYTES","crypto_stream_chacha20_MESSAGEBYTES_MAX","crypto_stream_chacha20_NONCEBYTES","crypto_stream_chacha20_ietf_KEYBYTES","crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX","crypto_stream_chacha20_ietf_NONCEBYTES","crypto_stream_salsa2012_KEYBYTES","crypto_stream_salsa2012_MESSAGEBYTES_MAX","crypto_stream_salsa2012_NONCEBYTES","crypto_stream_salsa208_KEYBYTES","crypto_stream_salsa208_MESSAGEBYTES_MAX","crypto_stream_salsa208_NONCEBYTES","crypto_stream_salsa20_KEYBYTES","crypto_stream_salsa20_MESSAGEBYTES_MAX","crypto_stream_salsa20_NONCEBYTES","crypto_stream_xchacha20_KEYBYTES","crypto_stream_xchacha20_MESSAGEBYTES_MAX","crypto_stream_xchacha20_NONCEBYTES","crypto_stream_xsalsa20_KEYBYTES","crypto_stream_xsalsa20_MESSAGEBYTES_MAX","crypto_stream_xsalsa20_NONCEBYTES","crypto_verify_16_BYTES","crypto_verify_32_BYTES","crypto_verify_64_BYTES","crypto_xof_shake128_BLOCKBYTES","crypto_xof_shake128_STATEBYTES","crypto_xof_shake256_BLOCKBYTES","crypto_xof_shake256_STATEBYTES","crypto_xof_turboshake128_BLOCKBYTES","crypto_xof_turboshake128_STATEBYTES","crypto_xof_turboshake256_BLOCKBYTES","crypto_xof_turboshake256_STATEBYTES"];for(_=0;_<n.length;_++)"function"==typeof(c=r["_"+n[_].toLowerCase()])&&(t[n[_]]=c());var s=["SODIUM_VERSION_STRING","crypto_pwhash_STRPREFIX","crypto_pwhash_argon2i_STRPREFIX","crypto_pwhash_argon2id_STRPREFIX","crypto_pwhash_scryptsalsa208sha256_STRPREFIX"];for(_=0;_<s.length;_++){var c;"function"==typeof(c=r["_"+s[_].toLowerCase()])&&(t[s[_]]=r.UTF8ToString(c()))}}r=e;try{a();var _=new Uint8Array([98,97,108,108,115]),n=t.randombytes_buf(t.crypto_secretbox_NONCEBYTES),s=t.randombytes_buf(t.crypto_secretbox_KEYBYTES),c=t.crypto_secretbox_easy(_,n,s),o=t.crypto_secretbox_open_easy(c,n,s);if(t.memcmp(_,o))return}catch(e){if(null==r.useBackupModule)throw new Error("Both wasm and asm failed to load"+e)}r.useBackupModule(),a()});function _(){return Object.keys(t).sort()}function n(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be incremented");for(var r=256,t=0,a=e.length;t<a;t++)r>>=8,r+=e[t],e[t]=255&r}function s(e,r){if(!(e instanceof Uint8Array&&r instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be added");var t=e.length,a=0,_=0;if(r.length!==e.length)throw new TypeError("Arguments must have the same length");for(_=0;_<t;_++)a>>=8,a+=e[_]+r[_],e[_]=255&a}function c(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be checked");for(var r=0,t=0,a=e.length;t<a;t++)r|=e[t];return 0===r}function o(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be wiped");for(var r=0,t=e.length;r<t;r++)e[r]=0}function p(e,r){if(!(e instanceof Uint8Array&&r instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==r.length)throw new TypeError("Only instances of identical length can be compared");for(var t=0,a=0,_=e.length;a<_;a++)t|=e[a]^r[a];return 0===t}function h(e,r){if(!(e instanceof Uint8Array&&r instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==r.length)throw new TypeError("Only instances of identical length can be compared");for(var t=0,a=1,_=e.length;_-- >0;)t|=r[_]-e[_]>>8&a,a&=(r[_]^e[_])-1>>8;return t+t+a-1}function y(e,t){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((t|=0)<=0)throw new Error("block size must be > 0");var a,_=[],n=Y(4),s=1,c=0,o=0|e.length,p=new T(o+t);_.push(n),_.push(p.address);for(var h=p.address,y=p.address+o+t;h<y;h++)r.HEAPU8[h]=e[c],c+=s=1&~((65535&((o-=s)>>>48|o>>>32|o>>>16|o))-1>>16);return 0!==r._sodium_pad(n,p.address,e.length,t,p.length)&&M(_,"internal error"),p.length=r.getValue(n,"i32"),a=p.to_Uint8Array(),A(_),a}function i(e,t){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((t|=0)<=0)throw new Error("block size must be > 0");var a=[],_=w(e),n=Y(4);return a.push(_),a.push(n),0!==r._sodium_unpad(n,_,e.length,t)&&M(a,"unsupported/invalid padding"),e=(e=new Uint8Array(e)).subarray(0,r.getValue(n,"i32")),A(a),e}function l(e){if("function"==typeof TextEncoder)return(new TextEncoder).encode(e);e=unescape(encodeURIComponent(e));for(var r=new Uint8Array(e.length),t=0,a=e.length;t<a;t++)r[t]=e.charCodeAt(t);return r}function u(e){if("function"==typeof TextDecoder)return new TextDecoder("utf-8",{fatal:!0}).decode(e);var r=8192,t=Math.ceil(e.length/r);if(t<=1)try{return decodeURIComponent(escape(String.fromCharCode.apply(null,e)))}catch(e){throw new TypeError("The encoded data was not valid.")}for(var a="",_=0,n=0;n<t;n++){var s=Array.prototype.slice.call(e,n*r+_,(n+1)*r+_);if(0!==s.length){var c,o=s.length,p=0;do{var h=s[--o];h>=240?(p=4,c=!0):h>=224?(p=3,c=!0):h>=192?(p=2,c=!0):h<128&&(p=1,c=!0)}while(!c);for(var y=p-(s.length-o),i=0;i<y;i++)_--,s.pop();a+=u(s)}}return a}function d(e){var t,a=[],_=new T((e=N(a,e,"input")).length/2),n=w(e),s=Y(4);return a.push(n),a.push(_.address),a.push(s),0!==r._sodium_hex2bin(_.address,_.length,n,e.length,0,0,s)&&M(a,"invalid input"),r.getValue(s,"i32")-n!==e.length&&M(a,"incomplete input"),t=_.to_Uint8Array(),A(a),t}function v(e){e=N(null,e,"input");for(var r,t,a,_="",n=0;n<e.length;n++)a=87+(t=15&e[n])+(t-10>>8&-39)<<8|87+(r=e[n]>>>4)+(r-10>>8&-39),_+=String.fromCharCode(255&a)+String.fromCharCode(a>>>8);return _}var g={ORIGINAL:1,ORIGINAL_NO_PADDING:3,URLSAFE:5,URLSAFE_NO_PADDING:7};function b(e){if(void 0===e)return g.URLSAFE_NO_PADDING;if(e!==g.ORIGINAL&&e!==g.ORIGINAL_NO_PADDING&&e!==g.URLSAFE&&e!==g.URLSAFE_NO_PADDING)throw new Error("unsupported base64 variant");return e}function f(e,t){t=b(t);var a,_=[],n=new T(3*(e=N(_,e,"input")).length/4),s=w(e),c=Y(4),o=Y(4);return _.push(s),_.push(n.address),_.push(c),_.push(o),0!==r._sodium_base642bin(n.address,n.length,s,e.length,0,c,o,t)&&M(_,"invalid input"),r.getValue(o,"i32")-s!==e.length&&M(_,"incomplete input"),n.length=r.getValue(c,"i32"),a=n.to_Uint8Array(),A(_),a}function m(e,t){t=b(t);var a=[];e=N(a,e,"input");var _,n=0|Math.floor(e.length/3),s=e.length-3*n,c=4*n+(0!==s?2&t?2+(s>>>1):4:0),o=new T(c+1),p=w(e);return a.push(p),a.push(o.address),0===r._sodium_bin2base64(o.address,o.length,p,e.length,t)&&M(a,"conversion failed"),o.length=c,_=u(o.to_Uint8Array()),A(a),_}function x(){return["uint8array","text","hex","base64"]}function E(e,r){var t=r||"uint8array";if(!k(t))throw new Error(t+" output format is not available");if(e instanceof T){if("uint8array"===t)return e.to_Uint8Array();if("text"===t)return u(e.to_Uint8Array());if("hex"===t)return v(e.to_Uint8Array());if("base64"===t)return m(e.to_Uint8Array(),g.URLSAFE_NO_PADDING);throw new Error('What is output format "'+t+'"?')}if("object"==typeof e){for(var a=Object.keys(e),_={},n=0;n<a.length;n++)_[a[n]]=E(e[a[n]],t);return _}if("string"==typeof e)return e;throw new TypeError("Cannot format output")}function k(e){for(var r=["uint8array","text","hex","base64"],t=0;t<r.length;t++)if(r[t]===e)return!0;return!1}function S(e){if(e){if("string"!=typeof e)throw new TypeError("When defined, the output format must be a string");if(!k(e))throw new Error(e+" is not a supported output format")}}function T(e){this.length=e,this.address=Y(e)}function w(e){var t=Y(e.length);return r.HEAPU8.set(e,t),t}function Y(e){var t=r._malloc(e);if(0===t)throw{message:"_malloc() failed",length:e};return t}function B(e){r._free(e)}function A(e){if(e)for(var r=0;r<e.length;r++)B(e[r])}function M(e,r){throw A(e),new Error(r)}function I(e,r){throw A(e),new TypeError(r)}function K(e,r,t){null==r&&I(e,t+" cannot be null or undefined")}function N(e,r,t){return K(e,r,t),r instanceof Uint8Array?r:"string"==typeof r?l(r):void I(e,"unsupported input type for "+t)}function L(e,t,a,_,n,s){var c=[];S(s);var o=null;null!=e&&(o=w(e=N(c,e,"secret_nonce")),e.length,c.push(o)),t=N(c,t,"ciphertext");var p,h=r._crypto_aead_aegis128l_abytes(),y=t.length;y<h&&I(c,"ciphertext is too short"),p=w(t),c.push(p);var i=null,l=0;null!=a&&(i=w(a=N(c,a,"additional_data")),l=a.length,c.push(i)),_=N(c,_,"public_nonce");var u,d=0|r._crypto_aead_aegis128l_npubbytes();_.length!==d&&I(c,"invalid public_nonce length"),u=w(_),c.push(u),n=N(c,n,"key");var v,g=0|r._crypto_aead_aegis128l_keybytes();n.length!==g&&I(c,"invalid key length"),v=w(n),c.push(v);var b=new T(y-r._crypto_aead_aegis128l_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_aegis128l_decrypt(f,null,o,p,y,0,i,l,0,u,v)){var m=E(b,s);return A(c),m}M(c,"ciphertext cannot be decrypted using that key")}function O(e,t,a,_,n,s,c){var o=[];S(c);var p=null;null!=e&&(p=w(e=N(o,e,"secret_nonce")),e.length,o.push(p));var h=w(t=N(o,t,"ciphertext")),y=t.length;o.push(h),a=N(o,a,"mac");var i,l=0|r._crypto_aead_aegis128l_abytes();a.length!==l&&I(o,"invalid mac length"),i=w(a),o.push(i);var u=null,d=0;null!=_&&(u=w(_=N(o,_,"additional_data")),d=_.length,o.push(u)),n=N(o,n,"public_nonce");var v,g=0|r._crypto_aead_aegis128l_npubbytes();n.length!==g&&I(o,"invalid public_nonce length"),v=w(n),o.push(v),s=N(o,s,"key");var b,f=0|r._crypto_aead_aegis128l_keybytes();s.length!==f&&I(o,"invalid key length"),b=w(s),o.push(b);var m=new T(0|y),x=m.address;if(o.push(x),0===r._crypto_aead_aegis128l_decrypt_detached(x,p,h,y,0,i,u,d,0,v,b)){var k=E(m,c);return A(o),k}M(o,"ciphertext cannot be decrypted using that key")}function U(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"message")),p=e.length;c.push(o);var h=null,y=0;null!=t&&(h=w(t=N(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=w(a=N(c,a,"secret_nonce")),a.length,c.push(i)),_=N(c,_,"public_nonce");var l,u=0|r._crypto_aead_aegis128l_npubbytes();_.length!==u&&I(c,"invalid public_nonce length"),l=w(_),c.push(l),n=N(c,n,"key");var d,v=0|r._crypto_aead_aegis128l_keybytes();n.length!==v&&I(c,"invalid key length"),d=w(n),c.push(d);var g=new T(p+r._crypto_aead_aegis128l_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_aegis128l_encrypt(b,null,o,p,0,h,y,0,i,l,d)){var f=E(g,s);return A(c),f}M(c,"invalid usage")}function P(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"message")),p=e.length;c.push(o);var h=null,y=0;null!=t&&(h=w(t=N(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=w(a=N(c,a,"secret_nonce")),a.length,c.push(i)),_=N(c,_,"public_nonce");var l,u=0|r._crypto_aead_aegis128l_npubbytes();_.length!==u&&I(c,"invalid public_nonce length"),l=w(_),c.push(l),n=N(c,n,"key");var d,v=0|r._crypto_aead_aegis128l_keybytes();n.length!==v&&I(c,"invalid key length"),d=w(n),c.push(d);var g=new T(0|p),b=g.address;c.push(b);var f=new T(0|r._crypto_aead_aegis128l_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_aegis128l_encrypt_detached(b,m,null,o,p,0,h,y,0,i,l,d)){var x=E({ciphertext:g,mac:f},s);return A(c),x}M(c,"invalid usage")}function C(e){var t=[];S(e);var a=new T(0|r._crypto_aead_aegis128l_keybytes()),_=a.address;t.push(_),r._crypto_aead_aegis128l_keygen(_);var n=E(a,e);return A(t),n}function R(e,t,a,_,n,s){var c=[];S(s);var o=null;null!=e&&(o=w(e=N(c,e,"secret_nonce")),e.length,c.push(o)),t=N(c,t,"ciphertext");var p,h=r._crypto_aead_aegis256_abytes(),y=t.length;y<h&&I(c,"ciphertext is too short"),p=w(t),c.push(p);var i=null,l=0;null!=a&&(i=w(a=N(c,a,"additional_data")),l=a.length,c.push(i)),_=N(c,_,"public_nonce");var u,d=0|r._crypto_aead_aegis256_npubbytes();_.length!==d&&I(c,"invalid public_nonce length"),u=w(_),c.push(u),n=N(c,n,"key");var v,g=0|r._crypto_aead_aegis256_keybytes();n.length!==g&&I(c,"invalid key length"),v=w(n),c.push(v);var b=new T(y-r._crypto_aead_aegis256_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_aegis256_decrypt(f,null,o,p,y,0,i,l,0,u,v)){var m=E(b,s);return A(c),m}M(c,"ciphertext cannot be decrypted using that key")}function X(e,t,a,_,n,s,c){var o=[];S(c);var p=null;null!=e&&(p=w(e=N(o,e,"secret_nonce")),e.length,o.push(p));var h=w(t=N(o,t,"ciphertext")),y=t.length;o.push(h),a=N(o,a,"mac");var i,l=0|r._crypto_aead_aegis256_abytes();a.length!==l&&I(o,"invalid mac length"),i=w(a),o.push(i);var u=null,d=0;null!=_&&(u=w(_=N(o,_,"additional_data")),d=_.length,o.push(u)),n=N(o,n,"public_nonce");var v,g=0|r._crypto_aead_aegis256_npubbytes();n.length!==g&&I(o,"invalid public_nonce length"),v=w(n),o.push(v),s=N(o,s,"key");var b,f=0|r._crypto_aead_aegis256_keybytes();s.length!==f&&I(o,"invalid key length"),b=w(s),o.push(b);var m=new T(0|y),x=m.address;if(o.push(x),0===r._crypto_aead_aegis256_decrypt_detached(x,p,h,y,0,i,u,d,0,v,b)){var k=E(m,c);return A(o),k}M(o,"ciphertext cannot be decrypted using that key")}function D(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"message")),p=e.length;c.push(o);var h=null,y=0;null!=t&&(h=w(t=N(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=w(a=N(c,a,"secret_nonce")),a.length,c.push(i)),_=N(c,_,"public_nonce");var l,u=0|r._crypto_aead_aegis256_npubbytes();_.length!==u&&I(c,"invalid public_nonce length"),l=w(_),c.push(l),n=N(c,n,"key");var d,v=0|r._crypto_aead_aegis256_keybytes();n.length!==v&&I(c,"invalid key length"),d=w(n),c.push(d);var g=new T(p+r._crypto_aead_aegis256_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_aegis256_encrypt(b,null,o,p,0,h,y,0,i,l,d)){var f=E(g,s);return A(c),f}M(c,"invalid usage")}function G(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"message")),p=e.length;c.push(o);var h=null,y=0;null!=t&&(h=w(t=N(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=w(a=N(c,a,"secret_nonce")),a.length,c.push(i)),_=N(c,_,"public_nonce");var l,u=0|r._crypto_aead_aegis256_npubbytes();_.length!==u&&I(c,"invalid public_nonce length"),l=w(_),c.push(l),n=N(c,n,"key");var d,v=0|r._crypto_aead_aegis256_keybytes();n.length!==v&&I(c,"invalid key length"),d=w(n),c.push(d);var g=new T(0|p),b=g.address;c.push(b);var f=new T(0|r._crypto_aead_aegis256_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_aegis256_encrypt_detached(b,m,null,o,p,0,h,y,0,i,l,d)){var x=E({ciphertext:g,mac:f},s);return A(c),x}M(c,"invalid usage")}function F(e){var t=[];S(e);var a=new T(0|r._crypto_aead_aegis256_keybytes()),_=a.address;t.push(_),r._crypto_aead_aegis256_keygen(_);var n=E(a,e);return A(t),n}function V(e,t,a,_,n,s){var c=[];S(s);var o=null;null!=e&&(o=w(e=N(c,e,"secret_nonce")),e.length,c.push(o)),t=N(c,t,"ciphertext");var p,h=r._crypto_aead_chacha20poly1305_abytes(),y=t.length;y<h&&I(c,"ciphertext is too short"),p=w(t),c.push(p);var i=null,l=0;null!=a&&(i=w(a=N(c,a,"additional_data")),l=a.length,c.push(i)),_=N(c,_,"public_nonce");var u,d=0|r._crypto_aead_chacha20poly1305_npubbytes();_.length!==d&&I(c,"invalid public_nonce length"),u=w(_),c.push(u),n=N(c,n,"key");var v,g=0|r._crypto_aead_chacha20poly1305_keybytes();n.length!==g&&I(c,"invalid key length"),v=w(n),c.push(v);var b=new T(y-r._crypto_aead_chacha20poly1305_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_chacha20poly1305_decrypt(f,null,o,p,y,0,i,l,0,u,v)){var m=E(b,s);return A(c),m}M(c,"ciphertext cannot be decrypted using that key")}function q(e,t,a,_,n,s,c){var o=[];S(c);var p=null;null!=e&&(p=w(e=N(o,e,"secret_nonce")),e.length,o.push(p));var h=w(t=N(o,t,"ciphertext")),y=t.length;o.push(h),a=N(o,a,"mac");var i,l=0|r._crypto_box_macbytes();a.length!==l&&I(o,"invalid mac length"),i=w(a),o.push(i);var u=null,d=0;null!=_&&(u=w(_=N(o,_,"additional_data")),d=_.length,o.push(u)),n=N(o,n,"public_nonce");var v,g=0|r._crypto_aead_chacha20poly1305_npubbytes();n.length!==g&&I(o,"invalid public_nonce length"),v=w(n),o.push(v),s=N(o,s,"key");var b,f=0|r._crypto_aead_chacha20poly1305_keybytes();s.length!==f&&I(o,"invalid key length"),b=w(s),o.push(b);var m=new T(0|y),x=m.address;if(o.push(x),0===r._crypto_aead_chacha20poly1305_decrypt_detached(x,p,h,y,0,i,u,d,0,v,b)){var k=E(m,c);return A(o),k}M(o,"ciphertext cannot be decrypted using that key")}function z(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"message")),p=e.length;c.push(o);var h=null,y=0;null!=t&&(h=w(t=N(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=w(a=N(c,a,"secret_nonce")),a.length,c.push(i)),_=N(c,_,"public_nonce");var l,u=0|r._crypto_aead_chacha20poly1305_npubbytes();_.length!==u&&I(c,"invalid public_nonce length"),l=w(_),c.push(l),n=N(c,n,"key");var d,v=0|r._crypto_aead_chacha20poly1305_keybytes();n.length!==v&&I(c,"invalid key length"),d=w(n),c.push(d);var g=new T(p+r._crypto_aead_chacha20poly1305_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_chacha20poly1305_encrypt(b,null,o,p,0,h,y,0,i,l,d)){var f=E(g,s);return A(c),f}M(c,"invalid usage")}function W(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"message")),p=e.length;c.push(o);var h=null,y=0;null!=t&&(h=w(t=N(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=w(a=N(c,a,"secret_nonce")),a.length,c.push(i)),_=N(c,_,"public_nonce");var l,u=0|r._crypto_aead_chacha20poly1305_npubbytes();_.length!==u&&I(c,"invalid public_nonce length"),l=w(_),c.push(l),n=N(c,n,"key");var d,v=0|r._crypto_aead_chacha20poly1305_keybytes();n.length!==v&&I(c,"invalid key length"),d=w(n),c.push(d);var g=new T(0|p),b=g.address;c.push(b);var f=new T(0|r._crypto_aead_chacha20poly1305_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_chacha20poly1305_encrypt_detached(b,m,null,o,p,0,h,y,0,i,l,d)){var x=E({ciphertext:g,mac:f},s);return A(c),x}M(c,"invalid usage")}function H(e,t,a,_,n,s){var c=[];S(s);var o=null;null!=e&&(o=w(e=N(c,e,"secret_nonce")),e.length,c.push(o)),t=N(c,t,"ciphertext");var p,h=r._crypto_aead_chacha20poly1305_ietf_abytes(),y=t.length;y<h&&I(c,"ciphertext is too short"),p=w(t),c.push(p);var i=null,l=0;null!=a&&(i=w(a=N(c,a,"additional_data")),l=a.length,c.push(i)),_=N(c,_,"public_nonce");var u,d=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==d&&I(c,"invalid public_nonce length"),u=w(_),c.push(u),n=N(c,n,"key");var v,g=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==g&&I(c,"invalid key length"),v=w(n),c.push(v);var b=new T(y-r._crypto_aead_chacha20poly1305_ietf_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_chacha20poly1305_ietf_decrypt(f,null,o,p,y,0,i,l,0,u,v)){var m=E(b,s);return A(c),m}M(c,"ciphertext cannot be decrypted using that key")}function j(e,t,a,_,n,s,c){var o=[];S(c);var p=null;null!=e&&(p=w(e=N(o,e,"secret_nonce")),e.length,o.push(p));var h=w(t=N(o,t,"ciphertext")),y=t.length;o.push(h),a=N(o,a,"mac");var i,l=0|r._crypto_box_macbytes();a.length!==l&&I(o,"invalid mac length"),i=w(a),o.push(i);var u=null,d=0;null!=_&&(u=w(_=N(o,_,"additional_data")),d=_.length,o.push(u)),n=N(o,n,"public_nonce");var v,g=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();n.length!==g&&I(o,"invalid public_nonce length"),v=w(n),o.push(v),s=N(o,s,"key");var b,f=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();s.length!==f&&I(o,"invalid key length"),b=w(s),o.push(b);var m=new T(0|y),x=m.address;if(o.push(x),0===r._crypto_aead_chacha20poly1305_ietf_decrypt_detached(x,p,h,y,0,i,u,d,0,v,b)){var k=E(m,c);return A(o),k}M(o,"ciphertext cannot be decrypted using that key")}function J(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"message")),p=e.length;c.push(o);var h=null,y=0;null!=t&&(h=w(t=N(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=w(a=N(c,a,"secret_nonce")),a.length,c.push(i)),_=N(c,_,"public_nonce");var l,u=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==u&&I(c,"invalid public_nonce length"),l=w(_),c.push(l),n=N(c,n,"key");var d,v=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==v&&I(c,"invalid key length"),d=w(n),c.push(d);var g=new T(p+r._crypto_aead_chacha20poly1305_ietf_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_chacha20poly1305_ietf_encrypt(b,null,o,p,0,h,y,0,i,l,d)){var f=E(g,s);return A(c),f}M(c,"invalid usage")}function Q(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"message")),p=e.length;c.push(o);var h=null,y=0;null!=t&&(h=w(t=N(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=w(a=N(c,a,"secret_nonce")),a.length,c.push(i)),_=N(c,_,"public_nonce");var l,u=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==u&&I(c,"invalid public_nonce length"),l=w(_),c.push(l),n=N(c,n,"key");var d,v=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==v&&I(c,"invalid key length"),d=w(n),c.push(d);var g=new T(0|p),b=g.address;c.push(b);var f=new T(0|r._crypto_aead_chacha20poly1305_ietf_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_chacha20poly1305_ietf_encrypt_detached(b,m,null,o,p,0,h,y,0,i,l,d)){var x=E({ciphertext:g,mac:f},s);return A(c),x}M(c,"invalid usage")}function Z(e){var t=[];S(e);var a=new T(0|r._crypto_aead_chacha20poly1305_ietf_keybytes()),_=a.address;t.push(_),r._crypto_aead_chacha20poly1305_ietf_keygen(_);var n=E(a,e);return A(t),n}function $(e){var t=[];S(e);var a=new T(0|r._crypto_aead_chacha20poly1305_keybytes()),_=a.address;t.push(_),r._crypto_aead_chacha20poly1305_keygen(_);var n=E(a,e);return A(t),n}function ee(e,t,a,_,n,s){var c=[];S(s);var o=null;null!=e&&(o=w(e=N(c,e,"secret_nonce")),e.length,c.push(o)),t=N(c,t,"ciphertext");var p,h=r._crypto_aead_xchacha20poly1305_ietf_abytes(),y=t.length;y<h&&I(c,"ciphertext is too short"),p=w(t),c.push(p);var i=null,l=0;null!=a&&(i=w(a=N(c,a,"additional_data")),l=a.length,c.push(i)),_=N(c,_,"public_nonce");var u,d=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==d&&I(c,"invalid public_nonce length"),u=w(_),c.push(u),n=N(c,n,"key");var v,g=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==g&&I(c,"invalid key length"),v=w(n),c.push(v);var b=new T(y-r._crypto_aead_xchacha20poly1305_ietf_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_xchacha20poly1305_ietf_decrypt(f,null,o,p,y,0,i,l,0,u,v)){var m=E(b,s);return A(c),m}M(c,"ciphertext cannot be decrypted using that key")}function re(e,t,a,_,n,s,c){var o=[];S(c);var p=null;null!=e&&(p=w(e=N(o,e,"secret_nonce")),e.length,o.push(p));var h=w(t=N(o,t,"ciphertext")),y=t.length;o.push(h),a=N(o,a,"mac");var i,l=0|r._crypto_box_macbytes();a.length!==l&&I(o,"invalid mac length"),i=w(a),o.push(i);var u=null,d=0;null!=_&&(u=w(_=N(o,_,"additional_data")),d=_.length,o.push(u)),n=N(o,n,"public_nonce");var v,g=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();n.length!==g&&I(o,"invalid public_nonce length"),v=w(n),o.push(v),s=N(o,s,"key");var b,f=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();s.length!==f&&I(o,"invalid key length"),b=w(s),o.push(b);var m=new T(0|y),x=m.address;if(o.push(x),0===r._crypto_aead_xchacha20poly1305_ietf_decrypt_detached(x,p,h,y,0,i,u,d,0,v,b)){var k=E(m,c);return A(o),k}M(o,"ciphertext cannot be decrypted using that key")}function te(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"message")),p=e.length;c.push(o);var h=null,y=0;null!=t&&(h=w(t=N(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=w(a=N(c,a,"secret_nonce")),a.length,c.push(i)),_=N(c,_,"public_nonce");var l,u=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==u&&I(c,"invalid public_nonce length"),l=w(_),c.push(l),n=N(c,n,"key");var d,v=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==v&&I(c,"invalid key length"),d=w(n),c.push(d);var g=new T(p+r._crypto_aead_xchacha20poly1305_ietf_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_xchacha20poly1305_ietf_encrypt(b,null,o,p,0,h,y,0,i,l,d)){var f=E(g,s);return A(c),f}M(c,"invalid usage")}function ae(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"message")),p=e.length;c.push(o);var h=null,y=0;null!=t&&(h=w(t=N(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=w(a=N(c,a,"secret_nonce")),a.length,c.push(i)),_=N(c,_,"public_nonce");var l,u=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==u&&I(c,"invalid public_nonce length"),l=w(_),c.push(l),n=N(c,n,"key");var d,v=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==v&&I(c,"invalid key length"),d=w(n),c.push(d);var g=new T(0|p),b=g.address;c.push(b);var f=new T(0|r._crypto_aead_xchacha20poly1305_ietf_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_xchacha20poly1305_ietf_encrypt_detached(b,m,null,o,p,0,h,y,0,i,l,d)){var x=E({ciphertext:g,mac:f},s);return A(c),x}M(c,"invalid usage")}function _e(e){var t=[];S(e);var a=new T(0|r._crypto_aead_xchacha20poly1305_ietf_keybytes()),_=a.address;t.push(_),r._crypto_aead_xchacha20poly1305_ietf_keygen(_);var n=E(a,e);return A(t),n}function ne(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_auth_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_auth_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_auth(h,n,s,0,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function se(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_auth_hmacsha256_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_auth_hmacsha256_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_auth_hmacsha256(h,n,s,0,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function ce(e,t){var a=[];S(t),K(a,e,"state_address");var _=new T(0|r._crypto_auth_hmacsha256_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_auth_hmacsha256_final(e,n))){var s=(r._free(e),E(_,t));return A(a),s}M(a,"invalid usage")}function oe(e,t){var a=[];S(t);var _=null,n=0;null!=e&&(_=w(e=N(a,e,"key")),n=e.length,a.push(_));var s=new T(208).address;if(!(0|r._crypto_auth_hmacsha256_init(s,_,n))){var c=s;return A(a),c}M(a,"invalid usage")}function pe(e){var t=[];S(e);var a=new T(0|r._crypto_auth_hmacsha256_keybytes()),_=a.address;t.push(_),r._crypto_auth_hmacsha256_keygen(_);var n=E(a,e);return A(t),n}function he(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_auth_hmacsha256_update(e,n,s)&&M(_,"invalid usage"),A(_)}function ye(e,t,a){var _=[];e=N(_,e,"tag");var n,s=0|r._crypto_auth_hmacsha256_bytes();e.length!==s&&I(_,"invalid tag length"),n=w(e),_.push(n);var c=w(t=N(_,t,"message")),o=t.length;_.push(c),a=N(_,a,"key");var p,h=0|r._crypto_auth_hmacsha256_keybytes();a.length!==h&&I(_,"invalid key length"),p=w(a),_.push(p);var y=!(0|r._crypto_auth_hmacsha256_verify(n,c,o,0,p));return A(_),y}function ie(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_auth_hmacsha512_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_auth_hmacsha512_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_auth_hmacsha512(h,n,s,0,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function le(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_auth_hmacsha512256_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_auth_hmacsha512256_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_auth_hmacsha512256(h,n,s,0,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function ue(e,t){var a=[];S(t),K(a,e,"state_address");var _=new T(0|r._crypto_auth_hmacsha512256_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_auth_hmacsha512256_final(e,n))){var s=(r._free(e),E(_,t));return A(a),s}M(a,"invalid usage")}function de(e,t){var a=[];S(t);var _=null,n=0;null!=e&&(_=w(e=N(a,e,"key")),n=e.length,a.push(_));var s=new T(416).address;if(!(0|r._crypto_auth_hmacsha512256_init(s,_,n))){var c=s;return A(a),c}M(a,"invalid usage")}function ve(e){var t=[];S(e);var a=new T(0|r._crypto_auth_hmacsha512256_keybytes()),_=a.address;t.push(_),r._crypto_auth_hmacsha512256_keygen(_);var n=E(a,e);return A(t),n}function ge(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_auth_hmacsha512256_update(e,n,s)&&M(_,"invalid usage"),A(_)}function be(e,t,a){var _=[];e=N(_,e,"tag");var n,s=0|r._crypto_auth_hmacsha512256_bytes();e.length!==s&&I(_,"invalid tag length"),n=w(e),_.push(n);var c=w(t=N(_,t,"message")),o=t.length;_.push(c),a=N(_,a,"key");var p,h=0|r._crypto_auth_hmacsha512256_keybytes();a.length!==h&&I(_,"invalid key length"),p=w(a),_.push(p);var y=!(0|r._crypto_auth_hmacsha512256_verify(n,c,o,0,p));return A(_),y}function fe(e,t){var a=[];S(t),K(a,e,"state_address");var _=new T(0|r._crypto_auth_hmacsha512_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_auth_hmacsha512_final(e,n))){var s=(r._free(e),E(_,t));return A(a),s}M(a,"invalid usage")}function me(e,t){var a=[];S(t);var _=null,n=0;null!=e&&(_=w(e=N(a,e,"key")),n=e.length,a.push(_));var s=new T(416).address;if(!(0|r._crypto_auth_hmacsha512_init(s,_,n))){var c=s;return A(a),c}M(a,"invalid usage")}function xe(e){var t=[];S(e);var a=new T(0|r._crypto_auth_hmacsha512_keybytes()),_=a.address;t.push(_),r._crypto_auth_hmacsha512_keygen(_);var n=E(a,e);return A(t),n}function Ee(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_auth_hmacsha512_update(e,n,s)&&M(_,"invalid usage"),A(_)}function ke(e,t,a){var _=[];e=N(_,e,"tag");var n,s=0|r._crypto_auth_hmacsha512_bytes();e.length!==s&&I(_,"invalid tag length"),n=w(e),_.push(n);var c=w(t=N(_,t,"message")),o=t.length;_.push(c),a=N(_,a,"key");var p,h=0|r._crypto_auth_hmacsha512_keybytes();a.length!==h&&I(_,"invalid key length"),p=w(a),_.push(p);var y=!(0|r._crypto_auth_hmacsha512_verify(n,c,o,0,p));return A(_),y}function Se(e){var t=[];S(e);var a=new T(0|r._crypto_auth_keybytes()),_=a.address;t.push(_),r._crypto_auth_keygen(_);var n=E(a,e);return A(t),n}function Te(e,t,a){var _=[];e=N(_,e,"tag");var n,s=0|r._crypto_auth_bytes();e.length!==s&&I(_,"invalid tag length"),n=w(e),_.push(n);var c=w(t=N(_,t,"message")),o=t.length;_.push(c),a=N(_,a,"key");var p,h=0|r._crypto_auth_keybytes();a.length!==h&&I(_,"invalid key length"),p=w(a),_.push(p);var y=!(0|r._crypto_auth_verify(n,c,o,0,p));return A(_),y}function we(e,t,a){var _=[];S(a),e=N(_,e,"publicKey");var n,s=0|r._crypto_box_publickeybytes();e.length!==s&&I(_,"invalid publicKey length"),n=w(e),_.push(n),t=N(_,t,"privateKey");var c,o=0|r._crypto_box_secretkeybytes();t.length!==o&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var p=new T(0|r._crypto_box_beforenmbytes()),h=p.address;if(_.push(h),!(0|r._crypto_box_beforenm(h,n,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function Ye(e,t,a){var _=[];S(a),e=N(_,e,"publicKey");var n,s=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();e.length!==s&&I(_,"invalid publicKey length"),n=w(e),_.push(n),t=N(_,t,"privateKey");var c,o=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();t.length!==o&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var p=new T(0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes()),h=p.address;if(_.push(h),!(0|r._crypto_box_curve25519xchacha20poly1305_beforenm(h,n,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function Be(e,t,a,_,n){var s=[];S(n);var c=w(e=N(s,e,"message")),o=e.length;s.push(c),t=N(s,t,"nonce");var p,h=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==h&&I(s,"invalid nonce length"),p=w(t),s.push(p),a=N(s,a,"publicKey");var y,i=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==i&&I(s,"invalid publicKey length"),y=w(a),s.push(y),_=N(s,_,"privateKey");var l,u=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==u&&I(s,"invalid privateKey length"),l=w(_),s.push(l);var d=new T(0|o),v=d.address;s.push(v);var g=new T(0|r._crypto_box_curve25519xchacha20poly1305_macbytes()),b=g.address;if(s.push(b),!(0|r._crypto_box_curve25519xchacha20poly1305_detached(v,b,c,o,0,p,y,l))){var f=E({ciphertext:d,mac:g},n);return A(s),f}M(s,"invalid usage")}function Ae(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"message")),c=e.length;n.push(s),t=N(n,t,"nonce");var o,p=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==p&&I(n,"invalid nonce length"),o=w(t),n.push(o),a=N(n,a,"sharedKey");var h,y=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==y&&I(n,"invalid sharedKey length"),h=w(a),n.push(h);var i=new T(0|c),l=i.address;n.push(l);var u=new T(0|r._crypto_box_curve25519xchacha20poly1305_macbytes()),d=u.address;if(n.push(d),!(0|r._crypto_box_curve25519xchacha20poly1305_detached_afternm(l,d,s,c,0,o,h))){var v=E({ciphertext:i,mac:u},_);return A(n),v}M(n,"invalid usage")}function Me(e,t,a,_,n){var s=[];S(n);var c=w(e=N(s,e,"message")),o=e.length;s.push(c),t=N(s,t,"nonce");var p,h=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==h&&I(s,"invalid nonce length"),p=w(t),s.push(p),a=N(s,a,"publicKey");var y,i=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==i&&I(s,"invalid publicKey length"),y=w(a),s.push(y),_=N(s,_,"privateKey");var l,u=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==u&&I(s,"invalid privateKey length"),l=w(_),s.push(l);var d=new T(o+r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),v=d.address;if(s.push(v),!(0|r._crypto_box_curve25519xchacha20poly1305_easy(v,c,o,0,p,y,l))){var g=E(d,n);return A(s),g}M(s,"invalid usage")}function Ie(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"message")),c=e.length;n.push(s),t=N(n,t,"nonce");var o,p=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==p&&I(n,"invalid nonce length"),o=w(t),n.push(o),a=N(n,a,"sharedKey");var h,y=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==y&&I(n,"invalid sharedKey length"),h=w(a),n.push(h);var i=new T(c+r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_box_curve25519xchacha20poly1305_easy_afternm(l,s,c,0,o,h))){var u=E(i,_);return A(n),u}M(n,"invalid usage")}function Ke(e){var t=[];S(e);var a=new T(0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes()),_=a.address;t.push(_);var n=new T(0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),s=n.address;t.push(s),r._crypto_box_curve25519xchacha20poly1305_keypair(_,s);var c=E({publicKey:a,privateKey:n,keyType:"curve25519"},e);return A(t),c}function Ne(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"ciphertext")),p=e.length;c.push(o),t=N(c,t,"mac");var h,y=0|r._crypto_box_curve25519xchacha20poly1305_macbytes();t.length!==y&&I(c,"invalid mac length"),h=w(t),c.push(h),a=N(c,a,"nonce");var i,l=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==l&&I(c,"invalid nonce length"),i=w(a),c.push(i),_=N(c,_,"publicKey");var u,d=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();_.length!==d&&I(c,"invalid publicKey length"),u=w(_),c.push(u),n=N(c,n,"privateKey");var v,g=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();n.length!==g&&I(c,"invalid privateKey length"),v=w(n),c.push(v);var b=new T(0|p),f=b.address;if(c.push(f),!(0|r._crypto_box_curve25519xchacha20poly1305_open_detached(f,o,h,p,0,i,u,v))){var m=E(b,s);return A(c),m}M(c,"incorrect key pair for the given ciphertext")}function Le(e,t,a,_,n){var s=[];S(n);var c=w(e=N(s,e,"ciphertext")),o=e.length;s.push(c),t=N(s,t,"mac");var p,h=0|r._crypto_box_curve25519xchacha20poly1305_macbytes();t.length!==h&&I(s,"invalid mac length"),p=w(t),s.push(p),a=N(s,a,"nonce");var y,i=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==i&&I(s,"invalid nonce length"),y=w(a),s.push(y),_=N(s,_,"sharedKey");var l,u=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();_.length!==u&&I(s,"invalid sharedKey length"),l=w(_),s.push(l);var d=new T(0|o),v=d.address;if(s.push(v),!(0|r._crypto_box_curve25519xchacha20poly1305_open_detached_afternm(v,c,p,o,0,y,l))){var g=E(d,n);return A(s),g}M(s,"incorrect secret key for the given ciphertext")}function Oe(e,t,a,_,n){var s=[];S(n),e=N(s,e,"ciphertext");var c,o=r._crypto_box_curve25519xchacha20poly1305_macbytes(),p=e.length;p<o&&I(s,"ciphertext is too short"),c=w(e),s.push(c),t=N(s,t,"nonce");var h,y=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==y&&I(s,"invalid nonce length"),h=w(t),s.push(h),a=N(s,a,"publicKey");var i,l=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==l&&I(s,"invalid publicKey length"),i=w(a),s.push(i),_=N(s,_,"privateKey");var u,d=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==d&&I(s,"invalid privateKey length"),u=w(_),s.push(u);var v=new T(p-r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),g=v.address;if(s.push(g),!(0|r._crypto_box_curve25519xchacha20poly1305_open_easy(g,c,p,0,h,i,u))){var b=E(v,n);return A(s),b}M(s,"incorrect key pair for the given ciphertext")}function Ue(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"ciphertext")),c=e.length;n.push(s),t=N(n,t,"nonce");var o,p=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==p&&I(n,"invalid nonce length"),o=w(t),n.push(o),a=N(n,a,"sharedKey");var h,y=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==y&&I(n,"invalid sharedKey length"),h=w(a),n.push(h);var i=new T(c-r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_box_curve25519xchacha20poly1305_open_easy_afternm(l,s,c,0,o,h))){var u=E(i,_);return A(n),u}M(n,"incorrect secret key for the given ciphertext")}function Pe(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"publicKey");var c,o=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==o&&I(_,"invalid publicKey length"),c=w(t),_.push(c);var p=new T(s+r._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),h=p.address;_.push(h),r._crypto_box_curve25519xchacha20poly1305_seal(h,n,s,0,c);var y=E(p,a);return A(_),y}function Ce(e,t,a,_){var n=[];S(_),e=N(n,e,"ciphertext");var s,c=r._crypto_box_curve25519xchacha20poly1305_sealbytes(),o=e.length;o<c&&I(n,"ciphertext is too short"),s=w(e),n.push(s),t=N(n,t,"publicKey");var p,h=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==h&&I(n,"invalid publicKey length"),p=w(t),n.push(p),a=N(n,a,"secretKey");var y,i=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();a.length!==i&&I(n,"invalid secretKey length"),y=w(a),n.push(y);var l=new T(o-r._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),u=l.address;n.push(u),r._crypto_box_curve25519xchacha20poly1305_seal_open(u,s,o,0,p,y);var d=E(l,_);return A(n),d}function Re(e,t){var a=[];S(t),e=N(a,e,"seed");var _,n=0|r._crypto_box_curve25519xchacha20poly1305_seedbytes();e.length!==n&&I(a,"invalid seed length"),_=w(e),a.push(_);var s=new T(0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes()),c=s.address;a.push(c);var o=new T(0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),p=o.address;if(a.push(p),!(0|r._crypto_box_curve25519xchacha20poly1305_seed_keypair(c,p,_))){var h={publicKey:E(s,t),privateKey:E(o,t),keyType:"x25519"};return A(a),h}M(a,"invalid usage")}function Xe(e,t,a,_,n){var s=[];S(n);var c=w(e=N(s,e,"message")),o=e.length;s.push(c),t=N(s,t,"nonce");var p,h=0|r._crypto_box_noncebytes();t.length!==h&&I(s,"invalid nonce length"),p=w(t),s.push(p),a=N(s,a,"publicKey");var y,i=0|r._crypto_box_publickeybytes();a.length!==i&&I(s,"invalid publicKey length"),y=w(a),s.push(y),_=N(s,_,"privateKey");var l,u=0|r._crypto_box_secretkeybytes();_.length!==u&&I(s,"invalid privateKey length"),l=w(_),s.push(l);var d=new T(0|o),v=d.address;s.push(v);var g=new T(0|r._crypto_box_macbytes()),b=g.address;if(s.push(b),!(0|r._crypto_box_detached(v,b,c,o,0,p,y,l))){var f=E({ciphertext:d,mac:g},n);return A(s),f}M(s,"invalid usage")}function De(e,t,a,_,n){var s=[];S(n);var c=w(e=N(s,e,"message")),o=e.length;s.push(c),t=N(s,t,"nonce");var p,h=0|r._crypto_box_noncebytes();t.length!==h&&I(s,"invalid nonce length"),p=w(t),s.push(p),a=N(s,a,"publicKey");var y,i=0|r._crypto_box_publickeybytes();a.length!==i&&I(s,"invalid publicKey length"),y=w(a),s.push(y),_=N(s,_,"privateKey");var l,u=0|r._crypto_box_secretkeybytes();_.length!==u&&I(s,"invalid privateKey length"),l=w(_),s.push(l);var d=new T(o+r._crypto_box_macbytes()|0),v=d.address;if(s.push(v),!(0|r._crypto_box_easy(v,c,o,0,p,y,l))){var g=E(d,n);return A(s),g}M(s,"invalid usage")}function Ge(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"message")),c=e.length;n.push(s),t=N(n,t,"nonce");var o,p=0|r._crypto_box_noncebytes();t.length!==p&&I(n,"invalid nonce length"),o=w(t),n.push(o),a=N(n,a,"sharedKey");var h,y=0|r._crypto_box_beforenmbytes();a.length!==y&&I(n,"invalid sharedKey length"),h=w(a),n.push(h);var i=new T(c+r._crypto_box_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_box_easy_afternm(l,s,c,0,o,h))){var u=E(i,_);return A(n),u}M(n,"invalid usage")}function Fe(e){var t=[];S(e);var a=new T(0|r._crypto_box_publickeybytes()),_=a.address;t.push(_);var n=new T(0|r._crypto_box_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_box_keypair(_,s))){var c={publicKey:E(a,e),privateKey:E(n,e),keyType:"x25519"};return A(t),c}M(t,"internal error")}function Ve(e,t,a,_,n,s){var c=[];S(s);var o=w(e=N(c,e,"ciphertext")),p=e.length;c.push(o),t=N(c,t,"mac");var h,y=0|r._crypto_box_macbytes();t.length!==y&&I(c,"invalid mac length"),h=w(t),c.push(h),a=N(c,a,"nonce");var i,l=0|r._crypto_box_noncebytes();a.length!==l&&I(c,"invalid nonce length"),i=w(a),c.push(i),_=N(c,_,"publicKey");var u,d=0|r._crypto_box_publickeybytes();_.length!==d&&I(c,"invalid publicKey length"),u=w(_),c.push(u),n=N(c,n,"privateKey");var v,g=0|r._crypto_box_secretkeybytes();n.length!==g&&I(c,"invalid privateKey length"),v=w(n),c.push(v);var b=new T(0|p),f=b.address;if(c.push(f),!(0|r._crypto_box_open_detached(f,o,h,p,0,i,u,v))){var m=E(b,s);return A(c),m}M(c,"incorrect key pair for the given ciphertext")}function qe(e,t,a,_,n){var s=[];S(n),e=N(s,e,"ciphertext");var c,o=r._crypto_box_macbytes(),p=e.length;p<o&&I(s,"ciphertext is too short"),c=w(e),s.push(c),t=N(s,t,"nonce");var h,y=0|r._crypto_box_noncebytes();t.length!==y&&I(s,"invalid nonce length"),h=w(t),s.push(h),a=N(s,a,"publicKey");var i,l=0|r._crypto_box_publickeybytes();a.length!==l&&I(s,"invalid publicKey length"),i=w(a),s.push(i),_=N(s,_,"privateKey");var u,d=0|r._crypto_box_secretkeybytes();_.length!==d&&I(s,"invalid privateKey length"),u=w(_),s.push(u);var v=new T(p-r._crypto_box_macbytes()|0),g=v.address;if(s.push(g),!(0|r._crypto_box_open_easy(g,c,p,0,h,i,u))){var b=E(v,n);return A(s),b}M(s,"incorrect key pair for the given ciphertext")}function ze(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"ciphertext")),c=e.length;n.push(s),t=N(n,t,"nonce");var o,p=0|r._crypto_box_noncebytes();t.length!==p&&I(n,"invalid nonce length"),o=w(t),n.push(o),a=N(n,a,"sharedKey");var h,y=0|r._crypto_box_beforenmbytes();a.length!==y&&I(n,"invalid sharedKey length"),h=w(a),n.push(h);var i=new T(c-r._crypto_box_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_box_open_easy_afternm(l,s,c,0,o,h))){var u=E(i,_);return A(n),u}M(n,"incorrect secret key for the given ciphertext")}function We(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"publicKey");var c,o=0|r._crypto_box_publickeybytes();t.length!==o&&I(_,"invalid publicKey length"),c=w(t),_.push(c);var p=new T(s+r._crypto_box_sealbytes()|0),h=p.address;if(_.push(h),!(0|r._crypto_box_seal(h,n,s,0,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function He(e,t,a,_){var n=[];S(_),e=N(n,e,"ciphertext");var s,c=r._crypto_box_sealbytes(),o=e.length;o<c&&I(n,"ciphertext is too short"),s=w(e),n.push(s),t=N(n,t,"publicKey");var p,h=0|r._crypto_box_publickeybytes();t.length!==h&&I(n,"invalid publicKey length"),p=w(t),n.push(p),a=N(n,a,"privateKey");var y,i=0|r._crypto_box_secretkeybytes();a.length!==i&&I(n,"invalid privateKey length"),y=w(a),n.push(y);var l=new T(o-r._crypto_box_sealbytes()|0),u=l.address;if(n.push(u),!(0|r._crypto_box_seal_open(u,s,o,0,p,y))){var d=E(l,_);return A(n),d}M(n,"incorrect key pair for the given ciphertext")}function je(e,t){var a=[];S(t),e=N(a,e,"seed");var _,n=0|r._crypto_box_seedbytes();e.length!==n&&I(a,"invalid seed length"),_=w(e),a.push(_);var s=new T(0|r._crypto_box_publickeybytes()),c=s.address;a.push(c);var o=new T(0|r._crypto_box_secretkeybytes()),p=o.address;if(a.push(p),!(0|r._crypto_box_seed_keypair(c,p,_))){var h={publicKey:E(s,t),privateKey:E(o,t),keyType:"x25519"};return A(a),h}M(a,"invalid usage")}function Je(e,t,a){var _=[];S(a),e=N(_,e,"p");var n,s=0|r._crypto_core_ed25519_bytes();e.length!==s&&I(_,"invalid p length"),n=w(e),_.push(n),t=N(_,t,"q");var c,o=0|r._crypto_core_ed25519_bytes();t.length!==o&&I(_,"invalid q length"),c=w(t),_.push(c);var p=new T(0|r._crypto_core_ed25519_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_core_ed25519_add(h,n,c))){var y=E(p,a);return A(_),y}M(_,"input is an invalid element")}function Qe(e,t){var a=[];S(t);var _=w(e=N(a,e,"r"));e.length,a.push(_);var n=new T(0|r._crypto_core_ed25519_bytes()),s=n.address;if(a.push(s),!(0|r._crypto_core_ed25519_from_hash(s,_))){var c=E(n,t);return A(a),c}M(a,"invalid usage")}function Ze(e,t){var a=[];S(t);var _=w(e=N(a,e,"r"));e.length,a.push(_);var n=new T(0|r._crypto_core_ed25519_bytes()),s=n.address;if(a.push(s),!(0|r._crypto_core_ed25519_from_uniform(s,_))){var c=E(n,t);return A(a),c}M(a,"invalid usage")}function $e(e,t){var a=[];S(t),e=N(a,e,"repr");var _,n=0|r._crypto_core_ed25519_bytes();e.length!==n&&I(a,"invalid repr length"),_=w(e),a.push(_);var s=1==(0|r._crypto_core_ed25519_is_valid_point(_));return A(a),s}function er(e){var t=[];S(e);var a=new T(0|r._crypto_core_ed25519_bytes()),_=a.address;t.push(_),r._crypto_core_ed25519_random(_);var n=E(a,e);return A(t),n}function rr(e,t,a){var _=[];S(a),e=N(_,e,"x");var n,s=0|r._crypto_core_ed25519_scalarbytes();e.length!==s&&I(_,"invalid x length"),n=w(e),_.push(n),t=N(_,t,"y");var c,o=0|r._crypto_core_ed25519_scalarbytes();t.length!==o&&I(_,"invalid y length"),c=w(t),_.push(c);var p=new T(0|r._crypto_core_ed25519_scalarbytes()),h=p.address;_.push(h),r._crypto_core_ed25519_scalar_add(h,n,c);var y=E(p,a);return A(_),y}function tr(e,t){var a=[];S(t),e=N(a,e,"s");var _,n=0|r._crypto_core_ed25519_scalarbytes();e.length!==n&&I(a,"invalid s length"),_=w(e),a.push(_);var s=new T(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ed25519_scalar_complement(c,_);var o=E(s,t);return A(a),o}function ar(e,t){var a=[];S(t),e=N(a,e,"s");var _,n=0|r._crypto_core_ed25519_scalarbytes();e.length!==n&&I(a,"invalid s length"),_=w(e),a.push(_);var s=new T(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_core_ed25519_scalar_invert(c,_))){var o=E(s,t);return A(a),o}M(a,"invalid reciprocate")}function _r(e,t,a){var _=[];S(a),e=N(_,e,"x");var n,s=0|r._crypto_core_ed25519_scalarbytes();e.length!==s&&I(_,"invalid x length"),n=w(e),_.push(n),t=N(_,t,"y");var c,o=0|r._crypto_core_ed25519_scalarbytes();t.length!==o&&I(_,"invalid y length"),c=w(t),_.push(c);var p=new T(0|r._crypto_core_ed25519_scalarbytes()),h=p.address;_.push(h),r._crypto_core_ed25519_scalar_mul(h,n,c);var y=E(p,a);return A(_),y}function nr(e,t){var a=[];S(t),e=N(a,e,"s");var _,n=0|r._crypto_core_ed25519_scalarbytes();e.length!==n&&I(a,"invalid s length"),_=w(e),a.push(_);var s=new T(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ed25519_scalar_negate(c,_);var o=E(s,t);return A(a),o}function sr(e){var t=[];S(e);var a=new T(0|r._crypto_core_ed25519_scalarbytes()),_=a.address;t.push(_),r._crypto_core_ed25519_scalar_random(_);var n=E(a,e);return A(t),n}function cr(e,t){var a=[];S(t),e=N(a,e,"sample");var _,n=0|r._crypto_core_ed25519_nonreducedscalarbytes();e.length!==n&&I(a,"invalid sample length"),_=w(e),a.push(_);var s=new T(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ed25519_scalar_reduce(c,_);var o=E(s,t);return A(a),o}function or(e,t,a){var _=[];S(a),e=N(_,e,"x");var n,s=0|r._crypto_core_ed25519_scalarbytes();e.length!==s&&I(_,"invalid x length"),n=w(e),_.push(n),t=N(_,t,"y");var c,o=0|r._crypto_core_ed25519_scalarbytes();t.length!==o&&I(_,"invalid y length"),c=w(t),_.push(c);var p=new T(0|r._crypto_core_ed25519_scalarbytes()),h=p.address;_.push(h),r._crypto_core_ed25519_scalar_sub(h,n,c);var y=E(p,a);return A(_),y}function pr(e,t,a){var _=[];S(a),e=N(_,e,"p");var n,s=0|r._crypto_core_ed25519_bytes();e.length!==s&&I(_,"invalid p length"),n=w(e),_.push(n),t=N(_,t,"q");var c,o=0|r._crypto_core_ed25519_bytes();t.length!==o&&I(_,"invalid q length"),c=w(t),_.push(c);var p=new T(0|r._crypto_core_ed25519_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_core_ed25519_sub(h,n,c))){var y=E(p,a);return A(_),y}M(_,"input is an invalid element")}function hr(e,t,a,_){var n=[];S(_),e=N(n,e,"input");var s,c=0|r._crypto_core_hchacha20_inputbytes();e.length!==c&&I(n,"invalid input length"),s=w(e),n.push(s),t=N(n,t,"privateKey");var o,p=0|r._crypto_core_hchacha20_keybytes();t.length!==p&&I(n,"invalid privateKey length"),o=w(t),n.push(o);var h=null;null!=a&&(h=w(a=N(n,a,"constant")),a.length,n.push(h));var y=new T(0|r._crypto_core_hchacha20_outputbytes()),i=y.address;if(n.push(i),!(0|r._crypto_core_hchacha20(i,s,o,h))){var l=E(y,_);return A(n),l}M(n,"invalid usage")}function yr(e,t,a,_){var n=[];S(_),e=N(n,e,"input");var s,c=0|r._crypto_core_hsalsa20_inputbytes();e.length!==c&&I(n,"invalid input length"),s=w(e),n.push(s),t=N(n,t,"privateKey");var o,p=0|r._crypto_core_hsalsa20_keybytes();t.length!==p&&I(n,"invalid privateKey length"),o=w(t),n.push(o);var h=null;null!=a&&(h=w(a=N(n,a,"constant")),a.length,n.push(h));var y=new T(0|r._crypto_core_hsalsa20_outputbytes()),i=y.address;if(n.push(i),!(0|r._crypto_core_hsalsa20(i,s,o,h))){var l=E(y,_);return A(n),l}M(n,"invalid usage")}function ir(e,t,a){var _=[];S(a),e=N(_,e,"p");var n,s=0|r._crypto_core_ristretto255_bytes();e.length!==s&&I(_,"invalid p length"),n=w(e),_.push(n),t=N(_,t,"q");var c,o=0|r._crypto_core_ristretto255_bytes();t.length!==o&&I(_,"invalid q length"),c=w(t),_.push(c);var p=new T(0|r._crypto_core_ristretto255_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_core_ristretto255_add(h,n,c))){var y=E(p,a);return A(_),y}M(_,"input is an invalid element")}function lr(e,t){var a=[];S(t);var _=w(e=N(a,e,"r"));e.length,a.push(_);var n=new T(0|r._crypto_core_ristretto255_bytes()),s=n.address;if(a.push(s),!(0|r._crypto_core_ristretto255_from_hash(s,_))){var c=E(n,t);return A(a),c}M(a,"invalid usage")}function ur(e,t){var a=[];S(t),e=N(a,e,"repr");var _,n=0|r._crypto_core_ristretto255_bytes();e.length!==n&&I(a,"invalid repr length"),_=w(e),a.push(_);var s=1==(0|r._crypto_core_ristretto255_is_valid_point(_));return A(a),s}function dr(e){var t=[];S(e);var a=new T(0|r._crypto_core_ristretto255_bytes()),_=a.address;t.push(_),r._crypto_core_ristretto255_random(_);var n=E(a,e);return A(t),n}function vr(e,t,a){var _=[];S(a),e=N(_,e,"x");var n,s=0|r._crypto_core_ristretto255_scalarbytes();e.length!==s&&I(_,"invalid x length"),n=w(e),_.push(n),t=N(_,t,"y");var c,o=0|r._crypto_core_ristretto255_scalarbytes();t.length!==o&&I(_,"invalid y length"),c=w(t),_.push(c);var p=new T(0|r._crypto_core_ristretto255_scalarbytes()),h=p.address;_.push(h),r._crypto_core_ristretto255_scalar_add(h,n,c);var y=E(p,a);return A(_),y}function gr(e,t){var a=[];S(t),e=N(a,e,"s");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&I(a,"invalid s length"),_=w(e),a.push(_);var s=new T(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ristretto255_scalar_complement(c,_);var o=E(s,t);return A(a),o}function br(e,t){var a=[];S(t),e=N(a,e,"s");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&I(a,"invalid s length"),_=w(e),a.push(_);var s=new T(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_core_ristretto255_scalar_invert(c,_))){var o=E(s,t);return A(a),o}M(a,"invalid reciprocate")}function fr(e,t,a){var _=[];S(a),e=N(_,e,"x");var n,s=0|r._crypto_core_ristretto255_scalarbytes();e.length!==s&&I(_,"invalid x length"),n=w(e),_.push(n),t=N(_,t,"y");var c,o=0|r._crypto_core_ristretto255_scalarbytes();t.length!==o&&I(_,"invalid y length"),c=w(t),_.push(c);var p=new T(0|r._crypto_core_ristretto255_scalarbytes()),h=p.address;_.push(h),r._crypto_core_ristretto255_scalar_mul(h,n,c);var y=E(p,a);return A(_),y}function mr(e,t){var a=[];S(t),e=N(a,e,"s");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&I(a,"invalid s length"),_=w(e),a.push(_);var s=new T(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ristretto255_scalar_negate(c,_);var o=E(s,t);return A(a),o}function xr(e){var t=[];S(e);var a=new T(0|r._crypto_core_ristretto255_scalarbytes()),_=a.address;t.push(_),r._crypto_core_ristretto255_scalar_random(_);var n=E(a,e);return A(t),n}function Er(e,t){var a=[];S(t),e=N(a,e,"sample");var _,n=0|r._crypto_core_ristretto255_nonreducedscalarbytes();e.length!==n&&I(a,"invalid sample length"),_=w(e),a.push(_);var s=new T(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ristretto255_scalar_reduce(c,_);var o=E(s,t);return A(a),o}function kr(e,t,a){var _=[];S(a),e=N(_,e,"x");var n,s=0|r._crypto_core_ristretto255_scalarbytes();e.length!==s&&I(_,"invalid x length"),n=w(e),_.push(n),t=N(_,t,"y");var c,o=0|r._crypto_core_ristretto255_scalarbytes();t.length!==o&&I(_,"invalid y length"),c=w(t),_.push(c);var p=new T(0|r._crypto_core_ristretto255_scalarbytes()),h=p.address;_.push(h),r._crypto_core_ristretto255_scalar_sub(h,n,c);var y=E(p,a);return A(_),y}function Sr(e,t,a){var _=[];S(a),e=N(_,e,"p");var n,s=0|r._crypto_core_ristretto255_bytes();e.length!==s&&I(_,"invalid p length"),n=w(e),_.push(n),t=N(_,t,"q");var c,o=0|r._crypto_core_ristretto255_bytes();t.length!==o&&I(_,"invalid q length"),c=w(t),_.push(c);var p=new T(0|r._crypto_core_ristretto255_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_core_ristretto255_sub(h,n,c))){var y=E(p,a);return A(_),y}M(_,"input is an invalid element")}function Tr(e,t,a,_){var n=[];S(_),K(n,e,"hash_length"),("number"!=typeof e||(0|e)!==e||e<0)&&I(n,"hash_length must be an unsigned integer");var s=w(t=N(n,t,"message")),c=t.length;n.push(s);var o=null,p=0;null!=a&&(o=w(a=N(n,a,"key")),p=a.length,n.push(o));var h=new T(e|=0),y=h.address;if(n.push(y),!(0|r._crypto_generichash(y,e,s,c,0,o,p))){var i=E(h,_);return A(n),i}M(n,"invalid usage")}function wr(e,t,a,_,n){var s=[];S(n),K(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&I(s,"subkey_len must be an unsigned integer");var c=null,o=0;null!=t&&(c=w(t=N(s,t,"key")),o=t.length,s.push(c));var p=null,h=0;null!=a&&(a=N(s,a,"id"),h=0|r._crypto_generichash_blake2b_saltbytes(),a.length!==h&&I(s,"invalid id length"),p=w(a),s.push(p));var y=null,i=0;null!=_&&(_=N(s,_,"ctx"),i=0|r._crypto_generichash_blake2b_personalbytes(),_.length!==i&&I(s,"invalid ctx length"),y=w(_),s.push(y));var l=new T(0|e),u=l.address;if(s.push(u),!(0|r._crypto_generichash_blake2b_salt_personal(u,e,null,0,0,c,o,p,y))){var d=E(l,n);return A(s),d}M(s,"invalid usage")}function Yr(e,t,a){var _=[];S(a),K(_,e,"state_address"),K(_,t,"hash_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"hash_length must be an unsigned integer");var n=new T(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_generichash_final(e,s,t))){var c=(r._free(e),E(n,a));return A(_),c}M(_,"invalid usage")}function Br(e,t,a){var _=[];S(a);var n=null,s=0;null!=e&&(n=w(e=N(_,e,"key")),s=e.length,_.push(n)),K(_,t,"hash_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"hash_length must be an unsigned integer");var c=new T(357).address;if(!(0|r._crypto_generichash_init(c,n,s,t))){var o=c;return A(_),o}M(_,"invalid usage")}function Ar(e){var t=[];S(e);var a=new T(0|r._crypto_generichash_keybytes()),_=a.address;t.push(_),r._crypto_generichash_keygen(_);var n=E(a,e);return A(t),n}function Mr(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_generichash_update(e,n,s)&&M(_,"invalid usage"),A(_)}function Ir(e,t){var a=[];S(t);var _=w(e=N(a,e,"message")),n=e.length;a.push(_);var s=new T(0|r._crypto_hash_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash(c,_,n,0))){var o=E(s,t);return A(a),o}M(a,"invalid usage")}function Kr(e,t){var a=[];S(t);var _=w(e=N(a,e,"message")),n=e.length;a.push(_);var s=new T(0|r._crypto_hash_sha256_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash_sha256(c,_,n,0))){var o=E(s,t);return A(a),o}M(a,"invalid usage")}function Nr(e,t){var a=[];S(t),K(a,e,"state_address");var _=new T(0|r._crypto_hash_sha256_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_hash_sha256_final(e,n))){var s=(r._free(e),E(_,t));return A(a),s}M(a,"invalid usage")}function Lr(e){var t=[];S(e);var a=new T(104).address;if(!(0|r._crypto_hash_sha256_init(a))){var _=a;return A(t),_}M(t,"invalid usage")}function Or(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_hash_sha256_update(e,n,s)&&M(_,"invalid usage"),A(_)}function Ur(e,t){var a=[];S(t);var _=w(e=N(a,e,"message")),n=e.length;a.push(_);var s=new T(0|r._crypto_hash_sha512_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash_sha512(c,_,n,0))){var o=E(s,t);return A(a),o}M(a,"invalid usage")}function Pr(e,t){var a=[];S(t),K(a,e,"state_address");var _=new T(0|r._crypto_hash_sha512_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_hash_sha512_final(e,n))){var s=(r._free(e),E(_,t));return A(a),s}M(a,"invalid usage")}function Cr(e){var t=[];S(e);var a=new T(208).address;if(!(0|r._crypto_hash_sha512_init(a))){var _=a;return A(t),_}M(t,"invalid usage")}function Rr(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_hash_sha512_update(e,n,s)&&M(_,"invalid usage"),A(_)}function Xr(e,t,a){var _=[];S(a),e=N(_,e,"input");var n,s=0|r._crypto_ipcrypt_bytes();e.length!==s&&I(_,"invalid input length"),n=w(e),_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_ipcrypt_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_ipcrypt_bytes()),h=p.address;_.push(h),r._crypto_ipcrypt_decrypt(h,n,c);var y=E(p,a);return A(_),y}function Dr(e,t,a){var _=[];S(a),e=N(_,e,"input");var n,s=0|r._crypto_ipcrypt_bytes();e.length!==s&&I(_,"invalid input length"),n=w(e),_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_ipcrypt_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_ipcrypt_bytes()),h=p.address;_.push(h),r._crypto_ipcrypt_encrypt(h,n,c);var y=E(p,a);return A(_),y}function Gr(e){var t=[];S(e);var a=new T(0|r._crypto_ipcrypt_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_keygen(_);var n=E(a,e);return A(t),n}function Fr(e,t,a){var _=[];S(a),e=N(_,e,"input");var n,s=0|r._crypto_ipcrypt_nd_outputbytes();e.length!==s&&I(_,"invalid input length"),n=w(e),_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_ipcrypt_nd_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_ipcrypt_nd_inputbytes()),h=p.address;_.push(h),r._crypto_ipcrypt_nd_decrypt(h,n,c);var y=E(p,a);return A(_),y}function Vr(e,t,a,_){var n=[];S(_),e=N(n,e,"input");var s,c=0|r._crypto_ipcrypt_nd_inputbytes();e.length!==c&&I(n,"invalid input length"),s=w(e),n.push(s),t=N(n,t,"tweak");var o,p=0|r._crypto_ipcrypt_nd_tweakbytes();t.length!==p&&I(n,"invalid tweak length"),o=w(t),n.push(o),a=N(n,a,"key");var h,y=0|r._crypto_ipcrypt_nd_keybytes();a.length!==y&&I(n,"invalid key length"),h=w(a),n.push(h);var i=new T(0|r._crypto_ipcrypt_nd_outputbytes()),l=i.address;n.push(l),r._crypto_ipcrypt_nd_encrypt(l,s,o,h);var u=E(i,_);return A(n),u}function qr(e,t,a){var _=[];S(a),e=N(_,e,"input");var n,s=0|r._crypto_ipcrypt_ndx_outputbytes();e.length!==s&&I(_,"invalid input length"),n=w(e),_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_ipcrypt_ndx_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_ipcrypt_ndx_inputbytes()),h=p.address;_.push(h),r._crypto_ipcrypt_ndx_decrypt(h,n,c);var y=E(p,a);return A(_),y}function zr(e,t,a,_){var n=[];S(_),e=N(n,e,"input");var s,c=0|r._crypto_ipcrypt_ndx_inputbytes();e.length!==c&&I(n,"invalid input length"),s=w(e),n.push(s),t=N(n,t,"tweak");var o,p=0|r._crypto_ipcrypt_ndx_tweakbytes();t.length!==p&&I(n,"invalid tweak length"),o=w(t),n.push(o),a=N(n,a,"key");var h,y=0|r._crypto_ipcrypt_ndx_keybytes();a.length!==y&&I(n,"invalid key length"),h=w(a),n.push(h);var i=new T(0|r._crypto_ipcrypt_ndx_outputbytes()),l=i.address;n.push(l),r._crypto_ipcrypt_ndx_encrypt(l,s,o,h);var u=E(i,_);return A(n),u}function Wr(e){var t=[];S(e);var a=new T(0|r._crypto_ipcrypt_ndx_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_ndx_keygen(_);var n=E(a,e);return A(t),n}function Hr(e,t,a){var _=[];S(a),e=N(_,e,"input");var n,s=0|r._crypto_ipcrypt_pfx_bytes();e.length!==s&&I(_,"invalid input length"),n=w(e),_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_ipcrypt_pfx_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_ipcrypt_pfx_bytes()),h=p.address;_.push(h),r._crypto_ipcrypt_pfx_decrypt(h,n,c);var y=E(p,a);return A(_),y}function jr(e,t,a){var _=[];S(a),e=N(_,e,"input");var n,s=0|r._crypto_ipcrypt_pfx_bytes();e.length!==s&&I(_,"invalid input length"),n=w(e),_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_ipcrypt_pfx_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_ipcrypt_pfx_bytes()),h=p.address;_.push(h),r._crypto_ipcrypt_pfx_encrypt(h,n,c);var y=E(p,a);return A(_),y}function Jr(e){var t=[];S(e);var a=new T(0|r._crypto_ipcrypt_pfx_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_pfx_keygen(_);var n=E(a,e);return A(t),n}function Qr(e,t,a,_,n){var s=[];S(n),K(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&I(s,"subkey_len must be an unsigned integer"),K(s,t,"subkey_id");var c,o=0;if("bigint"==typeof t&&t>=BigInt(0)){const e=t>>BigInt(32);e>BigInt(4294967295)&&I(s,"subkey_id cannot be more than 64 bits"),o=Number(e),c=Number(t&BigInt(4294967295))}else"number"==typeof t&&(0|t)===t&&t>=0?c=t:I(s,"subkey_id must be an unsigned integer or bigint");"string"!=typeof a&&I(s,"ctx must be a string"),(a=l(a+"\0")).length-1!==r._crypto_kdf_contextbytes()&&I(s,"invalid ctx length");var p=w(a);a.length,s.push(p),_=N(s,_,"key");var h,y=0|r._crypto_kdf_keybytes();_.length!==y&&I(s,"invalid key length"),h=w(_),s.push(h);var i=new T(0|e),u=i.address;s.push(u),r._crypto_kdf_derive_from_key(u,e,c,o,p,h);var d=E(i,n);return A(s),d}function Zr(e){var t=[];S(e);var a=new T(0|r._crypto_kdf_keybytes()),_=a.address;t.push(_),r._crypto_kdf_keygen(_);var n=E(a,e);return A(t),n}function $r(e,t,a,_){var n=[];S(_),e=N(n,e,"clientPublicKey");var s,c=0|r._crypto_kx_publickeybytes();e.length!==c&&I(n,"invalid clientPublicKey length"),s=w(e),n.push(s),t=N(n,t,"clientSecretKey");var o,p=0|r._crypto_kx_secretkeybytes();t.length!==p&&I(n,"invalid clientSecretKey length"),o=w(t),n.push(o),a=N(n,a,"serverPublicKey");var h,y=0|r._crypto_kx_publickeybytes();a.length!==y&&I(n,"invalid serverPublicKey length"),h=w(a),n.push(h);var i=new T(0|r._crypto_kx_sessionkeybytes()),l=i.address;n.push(l);var u=new T(0|r._crypto_kx_sessionkeybytes()),d=u.address;if(n.push(d),!(0|r._crypto_kx_client_session_keys(l,d,s,o,h))){var v=E({sharedRx:i,sharedTx:u},_);return A(n),v}M(n,"invalid usage")}function et(e){var t=[];S(e);var a=new T(0|r._crypto_kx_publickeybytes()),_=a.address;t.push(_);var n=new T(0|r._crypto_kx_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_kx_keypair(_,s))){var c={publicKey:E(a,e),privateKey:E(n,e),keyType:"x25519"};return A(t),c}M(t,"internal error")}function rt(e,t){var a=[];S(t),e=N(a,e,"seed");var _,n=0|r._crypto_kx_seedbytes();e.length!==n&&I(a,"invalid seed length"),_=w(e),a.push(_);var s=new T(0|r._crypto_kx_publickeybytes()),c=s.address;a.push(c);var o=new T(0|r._crypto_kx_secretkeybytes()),p=o.address;if(a.push(p),!(0|r._crypto_kx_seed_keypair(c,p,_))){var h={publicKey:E(s,t),privateKey:E(o,t),keyType:"x25519"};return A(a),h}M(a,"internal error")}function tt(e,t,a,_){var n=[];S(_),e=N(n,e,"serverPublicKey");var s,c=0|r._crypto_kx_publickeybytes();e.length!==c&&I(n,"invalid serverPublicKey length"),s=w(e),n.push(s),t=N(n,t,"serverSecretKey");var o,p=0|r._crypto_kx_secretkeybytes();t.length!==p&&I(n,"invalid serverSecretKey length"),o=w(t),n.push(o),a=N(n,a,"clientPublicKey");var h,y=0|r._crypto_kx_publickeybytes();a.length!==y&&I(n,"invalid clientPublicKey length"),h=w(a),n.push(h);var i=new T(0|r._crypto_kx_sessionkeybytes()),l=i.address;n.push(l);var u=new T(0|r._crypto_kx_sessionkeybytes()),d=u.address;if(n.push(d),!(0|r._crypto_kx_server_session_keys(l,d,s,o,h))){var v=E({sharedRx:i,sharedTx:u},_);return A(n),v}M(n,"invalid usage")}function at(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_onetimeauth_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_onetimeauth_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_onetimeauth(h,n,s,0,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function _t(e,t){var a=[];S(t),K(a,e,"state_address");var _=new T(0|r._crypto_onetimeauth_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_onetimeauth_final(e,n))){var s=(r._free(e),E(_,t));return A(a),s}M(a,"invalid usage")}function nt(e,t){var a=[];S(t);var _=null;null!=e&&(_=w(e=N(a,e,"key")),e.length,a.push(_));var n=new T(144).address;if(!(0|r._crypto_onetimeauth_init(n,_))){var s=n;return A(a),s}M(a,"invalid usage")}function st(e){var t=[];S(e);var a=new T(0|r._crypto_onetimeauth_keybytes()),_=a.address;t.push(_),r._crypto_onetimeauth_keygen(_);var n=E(a,e);return A(t),n}function ct(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_onetimeauth_update(e,n,s)&&M(_,"invalid usage"),A(_)}function ot(e,t,a){var _=[];e=N(_,e,"hash");var n,s=0|r._crypto_onetimeauth_bytes();e.length!==s&&I(_,"invalid hash length"),n=w(e),_.push(n);var c=w(t=N(_,t,"message")),o=t.length;_.push(c),a=N(_,a,"key");var p,h=0|r._crypto_onetimeauth_keybytes();a.length!==h&&I(_,"invalid key length"),p=w(a),_.push(p);var y=!(0|r._crypto_onetimeauth_verify(n,c,o,0,p));return A(_),y}function pt(e,t,a,_,n,s,c){var o=[];S(c),K(o,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&I(o,"keyLength must be an unsigned integer");var p=w(t=N(o,t,"password")),h=t.length;o.push(p),a=N(o,a,"salt");var y,i=0|r._crypto_pwhash_saltbytes();a.length!==i&&I(o,"invalid salt length"),y=w(a),o.push(y),K(o,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&I(o,"opsLimit must be an unsigned integer"),K(o,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&I(o,"memLimit must be an unsigned integer"),K(o,s,"algorithm"),("number"!=typeof s||(0|s)!==s||s<0)&&I(o,"algorithm must be an unsigned integer");var l=new T(0|e),u=l.address;if(o.push(u),!(0|r._crypto_pwhash(u,e,0,p,h,0,y,_,0,n,s))){var d=E(l,c);return A(o),d}M(o,"invalid usage")}function ht(e,t,a,_,n,s){var c=[];S(s),K(c,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&I(c,"keyLength must be an unsigned integer");var o=w(t=N(c,t,"password")),p=t.length;c.push(o),a=N(c,a,"salt");var h,y=0|r._crypto_pwhash_scryptsalsa208sha256_saltbytes();a.length!==y&&I(c,"invalid salt length"),h=w(a),c.push(h),K(c,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&I(c,"opsLimit must be an unsigned integer"),K(c,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&I(c,"memLimit must be an unsigned integer");var i=new T(0|e),l=i.address;if(c.push(l),!(0|r._crypto_pwhash_scryptsalsa208sha256(l,e,0,o,p,0,h,_,0,n))){var u=E(i,s);return A(c),u}M(c,"invalid usage")}function yt(e,t,a,_,n,s,c){var o=[];S(c);var p=w(e=N(o,e,"password")),h=e.length;o.push(p);var y=w(t=N(o,t,"salt")),i=t.length;o.push(y),K(o,a,"opsLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&I(o,"opsLimit must be an unsigned integer"),K(o,_,"r"),("number"!=typeof _||(0|_)!==_||_<0)&&I(o,"r must be an unsigned integer"),K(o,n,"p"),("number"!=typeof n||(0|n)!==n||n<0)&&I(o,"p must be an unsigned integer"),K(o,s,"keyLength"),("number"!=typeof s||(0|s)!==s||s<0)&&I(o,"keyLength must be an unsigned integer");var l=new T(0|s),u=l.address;if(o.push(u),!(0|r._crypto_pwhash_scryptsalsa208sha256_ll(p,h,y,i,a,0,_,n,u,s))){var d=E(l,c);return A(o),d}M(o,"invalid usage")}function it(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"password")),c=e.length;n.push(s),K(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&I(n,"opsLimit must be an unsigned integer"),K(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&I(n,"memLimit must be an unsigned integer");var o=new T(0|r._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(n.push(o),!(0|r._crypto_pwhash_scryptsalsa208sha256_str(o,s,c,0,t,0,a))){var p=r.UTF8ToString(o);return A(n),p}M(n,"invalid usage")}function lt(e,t,a){var _=[];S(a),"string"!=typeof e&&I(_,"hashed_password must be a string");var n=w(e=l(e+"\0"));e.length,_.push(n);var s=w(t=N(_,t,"password")),c=t.length;_.push(s);var o=!(0|r._crypto_pwhash_scryptsalsa208sha256_str_verify(n,s,c,0));return A(_),o}function ut(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"password")),c=e.length;n.push(s),K(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&I(n,"opsLimit must be an unsigned integer"),K(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&I(n,"memLimit must be an unsigned integer");var o=new T(0|r._crypto_pwhash_strbytes()).address;if(n.push(o),!(0|r._crypto_pwhash_str(o,s,c,0,t,0,a))){var p=r.UTF8ToString(o);return A(n),p}M(n,"invalid usage")}function dt(e,t,a,_){var n=[];S(_),"string"!=typeof e&&I(n,"hashed_password must be a string");var s=w(e=l(e+"\0"));e.length,n.push(s),K(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&I(n,"opsLimit must be an unsigned integer"),K(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&I(n,"memLimit must be an unsigned integer");var c=!!(0|r._crypto_pwhash_str_needs_rehash(s,t,0,a));return A(n),c}function vt(e,t,a){var _=[];S(a),"string"!=typeof e&&I(_,"hashed_password must be a string");var n=w(e=l(e+"\0"));e.length,_.push(n);var s=w(t=N(_,t,"password")),c=t.length;_.push(s);var o=!(0|r._crypto_pwhash_str_verify(n,s,c,0));return A(_),o}function gt(e,t,a){var _=[];S(a),e=N(_,e,"privateKey");var n,s=0|r._crypto_scalarmult_scalarbytes();e.length!==s&&I(_,"invalid privateKey length"),n=w(e),_.push(n),t=N(_,t,"publicKey");var c,o=0|r._crypto_scalarmult_bytes();t.length!==o&&I(_,"invalid publicKey length"),c=w(t),_.push(c);var p=new T(0|r._crypto_scalarmult_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_scalarmult(h,n,c))){var y=E(p,a);return A(_),y}M(_,"weak public key")}function bt(e,t){var a=[];S(t),e=N(a,e,"privateKey");var _,n=0|r._crypto_scalarmult_scalarbytes();e.length!==n&&I(a,"invalid privateKey length"),_=w(e),a.push(_);var s=new T(0|r._crypto_scalarmult_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_base(c,_))){var o=E(s,t);return A(a),o}M(a,"unknown error")}function ft(e,t,a){var _=[];S(a),e=N(_,e,"n");var n,s=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==s&&I(_,"invalid n length"),n=w(e),_.push(n),t=N(_,t,"p");var c,o=0|r._crypto_scalarmult_ed25519_bytes();t.length!==o&&I(_,"invalid p length"),c=w(t),_.push(c);var p=new T(0|r._crypto_scalarmult_ed25519_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_scalarmult_ed25519(h,n,c))){var y=E(p,a);return A(_),y}M(_,"invalid point or scalar is 0")}function mt(e,t){var a=[];S(t),e=N(a,e,"scalar");var _,n=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==n&&I(a,"invalid scalar length"),_=w(e),a.push(_);var s=new T(0|r._crypto_scalarmult_ed25519_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_ed25519_base(c,_))){var o=E(s,t);return A(a),o}M(a,"scalar is 0")}function xt(e,t){var a=[];S(t),e=N(a,e,"scalar");var _,n=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==n&&I(a,"invalid scalar length"),_=w(e),a.push(_);var s=new T(0|r._crypto_scalarmult_ed25519_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_ed25519_base_noclamp(c,_))){var o=E(s,t);return A(a),o}M(a,"scalar is 0")}function Et(e,t,a){var _=[];S(a),e=N(_,e,"n");var n,s=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==s&&I(_,"invalid n length"),n=w(e),_.push(n),t=N(_,t,"p");var c,o=0|r._crypto_scalarmult_ed25519_bytes();t.length!==o&&I(_,"invalid p length"),c=w(t),_.push(c);var p=new T(0|r._crypto_scalarmult_ed25519_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_scalarmult_ed25519_noclamp(h,n,c))){var y=E(p,a);return A(_),y}M(_,"invalid point or scalar is 0")}function kt(e,t,a){var _=[];S(a),e=N(_,e,"scalar");var n,s=0|r._crypto_scalarmult_ristretto255_scalarbytes();e.length!==s&&I(_,"invalid scalar length"),n=w(e),_.push(n),t=N(_,t,"element");var c,o=0|r._crypto_scalarmult_ristretto255_bytes();t.length!==o&&I(_,"invalid element length"),c=w(t),_.push(c);var p=new T(0|r._crypto_scalarmult_ristretto255_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_scalarmult_ristretto255(h,n,c))){var y=E(p,a);return A(_),y}M(_,"result is identity element")}function St(e,t){var a=[];S(t),e=N(a,e,"scalar");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&I(a,"invalid scalar length"),_=w(e),a.push(_);var s=new T(0|r._crypto_core_ristretto255_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_ristretto255_base(c,_))){var o=E(s,t);return A(a),o}M(a,"scalar is 0")}function Tt(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"message")),c=e.length;n.push(s),t=N(n,t,"nonce");var o,p=0|r._crypto_secretbox_noncebytes();t.length!==p&&I(n,"invalid nonce length"),o=w(t),n.push(o),a=N(n,a,"key");var h,y=0|r._crypto_secretbox_keybytes();a.length!==y&&I(n,"invalid key length"),h=w(a),n.push(h);var i=new T(0|c),l=i.address;n.push(l);var u=new T(0|r._crypto_secretbox_macbytes()),d=u.address;if(n.push(d),!(0|r._crypto_secretbox_detached(l,d,s,c,0,o,h))){var v=E({mac:u,cipher:i},_);return A(n),v}M(n,"invalid usage")}function wt(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"message")),c=e.length;n.push(s),t=N(n,t,"nonce");var o,p=0|r._crypto_secretbox_noncebytes();t.length!==p&&I(n,"invalid nonce length"),o=w(t),n.push(o),a=N(n,a,"key");var h,y=0|r._crypto_secretbox_keybytes();a.length!==y&&I(n,"invalid key length"),h=w(a),n.push(h);var i=new T(c+r._crypto_secretbox_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_secretbox_easy(l,s,c,0,o,h))){var u=E(i,_);return A(n),u}M(n,"invalid usage")}function Yt(e){var t=[];S(e);var a=new T(0|r._crypto_secretbox_keybytes()),_=a.address;t.push(_),r._crypto_secretbox_keygen(_);var n=E(a,e);return A(t),n}function Bt(e,t,a,_,n){var s=[];S(n);var c=w(e=N(s,e,"ciphertext")),o=e.length;s.push(c),t=N(s,t,"mac");var p,h=0|r._crypto_secretbox_macbytes();t.length!==h&&I(s,"invalid mac length"),p=w(t),s.push(p),a=N(s,a,"nonce");var y,i=0|r._crypto_secretbox_noncebytes();a.length!==i&&I(s,"invalid nonce length"),y=w(a),s.push(y),_=N(s,_,"key");var l,u=0|r._crypto_secretbox_keybytes();_.length!==u&&I(s,"invalid key length"),l=w(_),s.push(l);var d=new T(0|o),v=d.address;if(s.push(v),!(0|r._crypto_secretbox_open_detached(v,c,p,o,0,y,l))){var g=E(d,n);return A(s),g}M(s,"wrong secret key for the given ciphertext")}function At(e,t,a,_){var n=[];S(_),e=N(n,e,"ciphertext");var s,c=r._crypto_secretbox_macbytes(),o=e.length;o<c&&I(n,"ciphertext is too short"),s=w(e),n.push(s),t=N(n,t,"nonce");var p,h=0|r._crypto_secretbox_noncebytes();t.length!==h&&I(n,"invalid nonce length"),p=w(t),n.push(p),a=N(n,a,"key");var y,i=0|r._crypto_secretbox_keybytes();a.length!==i&&I(n,"invalid key length"),y=w(a),n.push(y);var l=new T(o-r._crypto_secretbox_macbytes()|0),u=l.address;if(n.push(u),!(0|r._crypto_secretbox_open_easy(u,s,o,0,p,y))){var d=E(l,_);return A(n),d}M(n,"wrong secret key for the given ciphertext")}function Mt(e,t,a){var _=[];S(a),e=N(_,e,"header");var n,s=0|r._crypto_secretstream_xchacha20poly1305_headerbytes();e.length!==s&&I(_,"invalid header length"),n=w(e),_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_secretstream_xchacha20poly1305_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(52).address;if(!(0|r._crypto_secretstream_xchacha20poly1305_init_pull(p,n,c))){var h=p;return A(_),h}M(_,"invalid usage")}function It(e,t){var a=[];S(t),e=N(a,e,"key");var _,n=0|r._crypto_secretstream_xchacha20poly1305_keybytes();e.length!==n&&I(a,"invalid key length"),_=w(e),a.push(_);var s=new T(52).address,c=new T(0|r._crypto_secretstream_xchacha20poly1305_headerbytes()),o=c.address;if(a.push(o),!(0|r._crypto_secretstream_xchacha20poly1305_init_push(s,o,_))){var p={state:s,header:E(c,t)};return A(a),p}M(a,"invalid usage")}function Kt(e){var t=[];S(e);var a=new T(0|r._crypto_secretstream_xchacha20poly1305_keybytes()),_=a.address;t.push(_),r._crypto_secretstream_xchacha20poly1305_keygen(_);var n=E(a,e);return A(t),n}function Nt(e,t,a,_){var n=[];S(_),K(n,e,"state_address"),t=N(n,t,"cipher");var s,c=r._crypto_secretstream_xchacha20poly1305_abytes(),o=t.length;o<c&&I(n,"cipher is too short"),s=w(t),n.push(s);var p=null,h=0;null!=a&&(p=w(a=N(n,a,"ad")),h=a.length,n.push(p));var y=new T(o-r._crypto_secretstream_xchacha20poly1305_abytes()|0),i=y.address;n.push(i);var l,u=(l=Y(1),n.push(l),(u=0===r._crypto_secretstream_xchacha20poly1305_pull(e,i,0,l,s,o,0,p,h)&&{tag:r.HEAPU8[l],message:y})&&{message:E(u.message,_),tag:u.tag});return A(n),u}function Lt(e,t,a,_,n){var s=[];S(n),K(s,e,"state_address");var c=w(t=N(s,t,"message_chunk")),o=t.length;s.push(c);var p=null,h=0;null!=a&&(p=w(a=N(s,a,"ad")),h=a.length,s.push(p)),K(s,_,"tag"),("number"!=typeof _||(0|_)!==_||_<0)&&I(s,"tag must be an unsigned integer");var y=new T(o+r._crypto_secretstream_xchacha20poly1305_abytes()|0),i=y.address;if(s.push(i),!(0|r._crypto_secretstream_xchacha20poly1305_push(e,i,0,c,o,0,p,h,0,_))){var l=E(y,n);return A(s),l}M(s,"invalid usage")}function Ot(e,t){var a=[];return S(t),K(a,e,"state_address"),r._crypto_secretstream_xchacha20poly1305_rekey(e),A(a),!0}function Ut(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_shorthash_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_shorthash_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_shorthash(h,n,s,0,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function Pt(e){var t=[];S(e);var a=new T(0|r._crypto_shorthash_keybytes()),_=a.address;t.push(_),r._crypto_shorthash_keygen(_);var n=E(a,e);return A(t),n}function Ct(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,o=0|r._crypto_shorthash_siphashx24_keybytes();t.length!==o&&I(_,"invalid key length"),c=w(t),_.push(c);var p=new T(0|r._crypto_shorthash_siphashx24_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_shorthash_siphashx24(h,n,s,0,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function Rt(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"privateKey");var c,o=0|r._crypto_sign_secretkeybytes();t.length!==o&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var p=new T(e.length+r._crypto_sign_bytes()|0),h=p.address;if(_.push(h),!(0|r._crypto_sign(h,null,n,s,0,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function Xt(e,t,a){var _=[];S(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"privateKey");var c,o=0|r._crypto_sign_secretkeybytes();t.length!==o&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var p=new T(0|r._crypto_sign_bytes()),h=p.address;if(_.push(h),!(0|r._crypto_sign_detached(h,null,n,s,0,c))){var y=E(p,a);return A(_),y}M(_,"invalid usage")}function Dt(e,t){var a=[];S(t),e=N(a,e,"edPk");var _,n=0|r._crypto_sign_publickeybytes();e.length!==n&&I(a,"invalid edPk length"),_=w(e),a.push(_);var s=new T(0|r._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_pk_to_curve25519(c,_))){var o=E(s,t);return A(a),o}M(a,"invalid key")}function Gt(e,t){var a=[];S(t),e=N(a,e,"edSk");var _,n=0|r._crypto_sign_secretkeybytes();e.length!==n&&I(a,"invalid edSk length"),_=w(e),a.push(_);var s=new T(0|r._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_sk_to_curve25519(c,_))){var o=E(s,t);return A(a),o}M(a,"invalid key")}function Ft(e,t){var a=[];S(t),e=N(a,e,"privateKey");var _,n=0|r._crypto_sign_secretkeybytes();e.length!==n&&I(a,"invalid privateKey length"),_=w(e),a.push(_);var s=new T(0|r._crypto_sign_publickeybytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_sk_to_pk(c,_))){var o=E(s,t);return A(a),o}M(a,"invalid key")}function Vt(e,t){var a=[];S(t),e=N(a,e,"privateKey");var _,n=0|r._crypto_sign_secretkeybytes();e.length!==n&&I(a,"invalid privateKey length"),_=w(e),a.push(_);var s=new T(0|r._crypto_sign_seedbytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_sk_to_seed(c,_))){var o=E(s,t);return A(a),o}M(a,"invalid key")}function qt(e,t,a){var _=[];S(a),K(_,e,"state_address"),t=N(_,t,"privateKey");var n,s=0|r._crypto_sign_secretkeybytes();t.length!==s&&I(_,"invalid privateKey length"),n=w(t),_.push(n);var c=new T(0|r._crypto_sign_bytes()),o=c.address;if(_.push(o),!(0|r._crypto_sign_final_create(e,o,null,n))){var p=(r._free(e),E(c,a));return A(_),p}M(_,"invalid usage")}function zt(e,t,a,_){var n=[];S(_),K(n,e,"state_address"),t=N(n,t,"signature");var s,c=0|r._crypto_sign_bytes();t.length!==c&&I(n,"invalid signature length"),s=w(t),n.push(s),a=N(n,a,"publicKey");var o,p=0|r._crypto_sign_publickeybytes();a.length!==p&&I(n,"invalid publicKey length"),o=w(a),n.push(o);var h=!(0|r._crypto_sign_final_verify(e,s,o));return A(n),h}function Wt(e){var t=[];S(e);var a=new T(208).address;if(!(0|r._crypto_sign_init(a))){var _=a;return A(t),_}M(t,"internal error")}function Ht(e){var t=[];S(e);var a=new T(0|r._crypto_sign_publickeybytes()),_=a.address;t.push(_);var n=new T(0|r._crypto_sign_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_sign_keypair(_,s))){var c={publicKey:E(a,e),privateKey:E(n,e),keyType:"ed25519"};return A(t),c}M(t,"internal error")}function jt(e,t,a){var _=[];S(a),e=N(_,e,"signedMessage");var n,s=r._crypto_sign_bytes(),c=e.length;c<s&&I(_,"signedMessage is too short"),n=w(e),_.push(n),t=N(_,t,"publicKey");var o,p=0|r._crypto_sign_publickeybytes();t.length!==p&&I(_,"invalid publicKey length"),o=w(t),_.push(o);var h=new T(c-r._crypto_sign_bytes()|0),y=h.address;if(_.push(y),!(0|r._crypto_sign_open(y,null,n,c,0,o))){var i=E(h,a);return A(_),i}M(_,"incorrect signature for the given public key")}function Jt(e,t){var a=[];S(t),e=N(a,e,"seed");var _,n=0|r._crypto_sign_seedbytes();e.length!==n&&I(a,"invalid seed length"),_=w(e),a.push(_);var s=new T(0|r._crypto_sign_publickeybytes()),c=s.address;a.push(c);var o=new T(0|r._crypto_sign_secretkeybytes()),p=o.address;if(a.push(p),!(0|r._crypto_sign_seed_keypair(c,p,_))){var h={publicKey:E(s,t),privateKey:E(o,t),keyType:"ed25519"};return A(a),h}M(a,"invalid usage")}function Qt(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_sign_update(e,n,s,0)&&M(_,"invalid usage"),A(_)}function Zt(e,t,a){var _=[];e=N(_,e,"signature");var n,s=0|r._crypto_sign_bytes();e.length!==s&&I(_,"invalid signature length"),n=w(e),_.push(n);var c=w(t=N(_,t,"message")),o=t.length;_.push(c),a=N(_,a,"publicKey");var p,h=0|r._crypto_sign_publickeybytes();a.length!==h&&I(_,"invalid publicKey length"),p=w(a),_.push(p);var y=!(0|r._crypto_sign_verify_detached(n,c,o,0,p));return A(_),y}function $t(e,t,a,_){var n=[];S(_),K(n,e,"outLength"),("number"!=typeof e||(0|e)!==e||e<0)&&I(n,"outLength must be an unsigned integer"),t=N(n,t,"key");var s,c=0|r._crypto_stream_chacha20_keybytes();t.length!==c&&I(n,"invalid key length"),s=w(t),n.push(s),a=N(n,a,"nonce");var o,p=0|r._crypto_stream_chacha20_noncebytes();a.length!==p&&I(n,"invalid nonce length"),o=w(a),n.push(o);var h=new T(0|e),y=h.address;n.push(y),r._crypto_stream_chacha20(y,e,0,o,s);var i=E(h,_);return A(n),i}function ea(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"input_message")),c=e.length;n.push(s),t=N(n,t,"nonce");var o,p=0|r._crypto_stream_chacha20_ietf_noncebytes();t.length!==p&&I(n,"invalid nonce length"),o=w(t),n.push(o),a=N(n,a,"key");var h,y=0|r._crypto_stream_chacha20_ietf_keybytes();a.length!==y&&I(n,"invalid key length"),h=w(a),n.push(h);var i=new T(0|c),l=i.address;if(n.push(l),0===r._crypto_stream_chacha20_ietf_xor(l,s,c,0,o,h)){var u=E(i,_);return A(n),u}M(n,"invalid usage")}function ra(e,t,a,_,n){var s=[];S(n);var c=w(e=N(s,e,"input_message")),o=e.length;s.push(c),t=N(s,t,"nonce");var p,h=0|r._crypto_stream_chacha20_ietf_noncebytes();t.length!==h&&I(s,"invalid nonce length"),p=w(t),s.push(p),K(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&I(s,"nonce_increment must be an unsigned integer"),_=N(s,_,"key");var y,i=0|r._crypto_stream_chacha20_ietf_keybytes();_.length!==i&&I(s,"invalid key length"),y=w(_),s.push(y);var l=new T(0|o),u=l.address;if(s.push(u),0===r._crypto_stream_chacha20_ietf_xor_ic(u,c,o,0,p,a,y)){var d=E(l,n);return A(s),d}M(s,"invalid usage")}function ta(e){var t=[];S(e);var a=new T(0|r._crypto_stream_chacha20_keybytes()),_=a.address;t.push(_),r._crypto_stream_chacha20_keygen(_);var n=E(a,e);return A(t),n}function aa(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"input_message")),c=e.length;n.push(s),t=N(n,t,"nonce");var o,p=0|r._crypto_stream_chacha20_noncebytes();t.length!==p&&I(n,"invalid nonce length"),o=w(t),n.push(o),a=N(n,a,"key");var h,y=0|r._crypto_stream_chacha20_keybytes();a.length!==y&&I(n,"invalid key length"),h=w(a),n.push(h);var i=new T(0|c),l=i.address;if(n.push(l),0===r._crypto_stream_chacha20_xor(l,s,c,0,o,h)){var u=E(i,_);return A(n),u}M(n,"invalid usage")}function _a(e,t,a,_,n){var s=[];S(n);var c=w(e=N(s,e,"input_message")),o=e.length;s.push(c),t=N(s,t,"nonce");var p,h=0|r._crypto_stream_chacha20_noncebytes();t.length!==h&&I(s,"invalid nonce length"),p=w(t),s.push(p),K(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&I(s,"nonce_increment must be an unsigned integer"),_=N(s,_,"key");var y,i=0|r._crypto_stream_chacha20_keybytes();_.length!==i&&I(s,"invalid key length"),y=w(_),s.push(y);var l=new T(0|o),u=l.address;if(s.push(u),0===r._crypto_stream_chacha20_xor_ic(u,c,o,0,p,a,0,y)){var d=E(l,n);return A(s),d}M(s,"invalid usage")}function na(e){var t=[];S(e);var a=new T(0|r._crypto_stream_keybytes()),_=a.address;t.push(_),r._crypto_stream_keygen(_);var n=E(a,e);return A(t),n}function sa(e){var t=[];S(e);var a=new T(0|r._crypto_stream_xchacha20_keybytes()),_=a.address;t.push(_),r._crypto_stream_xchacha20_keygen(_);var n=E(a,e);return A(t),n}function ca(e,t,a,_){var n=[];S(_);var s=w(e=N(n,e,"input_message")),c=e.length;n.push(s),t=N(n,t,"nonce");var o,p=0|r._crypto_stream_xchacha20_noncebytes();t.length!==p&&I(n,"invalid nonce length"),o=w(t),n.push(o),a=N(n,a,"key");var h,y=0|r._crypto_stream_xchacha20_keybytes();a.length!==y&&I(n,"invalid key length"),h=w(a),n.push(h);var i=new T(0|c),l=i.address;if(n.push(l),0===r._crypto_stream_xchacha20_xor(l,s,c,0,o,h)){var u=E(i,_);return A(n),u}M(n,"invalid usage")}function oa(e,t,a,_,n){var s=[];S(n);var c=w(e=N(s,e,"input_message")),o=e.length;s.push(c),t=N(s,t,"nonce");var p,h=0|r._crypto_stream_xchacha20_noncebytes();t.length!==h&&I(s,"invalid nonce length"),p=w(t),s.push(p),K(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&I(s,"nonce_increment must be an unsigned integer"),_=N(s,_,"key");var y,i=0|r._crypto_stream_xchacha20_keybytes();_.length!==i&&I(s,"invalid key length"),y=w(_),s.push(y);var l=new T(0|o),u=l.address;if(s.push(u),0===r._crypto_stream_xchacha20_xor_ic(u,c,o,0,p,a,0,y)){var d=E(l,n);return A(s),d}M(s,"invalid usage")}function pa(e,t,a){var _=[];S(a),K(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&I(_,"out_length must be an unsigned integer");var n=w(t=N(_,t,"message")),s=t.length;_.push(n);var c=new T(e|=0),o=c.address;if(_.push(o),!(0|r._crypto_xof_shake128(o,e,n,s,0))){var p=E(c,a);return A(_),p}M(_,"invalid usage")}function ha(e){var t=[];S(e);var a=new T(256).address;if(!(0|r._crypto_xof_shake128_init(a))){var _=a;return A(t),_}M(t,"invalid usage")}function ya(e,t){var a=[];S(t),K(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"domain must be an unsigned integer");var _=new T(256).address;if(!(0|r._crypto_xof_shake128_init_with_domain(_,e))){var n=_;return A(a),n}M(a,"invalid usage")}function ia(e,t,a){var _=[];S(a),K(_,e,"state_address"),K(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"out_length must be an unsigned integer");var n=new T(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_shake128_squeeze(e,s,t))){var c=E(n,a);return A(_),c}M(_,"invalid usage")}function la(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_xof_shake128_update(e,n,s,0)&&M(_,"invalid usage"),A(_)}function ua(e,t,a){var _=[];S(a),K(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&I(_,"out_length must be an unsigned integer");var n=w(t=N(_,t,"message")),s=t.length;_.push(n);var c=new T(e|=0),o=c.address;if(_.push(o),!(0|r._crypto_xof_shake256(o,e,n,s,0))){var p=E(c,a);return A(_),p}M(_,"invalid usage")}function da(e){var t=[];S(e);var a=new T(256).address;if(!(0|r._crypto_xof_shake256_init(a))){var _=a;return A(t),_}M(t,"invalid usage")}function va(e,t){var a=[];S(t),K(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"domain must be an unsigned integer");var _=new T(256).address;if(!(0|r._crypto_xof_shake256_init_with_domain(_,e))){var n=_;return A(a),n}M(a,"invalid usage")}function ga(e,t,a){var _=[];S(a),K(_,e,"state_address"),K(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"out_length must be an unsigned integer");var n=new T(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_shake256_squeeze(e,s,t))){var c=E(n,a);return A(_),c}M(_,"invalid usage")}function ba(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_xof_shake256_update(e,n,s,0)&&M(_,"invalid usage"),A(_)}function fa(e,t,a){var _=[];S(a),K(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&I(_,"out_length must be an unsigned integer");var n=w(t=N(_,t,"message")),s=t.length;_.push(n);var c=new T(e|=0),o=c.address;if(_.push(o),!(0|r._crypto_xof_turboshake128(o,e,n,s,0))){var p=E(c,a);return A(_),p}M(_,"invalid usage")}function ma(e){var t=[];S(e);var a=new T(256).address;if(!(0|r._crypto_xof_turboshake128_init(a))){var _=a;return A(t),_}M(t,"invalid usage")}function xa(e,t){var a=[];S(t),K(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"domain must be an unsigned integer");var _=new T(256).address;if(!(0|r._crypto_xof_turboshake128_init_with_domain(_,e))){var n=_;return A(a),n}M(a,"invalid usage")}function Ea(e,t,a){var _=[];S(a),K(_,e,"state_address"),K(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"out_length must be an unsigned integer");var n=new T(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_turboshake128_squeeze(e,s,t))){var c=E(n,a);return A(_),c}M(_,"invalid usage")}function ka(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_xof_turboshake128_update(e,n,s,0)&&M(_,"invalid usage"),A(_)}function Sa(e,t,a){var _=[];S(a),K(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&I(_,"out_length must be an unsigned integer");var n=w(t=N(_,t,"message")),s=t.length;_.push(n);var c=new T(e|=0),o=c.address;if(_.push(o),!(0|r._crypto_xof_turboshake256(o,e,n,s,0))){var p=E(c,a);return A(_),p}M(_,"invalid usage")}function Ta(e){var t=[];S(e);var a=new T(256).address;if(!(0|r._crypto_xof_turboshake256_init(a))){var _=a;return A(t),_}M(t,"invalid usage")}function wa(e,t){var a=[];S(t),K(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"domain must be an unsigned integer");var _=new T(256).address;if(!(0|r._crypto_xof_turboshake256_init_with_domain(_,e))){var n=_;return A(a),n}M(a,"invalid usage")}function Ya(e,t,a){var _=[];S(a),K(_,e,"state_address"),K(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"out_length must be an unsigned integer");var n=new T(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_turboshake256_squeeze(e,s,t))){var c=E(n,a);return A(_),c}M(_,"invalid usage")}function Ba(e,t,a){var _=[];S(a),K(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_xof_turboshake256_update(e,n,s,0)&&M(_,"invalid usage"),A(_)}function Aa(e,t){var a=[];S(t),K(a,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"length must be an unsigned integer");var _=new T(0|e),n=_.address;a.push(n),r._randombytes_buf(n,e);var s=E(_,t);return A(a),s}function Ma(e,t,a){var _=[];S(a),K(_,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&I(_,"length must be an unsigned integer"),t=N(_,t,"seed");var n,s=0|r._randombytes_seedbytes();t.length!==s&&I(_,"invalid seed length"),n=w(t),_.push(n);var c=new T(0|e),o=c.address;_.push(o),r._randombytes_buf_deterministic(o,e,n);var p=E(c,a);return A(_),p}function Ia(e){S(e),r._randombytes_close()}function Ka(e){S(e);var t=r._randombytes_random()>>>0;return A([]),t}function Na(e,t){var a=[];S(t);for(var _=r._malloc(24),n=0;n<6;n++)r.setValue(_+4*n,r.Runtime.addFunction(e[["implementation_name","random","stir","uniform","buf","close"][n]]),"i32");0|r._randombytes_set_implementation(_)&&M(a,"unsupported implementation"),A(a)}function La(e){S(e),r._randombytes_stir()}function Oa(e,t){var a=[];S(t),K(a,e,"upper_bound"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"upper_bound must be an unsigned integer");var _=r._randombytes_uniform(e)>>>0;return A(a),_}function Ua(e){var t,a=[];16!==(e=N(a,e,"bin")).length&&I(a,"invalid bin length"),t=w(e),a.push(t);var _=new T(46).address;if(a.push(_),0!==r._sodium_bin2ip(_,46,t)){var n=r.UTF8ToString(_);return A(a),n}M(a,"conversion failed")}function Pa(e,t){var a=[];S(t),"string"!=typeof e&&I(a,"ip must be a string");var _=w(e=l(e+"\0")),n=e.length-1;a.push(_);var s=new T(16),c=s.address;if(a.push(c),!(0|r._sodium_ip2bin(c,_,n))){var o=E(s,t);return A(a),o}M(a,"invalid IP address")}function Ca(){var e=r._sodium_version_string(),t=r.UTF8ToString(e);return A([]),t}T.prototype.to_Uint8Array=function(){var e=new Uint8Array(this.length);return e.set(r.HEAPU8.subarray(this.address,this.address+this.length)),e},t.add=s,t.base64_variants=g,t.compare=h,t.from_base64=f,t.from_hex=d,t.from_string=l,t.increment=n,t.is_zero=c,t.libsodium=e,t.memcmp=p,t.memzero=o,t.output_formats=x,t.pad=y,t.unpad=i,t.ready=a,t.symbols=_,t.to_base64=m,t.to_hex=v,t.to_string=u;export default t;export{a as ready,s as add,h as compare,f as from_base64,d as from_hex,l as from_string,n as increment,c as is_zero,p as memcmp,o as memzero,y as pad,i as unpad,_ as symbols,m as to_base64,v as to_hex,u as to_string,x as output_formats,g as base64_variants,e as libsodium};
package/package.json CHANGED
@@ -1,10 +1,22 @@
1
1
  {
2
2
  "name": "libsodium-wrappers-sumo",
3
- "version": "0.7.15",
3
+ "version": "0.8.0",
4
4
  "description": "The Sodium cryptographic library compiled to pure JavaScript (wrappers, sumo variant)",
5
5
  "main": "dist/modules-sumo/libsodium-wrappers.js",
6
+ "module": "dist/modules-sumo-esm/libsodium-wrappers.mjs",
7
+ "types": "dist/modules-sumo/libsodium-wrappers.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/modules-sumo-esm/libsodium-wrappers.mjs",
11
+ "require": "./dist/modules-sumo/libsodium-wrappers.js",
12
+ "default": "./dist/modules-sumo/libsodium-wrappers.js"
13
+ }
14
+ },
15
+ "sideEffects": false,
6
16
  "files": [
7
17
  "dist/modules-sumo/libsodium-wrappers.js",
18
+ "dist/modules-sumo/libsodium-wrappers.d.ts",
19
+ "dist/modules-sumo-esm/libsodium-wrappers.mjs",
8
20
  "package.json"
9
21
  ],
10
22
  "repository": {
@@ -12,10 +24,10 @@
12
24
  "url": "git+https://github.com/jedisct1/libsodium.js.git"
13
25
  },
14
26
  "dependencies": {
15
- "libsodium-sumo": "^0.7.15"
27
+ "libsodium-sumo": "^0.8.0"
16
28
  },
17
29
  "devDependencies": {
18
- "terser": "^5.31.2"
30
+ "terser": "^5.44.1"
19
31
  },
20
32
  "keywords": [
21
33
  "crypto",
@@ -44,6 +56,7 @@
44
56
  "browser": {
45
57
  "fs": false,
46
58
  "path": false,
47
- "stream": false
59
+ "stream": false,
60
+ "crypto": false
48
61
  }
49
62
  }