libsodium-wrappers-sumo 0.8.3 → 0.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"libsodium-sumo";let r;const t={};if(void 0===globalThis.crypto||"function"!=typeof globalThis.crypto.getRandomValues)throw new Error("globalThis.crypto.getRandomValues is not available. The ESM build of libsodium requires a secure random source (available in all browsers and Node.js 19+).");const a=e({getRandomValue:function(){var e=new Uint32Array(1);return globalThis.crypto.getRandomValues(e),e[0]>>>0}}).then(function(e){r=e,t.libsodium=r,function(){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_sha3256","crypto_hash_sha3256_final","crypto_hash_sha3256_init","crypto_hash_sha3256_update","crypto_hash_sha3512","crypto_hash_sha3512_final","crypto_hash_sha3512_init","crypto_hash_sha3512_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_nd_keygen","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_kem_dec","crypto_kem_enc","crypto_kem_keypair","crypto_kem_mlkem768_dec","crypto_kem_mlkem768_enc","crypto_kem_mlkem768_enc_deterministic","crypto_kem_mlkem768_keypair","crypto_kem_mlkem768_seed_keypair","crypto_kem_primitive","crypto_kem_seed_keypair","crypto_kem_xwing_dec","crypto_kem_xwing_enc","crypto_kem_xwing_enc_deterministic","crypto_kem_xwing_keypair","crypto_kem_xwing_seed_keypair","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,U,O,C,R,P,X,D,G,F,V,q,H,z,W,j,J,Q,Z,$,ee,re,te,ae,_e,ne,se,ce,pe,oe,he,ye,ie,le,ue,de,ve,ge,be,fe,me,ke,xe,Ee,Te,Se,we,Ye,Be,Ke,Ae,Ie,Me,Ne,Le,Ue,Oe,Ce,Re,Pe,Xe,De,Ge,Fe,Ve,qe,He,ze,We,je,Je,Qe,Ze,$e,er,rr,tr,ar,_r,nr,sr,cr,pr,or,hr,yr,ir,lr,ur,dr,vr,gr,br,fr,mr,kr,xr,Er,Tr,Sr,wr,Yr,Br,Kr,Ar,Ir,Mr,Nr,Lr,Ur,Or,Cr,Rr,Pr,Xr,Dr,Gr,Fr,Vr,qr,Hr,zr,Wr,jr,Jr,Qr,Zr,$r,et,rt,tt,at,_t,nt,st,ct,pt,ot,ht,yt,it,lt,ut,dt,vt,gt,bt,ft,mt,kt,xt,Et,Tt,St,wt,Yt,Bt,Kt,At,It,Mt,Nt,Lt,Ut,Ot,Ct,Rt,Pt,Xt,Dt,Gt,Ft,Vt,qt,Ht,zt,Wt,jt,Jt,Qt,Zt,$t,ea,ra,ta,aa,_a,na,sa,ca,pa,oa,ha,ya,ia,la,ua,da,va,ga,ba,fa,ma,ka,xa,Ea,Ta,Sa,wa,Ya,Ba,Ka,Aa,Ia,Ma,Na,La,Ua,Oa,Ca,Ra,Pa,Xa,Da,Ga,Fa,Va,qa,Ha,za,Wa,ja,Ja,Qa,Za,$a,e_,r_,t_,a_,__,n_,s_,c_,p_],_=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_sha3256_BYTES","crypto_hash_sha3512_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_kem_CIPHERTEXTBYTES","crypto_kem_PUBLICKEYBYTES","crypto_kem_SECRETKEYBYTES","crypto_kem_SEEDBYTES","crypto_kem_SHAREDSECRETBYTES","crypto_kem_mlkem768_CIPHERTEXTBYTES","crypto_kem_mlkem768_PUBLICKEYBYTES","crypto_kem_mlkem768_SECRETKEYBYTES","crypto_kem_mlkem768_SEEDBYTES","crypto_kem_mlkem768_SHAREDSECRETBYTES","crypto_kem_xwing_CIPHERTEXTBYTES","crypto_kem_xwing_PUBLICKEYBYTES","crypto_kem_xwing_SECRETKEYBYTES","crypto_kem_xwing_SEEDBYTES","crypto_kem_xwing_SHAREDSECRETBYTES","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_kem_PRIMITIVE","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()))}}();var a=new Uint8Array([98,97,108,108,115]),_=t.randombytes_buf(t.crypto_secretbox_NONCEBYTES),n=t.randombytes_buf(t.crypto_secretbox_KEYBYTES),s=t.crypto_secretbox_easy(a,_,n),c=t.crypto_secretbox_open_easy(s,_,n);if(!t.memcmp(a,c))throw new Error("Initialization self-test failed")});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 p(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 o(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,p=0|e.length,o=new S(p+t);_.push(n),_.push(o.address);for(var h=o.address,y=o.address+p+t;h<y;h++)r.HEAPU8[h]=e[c],c+=s=1&~((65535&((p-=s)>>>48|p>>>32|p>>>16|p))-1>>16);return 0!==r._sodium_pad(n,o.address,e.length,t,o.length)&&A(_,"internal error"),o.length=r.getValue(n,"i32"),a=o.to_Uint8Array(),K(_),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)&&A(a,"unsupported/invalid padding"),e=(e=new Uint8Array(e)).subarray(0,r.getValue(n,"i32")),K(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,p=s.length,o=0;do{var h=s[--p];h>=240?(o=4,c=!0):h>=224?(o=3,c=!0):h>=192?(o=2,c=!0):h<128&&(o=1,c=!0)}while(!c);for(var y=o-(s.length-p),i=0;i<y;i++)_--,s.pop();a+=u(s)}}return a}function d(e){var t,a=[],_=new S((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)&&A(a,"invalid input"),r.getValue(s,"i32")-n!==e.length&&A(a,"incomplete input"),t=_.to_Uint8Array(),K(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 S(3*(e=N(_,e,"input")).length/4),s=w(e),c=Y(4),p=Y(4);return _.push(s),_.push(n.address),_.push(c),_.push(p),0!==r._sodium_base642bin(n.address,n.length,s,e.length,0,c,p,t)&&A(_,"invalid input"),r.getValue(p,"i32")-s!==e.length&&A(_,"incomplete input"),n.length=r.getValue(c,"i32"),a=n.to_Uint8Array(),K(_),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),p=new S(c+1),o=w(e);return a.push(o),a.push(p.address),0===r._sodium_bin2base64(p.address,p.length,o,e.length,t)&&A(a,"conversion failed"),p.length=c,_=u(p.to_Uint8Array()),K(a),_}function k(){return["uint8array","text","hex","base64"]}function x(e,r){var t=r||"uint8array";if(!E(t))throw new Error(t+" output format is not available");if(e instanceof S){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]]=x(e[a[n]],t);return _}if("string"==typeof e)return e;throw new TypeError("Cannot format output")}function E(e){for(var r=["uint8array","text","hex","base64"],t=0;t<r.length;t++)if(r[t]===e)return!0;return!1}function T(e){if(e){if("string"!=typeof e)throw new TypeError("When defined, the output format must be a string");if(!E(e))throw new Error(e+" is not a supported output format")}}function S(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 K(e){if(e)for(var r=0;r<e.length;r++)B(e[r])}function A(e,r){throw K(e),new Error(r)}function I(e,r){throw K(e),new TypeError(r)}function M(e,r,t){null==r&&I(e,t+" cannot be null or undefined")}function N(e,r,t){return M(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=[];T(s);var p=null;null!=e&&(p=w(e=N(c,e,"secret_nonce")),e.length,c.push(p)),t=N(c,t,"ciphertext");var o,h=r._crypto_aead_aegis128l_abytes(),y=t.length;y<h&&I(c,"ciphertext is too short"),o=w(t),c.push(o);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 S(y-r._crypto_aead_aegis128l_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_aegis128l_decrypt(f,null,p,o,y,0,i,l,0,u,v)){var m=x(b,s);return K(c),m}A(c,"ciphertext cannot be decrypted using that key")}function U(e,t,a,_,n,s,c){var p=[];T(c);var o=null;null!=e&&(o=w(e=N(p,e,"secret_nonce")),e.length,p.push(o));var h=w(t=N(p,t,"ciphertext")),y=t.length;p.push(h),a=N(p,a,"mac");var i,l=0|r._crypto_aead_aegis128l_abytes();a.length!==l&&I(p,"invalid mac length"),i=w(a),p.push(i);var u=null,d=0;null!=_&&(u=w(_=N(p,_,"additional_data")),d=_.length,p.push(u)),n=N(p,n,"public_nonce");var v,g=0|r._crypto_aead_aegis128l_npubbytes();n.length!==g&&I(p,"invalid public_nonce length"),v=w(n),p.push(v),s=N(p,s,"key");var b,f=0|r._crypto_aead_aegis128l_keybytes();s.length!==f&&I(p,"invalid key length"),b=w(s),p.push(b);var m=new S(0|y),k=m.address;if(p.push(k),0===r._crypto_aead_aegis128l_decrypt_detached(k,o,h,y,0,i,u,d,0,v,b)){var E=x(m,c);return K(p),E}A(p,"ciphertext cannot be decrypted using that key")}function O(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"message")),o=e.length;c.push(p);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 S(o+r._crypto_aead_aegis128l_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_aegis128l_encrypt(b,null,p,o,0,h,y,0,i,l,d)){var f=x(g,s);return K(c),f}A(c,"invalid usage")}function C(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"message")),o=e.length;c.push(p);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 S(0|o),b=g.address;c.push(b);var f=new S(0|r._crypto_aead_aegis128l_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_aegis128l_encrypt_detached(b,m,null,p,o,0,h,y,0,i,l,d)){var k=x({ciphertext:g,mac:f},s);return K(c),k}A(c,"invalid usage")}function R(e){var t=[];T(e);var a=new S(0|r._crypto_aead_aegis128l_keybytes()),_=a.address;t.push(_),r._crypto_aead_aegis128l_keygen(_);var n=x(a,e);return K(t),n}function P(e,t,a,_,n,s){var c=[];T(s);var p=null;null!=e&&(p=w(e=N(c,e,"secret_nonce")),e.length,c.push(p)),t=N(c,t,"ciphertext");var o,h=r._crypto_aead_aegis256_abytes(),y=t.length;y<h&&I(c,"ciphertext is too short"),o=w(t),c.push(o);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 S(y-r._crypto_aead_aegis256_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_aegis256_decrypt(f,null,p,o,y,0,i,l,0,u,v)){var m=x(b,s);return K(c),m}A(c,"ciphertext cannot be decrypted using that key")}function X(e,t,a,_,n,s,c){var p=[];T(c);var o=null;null!=e&&(o=w(e=N(p,e,"secret_nonce")),e.length,p.push(o));var h=w(t=N(p,t,"ciphertext")),y=t.length;p.push(h),a=N(p,a,"mac");var i,l=0|r._crypto_aead_aegis256_abytes();a.length!==l&&I(p,"invalid mac length"),i=w(a),p.push(i);var u=null,d=0;null!=_&&(u=w(_=N(p,_,"additional_data")),d=_.length,p.push(u)),n=N(p,n,"public_nonce");var v,g=0|r._crypto_aead_aegis256_npubbytes();n.length!==g&&I(p,"invalid public_nonce length"),v=w(n),p.push(v),s=N(p,s,"key");var b,f=0|r._crypto_aead_aegis256_keybytes();s.length!==f&&I(p,"invalid key length"),b=w(s),p.push(b);var m=new S(0|y),k=m.address;if(p.push(k),0===r._crypto_aead_aegis256_decrypt_detached(k,o,h,y,0,i,u,d,0,v,b)){var E=x(m,c);return K(p),E}A(p,"ciphertext cannot be decrypted using that key")}function D(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"message")),o=e.length;c.push(p);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 S(o+r._crypto_aead_aegis256_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_aegis256_encrypt(b,null,p,o,0,h,y,0,i,l,d)){var f=x(g,s);return K(c),f}A(c,"invalid usage")}function G(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"message")),o=e.length;c.push(p);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 S(0|o),b=g.address;c.push(b);var f=new S(0|r._crypto_aead_aegis256_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_aegis256_encrypt_detached(b,m,null,p,o,0,h,y,0,i,l,d)){var k=x({ciphertext:g,mac:f},s);return K(c),k}A(c,"invalid usage")}function F(e){var t=[];T(e);var a=new S(0|r._crypto_aead_aegis256_keybytes()),_=a.address;t.push(_),r._crypto_aead_aegis256_keygen(_);var n=x(a,e);return K(t),n}function V(e,t,a,_,n,s){var c=[];T(s);var p=null;null!=e&&(p=w(e=N(c,e,"secret_nonce")),e.length,c.push(p)),t=N(c,t,"ciphertext");var o,h=r._crypto_aead_chacha20poly1305_abytes(),y=t.length;y<h&&I(c,"ciphertext is too short"),o=w(t),c.push(o);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 S(y-r._crypto_aead_chacha20poly1305_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_chacha20poly1305_decrypt(f,null,p,o,y,0,i,l,0,u,v)){var m=x(b,s);return K(c),m}A(c,"ciphertext cannot be decrypted using that key")}function q(e,t,a,_,n,s,c){var p=[];T(c);var o=null;null!=e&&(o=w(e=N(p,e,"secret_nonce")),e.length,p.push(o));var h=w(t=N(p,t,"ciphertext")),y=t.length;p.push(h),a=N(p,a,"mac");var i,l=0|r._crypto_box_macbytes();a.length!==l&&I(p,"invalid mac length"),i=w(a),p.push(i);var u=null,d=0;null!=_&&(u=w(_=N(p,_,"additional_data")),d=_.length,p.push(u)),n=N(p,n,"public_nonce");var v,g=0|r._crypto_aead_chacha20poly1305_npubbytes();n.length!==g&&I(p,"invalid public_nonce length"),v=w(n),p.push(v),s=N(p,s,"key");var b,f=0|r._crypto_aead_chacha20poly1305_keybytes();s.length!==f&&I(p,"invalid key length"),b=w(s),p.push(b);var m=new S(0|y),k=m.address;if(p.push(k),0===r._crypto_aead_chacha20poly1305_decrypt_detached(k,o,h,y,0,i,u,d,0,v,b)){var E=x(m,c);return K(p),E}A(p,"ciphertext cannot be decrypted using that key")}function H(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"message")),o=e.length;c.push(p);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 S(o+r._crypto_aead_chacha20poly1305_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_chacha20poly1305_encrypt(b,null,p,o,0,h,y,0,i,l,d)){var f=x(g,s);return K(c),f}A(c,"invalid usage")}function z(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"message")),o=e.length;c.push(p);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 S(0|o),b=g.address;c.push(b);var f=new S(0|r._crypto_aead_chacha20poly1305_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_chacha20poly1305_encrypt_detached(b,m,null,p,o,0,h,y,0,i,l,d)){var k=x({ciphertext:g,mac:f},s);return K(c),k}A(c,"invalid usage")}function W(e,t,a,_,n,s){var c=[];T(s);var p=null;null!=e&&(p=w(e=N(c,e,"secret_nonce")),e.length,c.push(p)),t=N(c,t,"ciphertext");var o,h=r._crypto_aead_chacha20poly1305_ietf_abytes(),y=t.length;y<h&&I(c,"ciphertext is too short"),o=w(t),c.push(o);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 S(y-r._crypto_aead_chacha20poly1305_ietf_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_chacha20poly1305_ietf_decrypt(f,null,p,o,y,0,i,l,0,u,v)){var m=x(b,s);return K(c),m}A(c,"ciphertext cannot be decrypted using that key")}function j(e,t,a,_,n,s,c){var p=[];T(c);var o=null;null!=e&&(o=w(e=N(p,e,"secret_nonce")),e.length,p.push(o));var h=w(t=N(p,t,"ciphertext")),y=t.length;p.push(h),a=N(p,a,"mac");var i,l=0|r._crypto_box_macbytes();a.length!==l&&I(p,"invalid mac length"),i=w(a),p.push(i);var u=null,d=0;null!=_&&(u=w(_=N(p,_,"additional_data")),d=_.length,p.push(u)),n=N(p,n,"public_nonce");var v,g=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();n.length!==g&&I(p,"invalid public_nonce length"),v=w(n),p.push(v),s=N(p,s,"key");var b,f=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();s.length!==f&&I(p,"invalid key length"),b=w(s),p.push(b);var m=new S(0|y),k=m.address;if(p.push(k),0===r._crypto_aead_chacha20poly1305_ietf_decrypt_detached(k,o,h,y,0,i,u,d,0,v,b)){var E=x(m,c);return K(p),E}A(p,"ciphertext cannot be decrypted using that key")}function J(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"message")),o=e.length;c.push(p);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 S(o+r._crypto_aead_chacha20poly1305_ietf_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_chacha20poly1305_ietf_encrypt(b,null,p,o,0,h,y,0,i,l,d)){var f=x(g,s);return K(c),f}A(c,"invalid usage")}function Q(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"message")),o=e.length;c.push(p);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 S(0|o),b=g.address;c.push(b);var f=new S(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,p,o,0,h,y,0,i,l,d)){var k=x({ciphertext:g,mac:f},s);return K(c),k}A(c,"invalid usage")}function Z(e){var t=[];T(e);var a=new S(0|r._crypto_aead_chacha20poly1305_ietf_keybytes()),_=a.address;t.push(_),r._crypto_aead_chacha20poly1305_ietf_keygen(_);var n=x(a,e);return K(t),n}function $(e){var t=[];T(e);var a=new S(0|r._crypto_aead_chacha20poly1305_keybytes()),_=a.address;t.push(_),r._crypto_aead_chacha20poly1305_keygen(_);var n=x(a,e);return K(t),n}function ee(e,t,a,_,n,s){var c=[];T(s);var p=null;null!=e&&(p=w(e=N(c,e,"secret_nonce")),e.length,c.push(p)),t=N(c,t,"ciphertext");var o,h=r._crypto_aead_xchacha20poly1305_ietf_abytes(),y=t.length;y<h&&I(c,"ciphertext is too short"),o=w(t),c.push(o);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 S(y-r._crypto_aead_xchacha20poly1305_ietf_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_xchacha20poly1305_ietf_decrypt(f,null,p,o,y,0,i,l,0,u,v)){var m=x(b,s);return K(c),m}A(c,"ciphertext cannot be decrypted using that key")}function re(e,t,a,_,n,s,c){var p=[];T(c);var o=null;null!=e&&(o=w(e=N(p,e,"secret_nonce")),e.length,p.push(o));var h=w(t=N(p,t,"ciphertext")),y=t.length;p.push(h),a=N(p,a,"mac");var i,l=0|r._crypto_box_macbytes();a.length!==l&&I(p,"invalid mac length"),i=w(a),p.push(i);var u=null,d=0;null!=_&&(u=w(_=N(p,_,"additional_data")),d=_.length,p.push(u)),n=N(p,n,"public_nonce");var v,g=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();n.length!==g&&I(p,"invalid public_nonce length"),v=w(n),p.push(v),s=N(p,s,"key");var b,f=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();s.length!==f&&I(p,"invalid key length"),b=w(s),p.push(b);var m=new S(0|y),k=m.address;if(p.push(k),0===r._crypto_aead_xchacha20poly1305_ietf_decrypt_detached(k,o,h,y,0,i,u,d,0,v,b)){var E=x(m,c);return K(p),E}A(p,"ciphertext cannot be decrypted using that key")}function te(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"message")),o=e.length;c.push(p);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 S(o+r._crypto_aead_xchacha20poly1305_ietf_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_xchacha20poly1305_ietf_encrypt(b,null,p,o,0,h,y,0,i,l,d)){var f=x(g,s);return K(c),f}A(c,"invalid usage")}function ae(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"message")),o=e.length;c.push(p);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 S(0|o),b=g.address;c.push(b);var f=new S(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,p,o,0,h,y,0,i,l,d)){var k=x({ciphertext:g,mac:f},s);return K(c),k}A(c,"invalid usage")}function _e(e){var t=[];T(e);var a=new S(0|r._crypto_aead_xchacha20poly1305_ietf_keybytes()),_=a.address;t.push(_),r._crypto_aead_xchacha20poly1305_ietf_keygen(_);var n=x(a,e);return K(t),n}function ne(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,p=0|r._crypto_auth_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_auth_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_auth(h,n,s,0,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function se(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,p=0|r._crypto_auth_hmacsha256_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_auth_hmacsha256_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_auth_hmacsha256(h,n,s,0,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function ce(e,t){var a=[];T(t),M(a,e,"state_address");var _=new S(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),x(_,t));return K(a),s}A(a,"invalid usage")}function pe(e,t){var a=[];T(t);var _=null,n=0;null!=e&&(_=w(e=N(a,e,"key")),n=e.length,a.push(_));var s=new S(208).address;if(!(0|r._crypto_auth_hmacsha256_init(s,_,n))){var c=s;return K(a),c}A(a,"invalid usage")}function oe(e){var t=[];T(e);var a=new S(0|r._crypto_auth_hmacsha256_keybytes()),_=a.address;t.push(_),r._crypto_auth_hmacsha256_keygen(_);var n=x(a,e);return K(t),n}function he(e,t,a){var _=[];T(a),M(_,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)&&A(_,"invalid usage"),K(_)}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")),p=t.length;_.push(c),a=N(_,a,"key");var o,h=0|r._crypto_auth_hmacsha256_keybytes();a.length!==h&&I(_,"invalid key length"),o=w(a),_.push(o);var y=!(0|r._crypto_auth_hmacsha256_verify(n,c,p,0,o));return K(_),y}function ie(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,p=0|r._crypto_auth_hmacsha512_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_auth_hmacsha512_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_auth_hmacsha512(h,n,s,0,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function le(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,p=0|r._crypto_auth_hmacsha512256_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_auth_hmacsha512256_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_auth_hmacsha512256(h,n,s,0,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function ue(e,t){var a=[];T(t),M(a,e,"state_address");var _=new S(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),x(_,t));return K(a),s}A(a,"invalid usage")}function de(e,t){var a=[];T(t);var _=null,n=0;null!=e&&(_=w(e=N(a,e,"key")),n=e.length,a.push(_));var s=new S(416).address;if(!(0|r._crypto_auth_hmacsha512256_init(s,_,n))){var c=s;return K(a),c}A(a,"invalid usage")}function ve(e){var t=[];T(e);var a=new S(0|r._crypto_auth_hmacsha512256_keybytes()),_=a.address;t.push(_),r._crypto_auth_hmacsha512256_keygen(_);var n=x(a,e);return K(t),n}function ge(e,t,a){var _=[];T(a),M(_,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)&&A(_,"invalid usage"),K(_)}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")),p=t.length;_.push(c),a=N(_,a,"key");var o,h=0|r._crypto_auth_hmacsha512256_keybytes();a.length!==h&&I(_,"invalid key length"),o=w(a),_.push(o);var y=!(0|r._crypto_auth_hmacsha512256_verify(n,c,p,0,o));return K(_),y}function fe(e,t){var a=[];T(t),M(a,e,"state_address");var _=new S(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),x(_,t));return K(a),s}A(a,"invalid usage")}function me(e,t){var a=[];T(t);var _=null,n=0;null!=e&&(_=w(e=N(a,e,"key")),n=e.length,a.push(_));var s=new S(416).address;if(!(0|r._crypto_auth_hmacsha512_init(s,_,n))){var c=s;return K(a),c}A(a,"invalid usage")}function ke(e){var t=[];T(e);var a=new S(0|r._crypto_auth_hmacsha512_keybytes()),_=a.address;t.push(_),r._crypto_auth_hmacsha512_keygen(_);var n=x(a,e);return K(t),n}function xe(e,t,a){var _=[];T(a),M(_,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)&&A(_,"invalid usage"),K(_)}function Ee(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")),p=t.length;_.push(c),a=N(_,a,"key");var o,h=0|r._crypto_auth_hmacsha512_keybytes();a.length!==h&&I(_,"invalid key length"),o=w(a),_.push(o);var y=!(0|r._crypto_auth_hmacsha512_verify(n,c,p,0,o));return K(_),y}function Te(e){var t=[];T(e);var a=new S(0|r._crypto_auth_keybytes()),_=a.address;t.push(_),r._crypto_auth_keygen(_);var n=x(a,e);return K(t),n}function Se(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")),p=t.length;_.push(c),a=N(_,a,"key");var o,h=0|r._crypto_auth_keybytes();a.length!==h&&I(_,"invalid key length"),o=w(a),_.push(o);var y=!(0|r._crypto_auth_verify(n,c,p,0,o));return K(_),y}function we(e,t,a){var _=[];T(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,p=0|r._crypto_box_secretkeybytes();t.length!==p&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var o=new S(0|r._crypto_box_beforenmbytes()),h=o.address;if(_.push(h),!(0|r._crypto_box_beforenm(h,n,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function Ye(e,t,a){var _=[];T(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,p=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();t.length!==p&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var o=new S(0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes()),h=o.address;if(_.push(h),!(0|r._crypto_box_curve25519xchacha20poly1305_beforenm(h,n,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function Be(e,t,a,_,n){var s=[];T(n);var c=w(e=N(s,e,"message")),p=e.length;s.push(c),t=N(s,t,"nonce");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==h&&I(s,"invalid nonce length"),o=w(t),s.push(o),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 S(0|p),v=d.address;s.push(v);var g=new S(0|r._crypto_box_curve25519xchacha20poly1305_macbytes()),b=g.address;if(s.push(b),!(0|r._crypto_box_curve25519xchacha20poly1305_detached(v,b,c,p,0,o,y,l))){var f=x({ciphertext:d,mac:g},n);return K(s),f}A(s,"invalid usage")}function Ke(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"message")),c=e.length;n.push(s),t=N(n,t,"nonce");var p,o=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==o&&I(n,"invalid nonce length"),p=w(t),n.push(p),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 S(0|c),l=i.address;n.push(l);var u=new S(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,p,h))){var v=x({ciphertext:i,mac:u},_);return K(n),v}A(n,"invalid usage")}function Ae(e,t,a,_,n){var s=[];T(n);var c=w(e=N(s,e,"message")),p=e.length;s.push(c),t=N(s,t,"nonce");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==h&&I(s,"invalid nonce length"),o=w(t),s.push(o),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 S(p+r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),v=d.address;if(s.push(v),!(0|r._crypto_box_curve25519xchacha20poly1305_easy(v,c,p,0,o,y,l))){var g=x(d,n);return K(s),g}A(s,"invalid usage")}function Ie(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"message")),c=e.length;n.push(s),t=N(n,t,"nonce");var p,o=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==o&&I(n,"invalid nonce length"),p=w(t),n.push(p),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 S(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,p,h))){var u=x(i,_);return K(n),u}A(n,"invalid usage")}function Me(e){var t=[];T(e);var a=new S(0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes()),_=a.address;t.push(_);var n=new S(0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),s=n.address;t.push(s),r._crypto_box_curve25519xchacha20poly1305_keypair(_,s);var c=x({publicKey:a,privateKey:n,keyType:"curve25519"},e);return K(t),c}function Ne(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"ciphertext")),o=e.length;c.push(p),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 S(0|o),f=b.address;if(c.push(f),!(0|r._crypto_box_curve25519xchacha20poly1305_open_detached(f,p,h,o,0,i,u,v))){var m=x(b,s);return K(c),m}A(c,"incorrect key pair for the given ciphertext")}function Le(e,t,a,_,n){var s=[];T(n);var c=w(e=N(s,e,"ciphertext")),p=e.length;s.push(c),t=N(s,t,"mac");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_macbytes();t.length!==h&&I(s,"invalid mac length"),o=w(t),s.push(o),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 S(0|p),v=d.address;if(s.push(v),!(0|r._crypto_box_curve25519xchacha20poly1305_open_detached_afternm(v,c,o,p,0,y,l))){var g=x(d,n);return K(s),g}A(s,"incorrect secret key for the given ciphertext")}function Ue(e,t,a,_,n){var s=[];T(n),e=N(s,e,"ciphertext");var c,p=r._crypto_box_curve25519xchacha20poly1305_macbytes(),o=e.length;o<p&&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 S(o-r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),g=v.address;if(s.push(g),!(0|r._crypto_box_curve25519xchacha20poly1305_open_easy(g,c,o,0,h,i,u))){var b=x(v,n);return K(s),b}A(s,"incorrect key pair for the given ciphertext")}function Oe(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"ciphertext")),c=e.length;n.push(s),t=N(n,t,"nonce");var p,o=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==o&&I(n,"invalid nonce length"),p=w(t),n.push(p),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 S(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,p,h))){var u=x(i,_);return K(n),u}A(n,"incorrect secret key for the given ciphertext")}function Ce(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"publicKey");var c,p=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==p&&I(_,"invalid publicKey length"),c=w(t),_.push(c);var o=new S(s+r._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),h=o.address;_.push(h),r._crypto_box_curve25519xchacha20poly1305_seal(h,n,s,0,c);var y=x(o,a);return K(_),y}function Re(e,t,a,_){var n=[];T(_),e=N(n,e,"ciphertext");var s,c=r._crypto_box_curve25519xchacha20poly1305_sealbytes(),p=e.length;p<c&&I(n,"ciphertext is too short"),s=w(e),n.push(s),t=N(n,t,"publicKey");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==h&&I(n,"invalid publicKey length"),o=w(t),n.push(o),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 S(p-r._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),u=l.address;n.push(u),r._crypto_box_curve25519xchacha20poly1305_seal_open(u,s,p,0,o,y);var d=x(l,_);return K(n),d}function Pe(e,t){var a=[];T(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 S(0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes()),c=s.address;a.push(c);var p=new S(0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_box_curve25519xchacha20poly1305_seed_keypair(c,o,_))){var h={publicKey:x(s,t),privateKey:x(p,t),keyType:"x25519"};return K(a),h}A(a,"invalid usage")}function Xe(e,t,a,_,n){var s=[];T(n);var c=w(e=N(s,e,"message")),p=e.length;s.push(c),t=N(s,t,"nonce");var o,h=0|r._crypto_box_noncebytes();t.length!==h&&I(s,"invalid nonce length"),o=w(t),s.push(o),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 S(0|p),v=d.address;s.push(v);var g=new S(0|r._crypto_box_macbytes()),b=g.address;if(s.push(b),!(0|r._crypto_box_detached(v,b,c,p,0,o,y,l))){var f=x({ciphertext:d,mac:g},n);return K(s),f}A(s,"invalid usage")}function De(e,t,a,_,n){var s=[];T(n);var c=w(e=N(s,e,"message")),p=e.length;s.push(c),t=N(s,t,"nonce");var o,h=0|r._crypto_box_noncebytes();t.length!==h&&I(s,"invalid nonce length"),o=w(t),s.push(o),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 S(p+r._crypto_box_macbytes()|0),v=d.address;if(s.push(v),!(0|r._crypto_box_easy(v,c,p,0,o,y,l))){var g=x(d,n);return K(s),g}A(s,"invalid usage")}function Ge(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"message")),c=e.length;n.push(s),t=N(n,t,"nonce");var p,o=0|r._crypto_box_noncebytes();t.length!==o&&I(n,"invalid nonce length"),p=w(t),n.push(p),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 S(c+r._crypto_box_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_box_easy_afternm(l,s,c,0,p,h))){var u=x(i,_);return K(n),u}A(n,"invalid usage")}function Fe(e){var t=[];T(e);var a=new S(0|r._crypto_box_publickeybytes()),_=a.address;t.push(_);var n=new S(0|r._crypto_box_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_box_keypair(_,s))){var c={publicKey:x(a,e),privateKey:x(n,e),keyType:"x25519"};return K(t),c}A(t,"internal error")}function Ve(e,t,a,_,n,s){var c=[];T(s);var p=w(e=N(c,e,"ciphertext")),o=e.length;c.push(p),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 S(0|o),f=b.address;if(c.push(f),!(0|r._crypto_box_open_detached(f,p,h,o,0,i,u,v))){var m=x(b,s);return K(c),m}A(c,"incorrect key pair for the given ciphertext")}function qe(e,t,a,_,n){var s=[];T(n),e=N(s,e,"ciphertext");var c,p=r._crypto_box_macbytes(),o=e.length;o<p&&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 S(o-r._crypto_box_macbytes()|0),g=v.address;if(s.push(g),!(0|r._crypto_box_open_easy(g,c,o,0,h,i,u))){var b=x(v,n);return K(s),b}A(s,"incorrect key pair for the given ciphertext")}function He(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"ciphertext")),c=e.length;n.push(s),t=N(n,t,"nonce");var p,o=0|r._crypto_box_noncebytes();t.length!==o&&I(n,"invalid nonce length"),p=w(t),n.push(p),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 S(c-r._crypto_box_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_box_open_easy_afternm(l,s,c,0,p,h))){var u=x(i,_);return K(n),u}A(n,"incorrect secret key for the given ciphertext")}function ze(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"publicKey");var c,p=0|r._crypto_box_publickeybytes();t.length!==p&&I(_,"invalid publicKey length"),c=w(t),_.push(c);var o=new S(s+r._crypto_box_sealbytes()|0),h=o.address;if(_.push(h),!(0|r._crypto_box_seal(h,n,s,0,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function We(e,t,a,_){var n=[];T(_),e=N(n,e,"ciphertext");var s,c=r._crypto_box_sealbytes(),p=e.length;p<c&&I(n,"ciphertext is too short"),s=w(e),n.push(s),t=N(n,t,"publicKey");var o,h=0|r._crypto_box_publickeybytes();t.length!==h&&I(n,"invalid publicKey length"),o=w(t),n.push(o),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 S(p-r._crypto_box_sealbytes()|0),u=l.address;if(n.push(u),!(0|r._crypto_box_seal_open(u,s,p,0,o,y))){var d=x(l,_);return K(n),d}A(n,"incorrect key pair for the given ciphertext")}function je(e,t){var a=[];T(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 S(0|r._crypto_box_publickeybytes()),c=s.address;a.push(c);var p=new S(0|r._crypto_box_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_box_seed_keypair(c,o,_))){var h={publicKey:x(s,t),privateKey:x(p,t),keyType:"x25519"};return K(a),h}A(a,"invalid usage")}function Je(e,t,a){var _=[];T(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,p=0|r._crypto_core_ed25519_bytes();t.length!==p&&I(_,"invalid q length"),c=w(t),_.push(c);var o=new S(0|r._crypto_core_ed25519_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_core_ed25519_add(h,n,c))){var y=x(o,a);return K(_),y}A(_,"input is an invalid element")}function Qe(e,t){var a=[];T(t);var _=w(e=N(a,e,"r"));e.length,a.push(_);var n=new S(0|r._crypto_core_ed25519_bytes()),s=n.address;if(a.push(s),!(0|r._crypto_core_ed25519_from_hash(s,_))){var c=x(n,t);return K(a),c}A(a,"invalid usage")}function Ze(e,t){var a=[];T(t);var _=w(e=N(a,e,"r"));e.length,a.push(_);var n=new S(0|r._crypto_core_ed25519_bytes()),s=n.address;if(a.push(s),!(0|r._crypto_core_ed25519_from_uniform(s,_))){var c=x(n,t);return K(a),c}A(a,"invalid usage")}function $e(e,t){var a=[];T(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 K(a),s}function er(e){var t=[];T(e);var a=new S(0|r._crypto_core_ed25519_bytes()),_=a.address;t.push(_),r._crypto_core_ed25519_random(_);var n=x(a,e);return K(t),n}function rr(e,t,a){var _=[];T(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,p=0|r._crypto_core_ed25519_scalarbytes();t.length!==p&&I(_,"invalid y length"),c=w(t),_.push(c);var o=new S(0|r._crypto_core_ed25519_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ed25519_scalar_add(h,n,c);var y=x(o,a);return K(_),y}function tr(e,t){var a=[];T(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 S(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ed25519_scalar_complement(c,_);var p=x(s,t);return K(a),p}function ar(e,t){var a=[];T(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 S(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_core_ed25519_scalar_invert(c,_))){var p=x(s,t);return K(a),p}A(a,"invalid reciprocate")}function _r(e,t,a){var _=[];T(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,p=0|r._crypto_core_ed25519_scalarbytes();t.length!==p&&I(_,"invalid y length"),c=w(t),_.push(c);var o=new S(0|r._crypto_core_ed25519_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ed25519_scalar_mul(h,n,c);var y=x(o,a);return K(_),y}function nr(e,t){var a=[];T(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 S(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ed25519_scalar_negate(c,_);var p=x(s,t);return K(a),p}function sr(e){var t=[];T(e);var a=new S(0|r._crypto_core_ed25519_scalarbytes()),_=a.address;t.push(_),r._crypto_core_ed25519_scalar_random(_);var n=x(a,e);return K(t),n}function cr(e,t){var a=[];T(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 S(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ed25519_scalar_reduce(c,_);var p=x(s,t);return K(a),p}function pr(e,t,a){var _=[];T(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,p=0|r._crypto_core_ed25519_scalarbytes();t.length!==p&&I(_,"invalid y length"),c=w(t),_.push(c);var o=new S(0|r._crypto_core_ed25519_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ed25519_scalar_sub(h,n,c);var y=x(o,a);return K(_),y}function or(e,t,a){var _=[];T(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,p=0|r._crypto_core_ed25519_bytes();t.length!==p&&I(_,"invalid q length"),c=w(t),_.push(c);var o=new S(0|r._crypto_core_ed25519_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_core_ed25519_sub(h,n,c))){var y=x(o,a);return K(_),y}A(_,"input is an invalid element")}function hr(e,t,a,_){var n=[];T(_),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 p,o=0|r._crypto_core_hchacha20_keybytes();t.length!==o&&I(n,"invalid privateKey length"),p=w(t),n.push(p);var h=null;null!=a&&(h=w(a=N(n,a,"constant")),a.length,n.push(h));var y=new S(0|r._crypto_core_hchacha20_outputbytes()),i=y.address;if(n.push(i),!(0|r._crypto_core_hchacha20(i,s,p,h))){var l=x(y,_);return K(n),l}A(n,"invalid usage")}function yr(e,t,a,_){var n=[];T(_),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 p,o=0|r._crypto_core_hsalsa20_keybytes();t.length!==o&&I(n,"invalid privateKey length"),p=w(t),n.push(p);var h=null;null!=a&&(h=w(a=N(n,a,"constant")),a.length,n.push(h));var y=new S(0|r._crypto_core_hsalsa20_outputbytes()),i=y.address;if(n.push(i),!(0|r._crypto_core_hsalsa20(i,s,p,h))){var l=x(y,_);return K(n),l}A(n,"invalid usage")}function ir(e,t,a){var _=[];T(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,p=0|r._crypto_core_ristretto255_bytes();t.length!==p&&I(_,"invalid q length"),c=w(t),_.push(c);var o=new S(0|r._crypto_core_ristretto255_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_core_ristretto255_add(h,n,c))){var y=x(o,a);return K(_),y}A(_,"input is an invalid element")}function lr(e,t){var a=[];T(t);var _=w(e=N(a,e,"r"));e.length,a.push(_);var n=new S(0|r._crypto_core_ristretto255_bytes()),s=n.address;if(a.push(s),!(0|r._crypto_core_ristretto255_from_hash(s,_))){var c=x(n,t);return K(a),c}A(a,"invalid usage")}function ur(e,t){var a=[];T(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 K(a),s}function dr(e){var t=[];T(e);var a=new S(0|r._crypto_core_ristretto255_bytes()),_=a.address;t.push(_),r._crypto_core_ristretto255_random(_);var n=x(a,e);return K(t),n}function vr(e,t,a){var _=[];T(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,p=0|r._crypto_core_ristretto255_scalarbytes();t.length!==p&&I(_,"invalid y length"),c=w(t),_.push(c);var o=new S(0|r._crypto_core_ristretto255_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ristretto255_scalar_add(h,n,c);var y=x(o,a);return K(_),y}function gr(e,t){var a=[];T(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 S(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ristretto255_scalar_complement(c,_);var p=x(s,t);return K(a),p}function br(e,t){var a=[];T(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 S(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_core_ristretto255_scalar_invert(c,_))){var p=x(s,t);return K(a),p}A(a,"invalid reciprocate")}function fr(e,t,a){var _=[];T(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,p=0|r._crypto_core_ristretto255_scalarbytes();t.length!==p&&I(_,"invalid y length"),c=w(t),_.push(c);var o=new S(0|r._crypto_core_ristretto255_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ristretto255_scalar_mul(h,n,c);var y=x(o,a);return K(_),y}function mr(e,t){var a=[];T(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 S(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ristretto255_scalar_negate(c,_);var p=x(s,t);return K(a),p}function kr(e){var t=[];T(e);var a=new S(0|r._crypto_core_ristretto255_scalarbytes()),_=a.address;t.push(_),r._crypto_core_ristretto255_scalar_random(_);var n=x(a,e);return K(t),n}function xr(e,t){var a=[];T(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 S(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ristretto255_scalar_reduce(c,_);var p=x(s,t);return K(a),p}function Er(e,t,a){var _=[];T(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,p=0|r._crypto_core_ristretto255_scalarbytes();t.length!==p&&I(_,"invalid y length"),c=w(t),_.push(c);var o=new S(0|r._crypto_core_ristretto255_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ristretto255_scalar_sub(h,n,c);var y=x(o,a);return K(_),y}function Tr(e,t,a){var _=[];T(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,p=0|r._crypto_core_ristretto255_bytes();t.length!==p&&I(_,"invalid q length"),c=w(t),_.push(c);var o=new S(0|r._crypto_core_ristretto255_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_core_ristretto255_sub(h,n,c))){var y=x(o,a);return K(_),y}A(_,"input is an invalid element")}function Sr(e,t,a,_){var n=[];T(_),M(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 p=null,o=0;null!=a&&(p=w(a=N(n,a,"key")),o=a.length,n.push(p));var h=new S(e|=0),y=h.address;if(n.push(y),!(0|r._crypto_generichash(y,e,s,c,0,p,o))){var i=x(h,_);return K(n),i}A(n,"invalid usage")}function wr(e,t,a,_,n){var s=[];T(n),M(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&I(s,"subkey_len must be an unsigned integer");var c=null,p=0;null!=t&&(c=w(t=N(s,t,"key")),p=t.length,s.push(c));var o=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"),o=w(a),s.push(o));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 S(0|e),u=l.address;if(s.push(u),!(0|r._crypto_generichash_blake2b_salt_personal(u,e,null,0,0,c,p,o,y))){var d=x(l,n);return K(s),d}A(s,"invalid usage")}function Yr(e,t,a){var _=[];T(a),M(_,e,"state_address"),M(_,t,"hash_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"hash_length must be an unsigned integer");var n=new S(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_generichash_final(e,s,t))){var c=(r._free(e),x(n,a));return K(_),c}A(_,"invalid usage")}function Br(e,t,a){var _=[];T(a);var n=null,s=0;null!=e&&(n=w(e=N(_,e,"key")),s=e.length,_.push(n)),M(_,t,"hash_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"hash_length must be an unsigned integer");var c=new S(357).address;if(!(0|r._crypto_generichash_init(c,n,s,t))){var p=c;return K(_),p}A(_,"invalid usage")}function Kr(e){var t=[];T(e);var a=new S(0|r._crypto_generichash_keybytes()),_=a.address;t.push(_),r._crypto_generichash_keygen(_);var n=x(a,e);return K(t),n}function Ar(e,t,a){var _=[];T(a),M(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_generichash_update(e,n,s)&&A(_,"invalid usage"),K(_)}function Ir(e,t){var a=[];T(t);var _=w(e=N(a,e,"message")),n=e.length;a.push(_);var s=new S(0|r._crypto_hash_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash(c,_,n,0))){var p=x(s,t);return K(a),p}A(a,"invalid usage")}function Mr(e,t){var a=[];T(t);var _=w(e=N(a,e,"message")),n=e.length;a.push(_);var s=new S(0|r._crypto_hash_sha256_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash_sha256(c,_,n,0))){var p=x(s,t);return K(a),p}A(a,"invalid usage")}function Nr(e,t){var a=[];T(t),M(a,e,"state_address");var _=new S(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),x(_,t));return K(a),s}A(a,"invalid usage")}function Lr(e){var t=[];T(e);var a=new S(104).address;if(!(0|r._crypto_hash_sha256_init(a))){var _=a;return K(t),_}A(t,"invalid usage")}function Ur(e,t,a){var _=[];T(a),M(_,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)&&A(_,"invalid usage"),K(_)}function Or(e,t){var a=[];T(t);var _=w(e=N(a,e,"message")),n=e.length;a.push(_);var s=new S(0|r._crypto_hash_sha3256_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash_sha3256(c,_,n))){var p=x(s,t);return K(a),p}A(a,"invalid usage")}function Cr(e,t){var a=[];T(t),M(a,e,"state_address");var _=new S(0|r._crypto_hash_sha3256_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_hash_sha3256_final(e,n))){var s=(r._free(e),x(_,t));return K(a),s}A(a,"invalid usage")}function Rr(e){var t=[];T(e);var a=new S(256).address;if(!(0|r._crypto_hash_sha3256_init(a))){var _=a;return K(t),_}A(t,"invalid usage")}function Pr(e,t,a){var _=[];T(a),M(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_hash_sha3256_update(e,n,s)&&A(_,"invalid usage"),K(_)}function Xr(e,t){var a=[];T(t);var _=w(e=N(a,e,"message")),n=e.length;a.push(_);var s=new S(0|r._crypto_hash_sha3512_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash_sha3512(c,_,n))){var p=x(s,t);return K(a),p}A(a,"invalid usage")}function Dr(e,t){var a=[];T(t),M(a,e,"state_address");var _=new S(0|r._crypto_hash_sha3512_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_hash_sha3512_final(e,n))){var s=(r._free(e),x(_,t));return K(a),s}A(a,"invalid usage")}function Gr(e){var t=[];T(e);var a=new S(256).address;if(!(0|r._crypto_hash_sha3512_init(a))){var _=a;return K(t),_}A(t,"invalid usage")}function Fr(e,t,a){var _=[];T(a),M(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_hash_sha3512_update(e,n,s)&&A(_,"invalid usage"),K(_)}function Vr(e,t){var a=[];T(t);var _=w(e=N(a,e,"message")),n=e.length;a.push(_);var s=new S(0|r._crypto_hash_sha512_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash_sha512(c,_,n,0))){var p=x(s,t);return K(a),p}A(a,"invalid usage")}function qr(e,t){var a=[];T(t),M(a,e,"state_address");var _=new S(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),x(_,t));return K(a),s}A(a,"invalid usage")}function Hr(e){var t=[];T(e);var a=new S(208).address;if(!(0|r._crypto_hash_sha512_init(a))){var _=a;return K(t),_}A(t,"invalid usage")}function zr(e,t,a){var _=[];T(a),M(_,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)&&A(_,"invalid usage"),K(_)}function Wr(e,t,a){var _=[];T(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,p=0|r._crypto_ipcrypt_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_ipcrypt_bytes()),h=o.address;_.push(h),r._crypto_ipcrypt_decrypt(h,n,c);var y=x(o,a);return K(_),y}function jr(e,t,a){var _=[];T(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,p=0|r._crypto_ipcrypt_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_ipcrypt_bytes()),h=o.address;_.push(h),r._crypto_ipcrypt_encrypt(h,n,c);var y=x(o,a);return K(_),y}function Jr(e){var t=[];T(e);var a=new S(0|r._crypto_ipcrypt_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_keygen(_);var n=x(a,e);return K(t),n}function Qr(e,t,a){var _=[];T(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,p=0|r._crypto_ipcrypt_nd_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_ipcrypt_nd_inputbytes()),h=o.address;_.push(h),r._crypto_ipcrypt_nd_decrypt(h,n,c);var y=x(o,a);return K(_),y}function Zr(e,t,a,_){var n=[];T(_),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 p,o=0|r._crypto_ipcrypt_nd_tweakbytes();t.length!==o&&I(n,"invalid tweak length"),p=w(t),n.push(p),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 S(0|r._crypto_ipcrypt_nd_outputbytes()),l=i.address;n.push(l),r._crypto_ipcrypt_nd_encrypt(l,s,p,h);var u=x(i,_);return K(n),u}function $r(e){var t=[];T(e);var a=new S(0|r._crypto_ipcrypt_nd_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_nd_keygen(_);var n=x(a,e);return K(t),n}function et(e,t,a){var _=[];T(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,p=0|r._crypto_ipcrypt_ndx_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_ipcrypt_ndx_inputbytes()),h=o.address;_.push(h),r._crypto_ipcrypt_ndx_decrypt(h,n,c);var y=x(o,a);return K(_),y}function rt(e,t,a,_){var n=[];T(_),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 p,o=0|r._crypto_ipcrypt_ndx_tweakbytes();t.length!==o&&I(n,"invalid tweak length"),p=w(t),n.push(p),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 S(0|r._crypto_ipcrypt_ndx_outputbytes()),l=i.address;n.push(l),r._crypto_ipcrypt_ndx_encrypt(l,s,p,h);var u=x(i,_);return K(n),u}function tt(e){var t=[];T(e);var a=new S(0|r._crypto_ipcrypt_ndx_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_ndx_keygen(_);var n=x(a,e);return K(t),n}function at(e,t,a){var _=[];T(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,p=0|r._crypto_ipcrypt_pfx_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_ipcrypt_pfx_bytes()),h=o.address;_.push(h),r._crypto_ipcrypt_pfx_decrypt(h,n,c);var y=x(o,a);return K(_),y}function _t(e,t,a){var _=[];T(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,p=0|r._crypto_ipcrypt_pfx_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_ipcrypt_pfx_bytes()),h=o.address;_.push(h),r._crypto_ipcrypt_pfx_encrypt(h,n,c);var y=x(o,a);return K(_),y}function nt(e){var t=[];T(e);var a=new S(0|r._crypto_ipcrypt_pfx_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_pfx_keygen(_);var n=x(a,e);return K(t),n}function st(e,t,a,_,n){var s=[];T(n),M(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&I(s,"subkey_len must be an unsigned integer"),M(s,t,"subkey_id");var c,p=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"),p=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 o=w(a);a.length,s.push(o),_=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 S(0|e),u=i.address;s.push(u),r._crypto_kdf_derive_from_key(u,e,c,p,o,h);var d=x(i,n);return K(s),d}function ct(e){var t=[];T(e);var a=new S(0|r._crypto_kdf_keybytes()),_=a.address;t.push(_),r._crypto_kdf_keygen(_);var n=x(a,e);return K(t),n}function pt(e,t,a){var _=[];T(a),e=N(_,e,"ciphertext");var n,s=0|r._crypto_kem_ciphertextbytes();e.length!==s&&I(_,"invalid ciphertext length"),n=w(e),_.push(n),t=N(_,t,"privateKey");var c,p=0|r._crypto_kem_secretkeybytes();t.length!==p&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var o=new S(0|r._crypto_kem_sharedsecretbytes()),h=o.address;if(_.push(h),!(0|r._crypto_kem_dec(h,n,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function ot(e,t){var a=[];T(t),e=N(a,e,"publicKey");var _,n=0|r._crypto_kem_publickeybytes();e.length!==n&&I(a,"invalid publicKey length"),_=w(e),a.push(_);var s=new S(0|r._crypto_kem_ciphertextbytes()),c=s.address;a.push(c);var p=new S(0|r._crypto_kem_sharedsecretbytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_enc(c,o,_))){var h=x({ciphertext:s,sharedSecret:p},t);return K(a),h}A(a,"invalid usage")}function ht(e){var t=[];T(e);var a=new S(0|r._crypto_kem_publickeybytes()),_=a.address;t.push(_);var n=new S(0|r._crypto_kem_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_kem_keypair(_,s))){var c={publicKey:x(a,e),privateKey:x(n,e),keyType:"xwing"};return K(t),c}A(t,"internal error")}function yt(e,t,a){var _=[];T(a),e=N(_,e,"ciphertext");var n,s=0|r._crypto_kem_mlkem768_ciphertextbytes();e.length!==s&&I(_,"invalid ciphertext length"),n=w(e),_.push(n),t=N(_,t,"privateKey");var c,p=0|r._crypto_kem_mlkem768_secretkeybytes();t.length!==p&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var o=new S(0|r._crypto_kem_mlkem768_sharedsecretbytes()),h=o.address;if(_.push(h),!(0|r._crypto_kem_mlkem768_dec(h,n,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function it(e,t){var a=[];T(t),e=N(a,e,"publicKey");var _,n=0|r._crypto_kem_mlkem768_publickeybytes();e.length!==n&&I(a,"invalid publicKey length"),_=w(e),a.push(_);var s=new S(0|r._crypto_kem_mlkem768_ciphertextbytes()),c=s.address;a.push(c);var p=new S(0|r._crypto_kem_mlkem768_sharedsecretbytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_mlkem768_enc(c,o,_))){var h=x({ciphertext:s,sharedSecret:p},t);return K(a),h}A(a,"invalid usage")}function lt(e,t,a){var _=[];T(a),e=N(_,e,"publicKey");var n,s,c=0|r._crypto_kem_mlkem768_publickeybytes();e.length!==c&&I(_,"invalid publicKey length"),n=w(e),_.push(n),32!==(t=N(_,t,"seed")).length&&I(_,"invalid seed length"),s=w(t),_.push(s);var p=new S(0|r._crypto_kem_mlkem768_ciphertextbytes()),o=p.address;_.push(o);var h=new S(0|r._crypto_kem_mlkem768_sharedsecretbytes()),y=h.address;if(_.push(y),!(0|r._crypto_kem_mlkem768_enc_deterministic(o,y,n,s))){var i=x({ciphertext:p,sharedSecret:h},a);return K(_),i}A(_,"invalid usage")}function ut(e){var t=[];T(e);var a=new S(0|r._crypto_kem_mlkem768_publickeybytes()),_=a.address;t.push(_);var n=new S(0|r._crypto_kem_mlkem768_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_kem_mlkem768_keypair(_,s))){var c={publicKey:x(a,e),privateKey:x(n,e),keyType:"ml-kem-768"};return K(t),c}A(t,"internal error")}function dt(e,t){var a=[];T(t),e=N(a,e,"seed");var _,n=0|r._crypto_kem_mlkem768_seedbytes();e.length!==n&&I(a,"invalid seed length"),_=w(e),a.push(_);var s=new S(0|r._crypto_kem_mlkem768_publickeybytes()),c=s.address;a.push(c);var p=new S(0|r._crypto_kem_mlkem768_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_mlkem768_seed_keypair(c,o,_))){var h={publicKey:x(s,t),privateKey:x(p,t),keyType:"ml-kem-768"};return K(a),h}A(a,"invalid usage")}function vt(){var e=r._crypto_kem_primitive(),t=r.UTF8ToString(e);return K([]),t}function gt(e,t){var a=[];T(t),e=N(a,e,"seed");var _,n=0|r._crypto_kem_seedbytes();e.length!==n&&I(a,"invalid seed length"),_=w(e),a.push(_);var s=new S(0|r._crypto_kem_publickeybytes()),c=s.address;a.push(c);var p=new S(0|r._crypto_kem_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_seed_keypair(c,o,_))){var h={publicKey:x(s,t),privateKey:x(p,t),keyType:"xwing"};return K(a),h}A(a,"invalid usage")}function bt(e,t,a){var _=[];T(a),e=N(_,e,"ciphertext");var n,s=0|r._crypto_kem_xwing_ciphertextbytes();e.length!==s&&I(_,"invalid ciphertext length"),n=w(e),_.push(n),t=N(_,t,"privateKey");var c,p=0|r._crypto_kem_xwing_secretkeybytes();t.length!==p&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var o=new S(0|r._crypto_kem_xwing_sharedsecretbytes()),h=o.address;if(_.push(h),!(0|r._crypto_kem_xwing_dec(h,n,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function ft(e,t){var a=[];T(t),e=N(a,e,"publicKey");var _,n=0|r._crypto_kem_xwing_publickeybytes();e.length!==n&&I(a,"invalid publicKey length"),_=w(e),a.push(_);var s=new S(0|r._crypto_kem_xwing_ciphertextbytes()),c=s.address;a.push(c);var p=new S(0|r._crypto_kem_xwing_sharedsecretbytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_xwing_enc(c,o,_))){var h=x({ciphertext:s,sharedSecret:p},t);return K(a),h}A(a,"invalid usage")}function mt(e,t,a){var _=[];T(a),e=N(_,e,"publicKey");var n,s,c=0|r._crypto_kem_xwing_publickeybytes();e.length!==c&&I(_,"invalid publicKey length"),n=w(e),_.push(n),64!==(t=N(_,t,"seed")).length&&I(_,"invalid seed length"),s=w(t),_.push(s);var p=new S(0|r._crypto_kem_xwing_ciphertextbytes()),o=p.address;_.push(o);var h=new S(0|r._crypto_kem_xwing_sharedsecretbytes()),y=h.address;if(_.push(y),!(0|r._crypto_kem_xwing_enc_deterministic(o,y,n,s))){var i=x({ciphertext:p,sharedSecret:h},a);return K(_),i}A(_,"invalid usage")}function kt(e){var t=[];T(e);var a=new S(0|r._crypto_kem_xwing_publickeybytes()),_=a.address;t.push(_);var n=new S(0|r._crypto_kem_xwing_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_kem_xwing_keypair(_,s))){var c={publicKey:x(a,e),privateKey:x(n,e),keyType:"xwing"};return K(t),c}A(t,"internal error")}function xt(e,t){var a=[];T(t),e=N(a,e,"seed");var _,n=0|r._crypto_kem_xwing_seedbytes();e.length!==n&&I(a,"invalid seed length"),_=w(e),a.push(_);var s=new S(0|r._crypto_kem_xwing_publickeybytes()),c=s.address;a.push(c);var p=new S(0|r._crypto_kem_xwing_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_xwing_seed_keypair(c,o,_))){var h={publicKey:x(s,t),privateKey:x(p,t),keyType:"xwing"};return K(a),h}A(a,"invalid usage")}function Et(e,t,a,_){var n=[];T(_),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 p,o=0|r._crypto_kx_secretkeybytes();t.length!==o&&I(n,"invalid clientSecretKey length"),p=w(t),n.push(p),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 S(0|r._crypto_kx_sessionkeybytes()),l=i.address;n.push(l);var u=new S(0|r._crypto_kx_sessionkeybytes()),d=u.address;if(n.push(d),!(0|r._crypto_kx_client_session_keys(l,d,s,p,h))){var v=x({sharedRx:i,sharedTx:u},_);return K(n),v}A(n,"invalid usage")}function Tt(e){var t=[];T(e);var a=new S(0|r._crypto_kx_publickeybytes()),_=a.address;t.push(_);var n=new S(0|r._crypto_kx_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_kx_keypair(_,s))){var c={publicKey:x(a,e),privateKey:x(n,e),keyType:"x25519"};return K(t),c}A(t,"internal error")}function St(e,t){var a=[];T(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 S(0|r._crypto_kx_publickeybytes()),c=s.address;a.push(c);var p=new S(0|r._crypto_kx_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_kx_seed_keypair(c,o,_))){var h={publicKey:x(s,t),privateKey:x(p,t),keyType:"x25519"};return K(a),h}A(a,"internal error")}function wt(e,t,a,_){var n=[];T(_),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 p,o=0|r._crypto_kx_secretkeybytes();t.length!==o&&I(n,"invalid serverSecretKey length"),p=w(t),n.push(p),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 S(0|r._crypto_kx_sessionkeybytes()),l=i.address;n.push(l);var u=new S(0|r._crypto_kx_sessionkeybytes()),d=u.address;if(n.push(d),!(0|r._crypto_kx_server_session_keys(l,d,s,p,h))){var v=x({sharedRx:i,sharedTx:u},_);return K(n),v}A(n,"invalid usage")}function Yt(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,p=0|r._crypto_onetimeauth_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_onetimeauth_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_onetimeauth(h,n,s,0,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function Bt(e,t){var a=[];T(t),M(a,e,"state_address");var _=new S(0|r._crypto_onetimeauth_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_onetimeauth_final(e,n))){var s=(r._free(e),x(_,t));return K(a),s}A(a,"invalid usage")}function Kt(e,t){var a=[];T(t);var _=null;null!=e&&(_=w(e=N(a,e,"key")),e.length,a.push(_));var n=new S(144).address;if(!(0|r._crypto_onetimeauth_init(n,_))){var s=n;return K(a),s}A(a,"invalid usage")}function At(e){var t=[];T(e);var a=new S(0|r._crypto_onetimeauth_keybytes()),_=a.address;t.push(_),r._crypto_onetimeauth_keygen(_);var n=x(a,e);return K(t),n}function It(e,t,a){var _=[];T(a),M(_,e,"state_address");var n=w(t=N(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_onetimeauth_update(e,n,s)&&A(_,"invalid usage"),K(_)}function Mt(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")),p=t.length;_.push(c),a=N(_,a,"key");var o,h=0|r._crypto_onetimeauth_keybytes();a.length!==h&&I(_,"invalid key length"),o=w(a),_.push(o);var y=!(0|r._crypto_onetimeauth_verify(n,c,p,0,o));return K(_),y}function Nt(e,t,a,_,n,s,c){var p=[];T(c),M(p,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&I(p,"keyLength must be an unsigned integer");var o=w(t=N(p,t,"password")),h=t.length;p.push(o),a=N(p,a,"salt");var y,i=0|r._crypto_pwhash_saltbytes();a.length!==i&&I(p,"invalid salt length"),y=w(a),p.push(y),M(p,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&I(p,"opsLimit must be an unsigned integer"),M(p,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&I(p,"memLimit must be an unsigned integer"),M(p,s,"algorithm"),("number"!=typeof s||(0|s)!==s||s<0)&&I(p,"algorithm must be an unsigned integer");var l=new S(0|e),u=l.address;if(p.push(u),!(0|r._crypto_pwhash(u,e,0,o,h,0,y,_,0,n,s))){var d=x(l,c);return K(p),d}A(p,"invalid usage")}function Lt(e,t,a,_,n,s){var c=[];T(s),M(c,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&I(c,"keyLength must be an unsigned integer");var p=w(t=N(c,t,"password")),o=t.length;c.push(p),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),M(c,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&I(c,"opsLimit must be an unsigned integer"),M(c,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&I(c,"memLimit must be an unsigned integer");var i=new S(0|e),l=i.address;if(c.push(l),!(0|r._crypto_pwhash_scryptsalsa208sha256(l,e,0,p,o,0,h,_,0,n))){var u=x(i,s);return K(c),u}A(c,"invalid usage")}function Ut(e,t,a,_,n,s,c){var p=[];T(c);var o=w(e=N(p,e,"password")),h=e.length;p.push(o);var y=w(t=N(p,t,"salt")),i=t.length;p.push(y),M(p,a,"opsLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&I(p,"opsLimit must be an unsigned integer"),M(p,_,"r"),("number"!=typeof _||(0|_)!==_||_<0)&&I(p,"r must be an unsigned integer"),M(p,n,"p"),("number"!=typeof n||(0|n)!==n||n<0)&&I(p,"p must be an unsigned integer"),M(p,s,"keyLength"),("number"!=typeof s||(0|s)!==s||s<0)&&I(p,"keyLength must be an unsigned integer");var l=new S(0|s),u=l.address;if(p.push(u),!(0|r._crypto_pwhash_scryptsalsa208sha256_ll(o,h,y,i,a,0,_,n,u,s))){var d=x(l,c);return K(p),d}A(p,"invalid usage")}function Ot(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"password")),c=e.length;n.push(s),M(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&I(n,"opsLimit must be an unsigned integer"),M(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&I(n,"memLimit must be an unsigned integer");var p=new S(0|r._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(n.push(p),!(0|r._crypto_pwhash_scryptsalsa208sha256_str(p,s,c,0,t,0,a))){var o=r.UTF8ToString(p);return K(n),o}A(n,"invalid usage")}function Ct(e,t,a){var _=[];T(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 p=!(0|r._crypto_pwhash_scryptsalsa208sha256_str_verify(n,s,c,0));return K(_),p}function Rt(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"password")),c=e.length;n.push(s),M(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&I(n,"opsLimit must be an unsigned integer"),M(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&I(n,"memLimit must be an unsigned integer");var p=new S(0|r._crypto_pwhash_strbytes()).address;if(n.push(p),!(0|r._crypto_pwhash_str(p,s,c,0,t,0,a))){var o=r.UTF8ToString(p);return K(n),o}A(n,"invalid usage")}function Pt(e,t,a,_){var n=[];T(_),"string"!=typeof e&&I(n,"hashed_password must be a string");var s=w(e=l(e+"\0"));e.length,n.push(s),M(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&I(n,"opsLimit must be an unsigned integer"),M(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 K(n),c}function Xt(e,t,a){var _=[];T(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 p=!(0|r._crypto_pwhash_str_verify(n,s,c,0));return K(_),p}function Dt(e,t,a){var _=[];T(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,p=0|r._crypto_scalarmult_bytes();t.length!==p&&I(_,"invalid publicKey length"),c=w(t),_.push(c);var o=new S(0|r._crypto_scalarmult_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_scalarmult(h,n,c))){var y=x(o,a);return K(_),y}A(_,"weak public key")}function Gt(e,t){var a=[];T(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 S(0|r._crypto_scalarmult_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_base(c,_))){var p=x(s,t);return K(a),p}A(a,"unknown error")}function Ft(e,t,a){var _=[];T(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,p=0|r._crypto_scalarmult_ed25519_bytes();t.length!==p&&I(_,"invalid p length"),c=w(t),_.push(c);var o=new S(0|r._crypto_scalarmult_ed25519_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_scalarmult_ed25519(h,n,c))){var y=x(o,a);return K(_),y}A(_,"invalid point or scalar is 0")}function Vt(e,t){var a=[];T(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 S(0|r._crypto_scalarmult_ed25519_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_ed25519_base(c,_))){var p=x(s,t);return K(a),p}A(a,"scalar is 0")}function qt(e,t){var a=[];T(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 S(0|r._crypto_scalarmult_ed25519_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_ed25519_base_noclamp(c,_))){var p=x(s,t);return K(a),p}A(a,"scalar is 0")}function Ht(e,t,a){var _=[];T(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,p=0|r._crypto_scalarmult_ed25519_bytes();t.length!==p&&I(_,"invalid p length"),c=w(t),_.push(c);var o=new S(0|r._crypto_scalarmult_ed25519_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_scalarmult_ed25519_noclamp(h,n,c))){var y=x(o,a);return K(_),y}A(_,"invalid point or scalar is 0")}function zt(e,t,a){var _=[];T(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,p=0|r._crypto_scalarmult_ristretto255_bytes();t.length!==p&&I(_,"invalid element length"),c=w(t),_.push(c);var o=new S(0|r._crypto_scalarmult_ristretto255_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_scalarmult_ristretto255(h,n,c))){var y=x(o,a);return K(_),y}A(_,"result is identity element")}function Wt(e,t){var a=[];T(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 S(0|r._crypto_core_ristretto255_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_ristretto255_base(c,_))){var p=x(s,t);return K(a),p}A(a,"scalar is 0")}function jt(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"message")),c=e.length;n.push(s),t=N(n,t,"nonce");var p,o=0|r._crypto_secretbox_noncebytes();t.length!==o&&I(n,"invalid nonce length"),p=w(t),n.push(p),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 S(0|c),l=i.address;n.push(l);var u=new S(0|r._crypto_secretbox_macbytes()),d=u.address;if(n.push(d),!(0|r._crypto_secretbox_detached(l,d,s,c,0,p,h))){var v=x({mac:u,cipher:i},_);return K(n),v}A(n,"invalid usage")}function Jt(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"message")),c=e.length;n.push(s),t=N(n,t,"nonce");var p,o=0|r._crypto_secretbox_noncebytes();t.length!==o&&I(n,"invalid nonce length"),p=w(t),n.push(p),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 S(c+r._crypto_secretbox_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_secretbox_easy(l,s,c,0,p,h))){var u=x(i,_);return K(n),u}A(n,"invalid usage")}function Qt(e){var t=[];T(e);var a=new S(0|r._crypto_secretbox_keybytes()),_=a.address;t.push(_),r._crypto_secretbox_keygen(_);var n=x(a,e);return K(t),n}function Zt(e,t,a,_,n){var s=[];T(n);var c=w(e=N(s,e,"ciphertext")),p=e.length;s.push(c),t=N(s,t,"mac");var o,h=0|r._crypto_secretbox_macbytes();t.length!==h&&I(s,"invalid mac length"),o=w(t),s.push(o),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 S(0|p),v=d.address;if(s.push(v),!(0|r._crypto_secretbox_open_detached(v,c,o,p,0,y,l))){var g=x(d,n);return K(s),g}A(s,"wrong secret key for the given ciphertext")}function $t(e,t,a,_){var n=[];T(_),e=N(n,e,"ciphertext");var s,c=r._crypto_secretbox_macbytes(),p=e.length;p<c&&I(n,"ciphertext is too short"),s=w(e),n.push(s),t=N(n,t,"nonce");var o,h=0|r._crypto_secretbox_noncebytes();t.length!==h&&I(n,"invalid nonce length"),o=w(t),n.push(o),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 S(p-r._crypto_secretbox_macbytes()|0),u=l.address;if(n.push(u),!(0|r._crypto_secretbox_open_easy(u,s,p,0,o,y))){var d=x(l,_);return K(n),d}A(n,"wrong secret key for the given ciphertext")}function ea(e,t,a){var _=[];T(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,p=0|r._crypto_secretstream_xchacha20poly1305_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(52).address;if(!(0|r._crypto_secretstream_xchacha20poly1305_init_pull(o,n,c))){var h=o;return K(_),h}A(_,"invalid usage")}function ra(e,t){var a=[];T(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 S(52).address,c=new S(0|r._crypto_secretstream_xchacha20poly1305_headerbytes()),p=c.address;if(a.push(p),!(0|r._crypto_secretstream_xchacha20poly1305_init_push(s,p,_))){var o={state:s,header:x(c,t)};return K(a),o}A(a,"invalid usage")}function ta(e){var t=[];T(e);var a=new S(0|r._crypto_secretstream_xchacha20poly1305_keybytes()),_=a.address;t.push(_),r._crypto_secretstream_xchacha20poly1305_keygen(_);var n=x(a,e);return K(t),n}function aa(e,t,a,_){var n=[];T(_),M(n,e,"state_address"),t=N(n,t,"cipher");var s,c=r._crypto_secretstream_xchacha20poly1305_abytes(),p=t.length;p<c&&I(n,"cipher is too short"),s=w(t),n.push(s);var o=null,h=0;null!=a&&(o=w(a=N(n,a,"ad")),h=a.length,n.push(o));var y=new S(p-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,p,0,o,h)&&{tag:r.HEAPU8[l],message:y})&&{message:x(u.message,_),tag:u.tag});return K(n),u}function _a(e,t,a,_,n){var s=[];T(n),M(s,e,"state_address");var c=w(t=N(s,t,"message_chunk")),p=t.length;s.push(c);var o=null,h=0;null!=a&&(o=w(a=N(s,a,"ad")),h=a.length,s.push(o)),M(s,_,"tag"),("number"!=typeof _||(0|_)!==_||_<0)&&I(s,"tag must be an unsigned integer");var y=new S(p+r._crypto_secretstream_xchacha20poly1305_abytes()|0),i=y.address;if(s.push(i),!(0|r._crypto_secretstream_xchacha20poly1305_push(e,i,0,c,p,0,o,h,0,_))){var l=x(y,n);return K(s),l}A(s,"invalid usage")}function na(e,t){var a=[];return T(t),M(a,e,"state_address"),r._crypto_secretstream_xchacha20poly1305_rekey(e),K(a),!0}function sa(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,p=0|r._crypto_shorthash_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_shorthash_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_shorthash(h,n,s,0,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function ca(e){var t=[];T(e);var a=new S(0|r._crypto_shorthash_keybytes()),_=a.address;t.push(_),r._crypto_shorthash_keygen(_);var n=x(a,e);return K(t),n}function pa(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"key");var c,p=0|r._crypto_shorthash_siphashx24_keybytes();t.length!==p&&I(_,"invalid key length"),c=w(t),_.push(c);var o=new S(0|r._crypto_shorthash_siphashx24_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_shorthash_siphashx24(h,n,s,0,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function oa(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"privateKey");var c,p=0|r._crypto_sign_secretkeybytes();t.length!==p&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var o=new S(e.length+r._crypto_sign_bytes()|0),h=o.address;if(_.push(h),!(0|r._crypto_sign(h,null,n,s,0,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function ha(e,t,a){var _=[];T(a);var n=w(e=N(_,e,"message")),s=e.length;_.push(n),t=N(_,t,"privateKey");var c,p=0|r._crypto_sign_secretkeybytes();t.length!==p&&I(_,"invalid privateKey length"),c=w(t),_.push(c);var o=new S(0|r._crypto_sign_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_sign_detached(h,null,n,s,0,c))){var y=x(o,a);return K(_),y}A(_,"invalid usage")}function ya(e,t){var a=[];T(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 S(0|r._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_pk_to_curve25519(c,_))){var p=x(s,t);return K(a),p}A(a,"invalid key")}function ia(e,t){var a=[];T(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 S(0|r._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_sk_to_curve25519(c,_))){var p=x(s,t);return K(a),p}A(a,"invalid key")}function la(e,t){var a=[];T(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 S(0|r._crypto_sign_publickeybytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_sk_to_pk(c,_))){var p=x(s,t);return K(a),p}A(a,"invalid key")}function ua(e,t){var a=[];T(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 S(0|r._crypto_sign_seedbytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_sk_to_seed(c,_))){var p=x(s,t);return K(a),p}A(a,"invalid key")}function da(e,t,a){var _=[];T(a),M(_,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 S(0|r._crypto_sign_bytes()),p=c.address;if(_.push(p),!(0|r._crypto_sign_final_create(e,p,null,n))){var o=(r._free(e),x(c,a));return K(_),o}A(_,"invalid usage")}function va(e,t,a,_){var n=[];T(_),M(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 p,o=0|r._crypto_sign_publickeybytes();a.length!==o&&I(n,"invalid publicKey length"),p=w(a),n.push(p);var h=!(0|r._crypto_sign_final_verify(e,s,p));return K(n),h}function ga(e){var t=[];T(e);var a=new S(208).address;if(!(0|r._crypto_sign_init(a))){var _=a;return K(t),_}A(t,"internal error")}function ba(e){var t=[];T(e);var a=new S(0|r._crypto_sign_publickeybytes()),_=a.address;t.push(_);var n=new S(0|r._crypto_sign_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_sign_keypair(_,s))){var c={publicKey:x(a,e),privateKey:x(n,e),keyType:"ed25519"};return K(t),c}A(t,"internal error")}function fa(e,t,a){var _=[];T(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 p,o=0|r._crypto_sign_publickeybytes();t.length!==o&&I(_,"invalid publicKey length"),p=w(t),_.push(p);var h=new S(c-r._crypto_sign_bytes()|0),y=h.address;if(_.push(y),!(0|r._crypto_sign_open(y,null,n,c,0,p))){var i=x(h,a);return K(_),i}A(_,"incorrect signature for the given public key")}function ma(e,t){var a=[];T(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 S(0|r._crypto_sign_publickeybytes()),c=s.address;a.push(c);var p=new S(0|r._crypto_sign_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_sign_seed_keypair(c,o,_))){var h={publicKey:x(s,t),privateKey:x(p,t),keyType:"ed25519"};return K(a),h}A(a,"invalid usage")}function ka(e,t,a){var _=[];T(a),M(_,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)&&A(_,"invalid usage"),K(_)}function xa(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")),p=t.length;_.push(c),a=N(_,a,"publicKey");var o,h=0|r._crypto_sign_publickeybytes();a.length!==h&&I(_,"invalid publicKey length"),o=w(a),_.push(o);var y=!(0|r._crypto_sign_verify_detached(n,c,p,0,o));return K(_),y}function Ea(e,t,a,_){var n=[];T(_),M(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 p,o=0|r._crypto_stream_chacha20_noncebytes();a.length!==o&&I(n,"invalid nonce length"),p=w(a),n.push(p);var h=new S(0|e),y=h.address;n.push(y),r._crypto_stream_chacha20(y,e,0,p,s);var i=x(h,_);return K(n),i}function Ta(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"input_message")),c=e.length;n.push(s),t=N(n,t,"nonce");var p,o=0|r._crypto_stream_chacha20_ietf_noncebytes();t.length!==o&&I(n,"invalid nonce length"),p=w(t),n.push(p),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 S(0|c),l=i.address;if(n.push(l),0===r._crypto_stream_chacha20_ietf_xor(l,s,c,0,p,h)){var u=x(i,_);return K(n),u}A(n,"invalid usage")}function Sa(e,t,a,_,n){var s=[];T(n);var c=w(e=N(s,e,"input_message")),p=e.length;s.push(c),t=N(s,t,"nonce");var o,h=0|r._crypto_stream_chacha20_ietf_noncebytes();t.length!==h&&I(s,"invalid nonce length"),o=w(t),s.push(o),M(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 S(0|p),u=l.address;if(s.push(u),0===r._crypto_stream_chacha20_ietf_xor_ic(u,c,p,0,o,a,y)){var d=x(l,n);return K(s),d}A(s,"invalid usage")}function wa(e){var t=[];T(e);var a=new S(0|r._crypto_stream_chacha20_keybytes()),_=a.address;t.push(_),r._crypto_stream_chacha20_keygen(_);var n=x(a,e);return K(t),n}function Ya(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"input_message")),c=e.length;n.push(s),t=N(n,t,"nonce");var p,o=0|r._crypto_stream_chacha20_noncebytes();t.length!==o&&I(n,"invalid nonce length"),p=w(t),n.push(p),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 S(0|c),l=i.address;if(n.push(l),0===r._crypto_stream_chacha20_xor(l,s,c,0,p,h)){var u=x(i,_);return K(n),u}A(n,"invalid usage")}function Ba(e,t,a,_,n){var s=[];T(n);var c=w(e=N(s,e,"input_message")),p=e.length;s.push(c),t=N(s,t,"nonce");var o,h=0|r._crypto_stream_chacha20_noncebytes();t.length!==h&&I(s,"invalid nonce length"),o=w(t),s.push(o),M(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 S(0|p),u=l.address;if(s.push(u),0===r._crypto_stream_chacha20_xor_ic(u,c,p,0,o,a,0,y)){var d=x(l,n);return K(s),d}A(s,"invalid usage")}function Ka(e){var t=[];T(e);var a=new S(0|r._crypto_stream_keybytes()),_=a.address;t.push(_),r._crypto_stream_keygen(_);var n=x(a,e);return K(t),n}function Aa(e){var t=[];T(e);var a=new S(0|r._crypto_stream_xchacha20_keybytes()),_=a.address;t.push(_),r._crypto_stream_xchacha20_keygen(_);var n=x(a,e);return K(t),n}function Ia(e,t,a,_){var n=[];T(_);var s=w(e=N(n,e,"input_message")),c=e.length;n.push(s),t=N(n,t,"nonce");var p,o=0|r._crypto_stream_xchacha20_noncebytes();t.length!==o&&I(n,"invalid nonce length"),p=w(t),n.push(p),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 S(0|c),l=i.address;if(n.push(l),0===r._crypto_stream_xchacha20_xor(l,s,c,0,p,h)){var u=x(i,_);return K(n),u}A(n,"invalid usage")}function Ma(e,t,a,_,n){var s=[];T(n);var c=w(e=N(s,e,"input_message")),p=e.length;s.push(c),t=N(s,t,"nonce");var o,h=0|r._crypto_stream_xchacha20_noncebytes();t.length!==h&&I(s,"invalid nonce length"),o=w(t),s.push(o),M(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 S(0|p),u=l.address;if(s.push(u),0===r._crypto_stream_xchacha20_xor_ic(u,c,p,0,o,a,0,y)){var d=x(l,n);return K(s),d}A(s,"invalid usage")}function Na(e,t,a){var _=[];T(a),M(_,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 S(e|=0),p=c.address;if(_.push(p),!(0|r._crypto_xof_shake128(p,e,n,s,0))){var o=x(c,a);return K(_),o}A(_,"invalid usage")}function La(e){var t=[];T(e);var a=new S(256).address;if(!(0|r._crypto_xof_shake128_init(a))){var _=a;return K(t),_}A(t,"invalid usage")}function Ua(e,t){var a=[];T(t),M(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"domain must be an unsigned integer");var _=new S(256).address;if(!(0|r._crypto_xof_shake128_init_with_domain(_,e))){var n=_;return K(a),n}A(a,"invalid usage")}function Oa(e,t,a){var _=[];T(a),M(_,e,"state_address"),M(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"out_length must be an unsigned integer");var n=new S(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_shake128_squeeze(e,s,t))){var c=x(n,a);return K(_),c}A(_,"invalid usage")}function Ca(e,t,a){var _=[];T(a),M(_,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)&&A(_,"invalid usage"),K(_)}function Ra(e,t,a){var _=[];T(a),M(_,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 S(e|=0),p=c.address;if(_.push(p),!(0|r._crypto_xof_shake256(p,e,n,s,0))){var o=x(c,a);return K(_),o}A(_,"invalid usage")}function Pa(e){var t=[];T(e);var a=new S(256).address;if(!(0|r._crypto_xof_shake256_init(a))){var _=a;return K(t),_}A(t,"invalid usage")}function Xa(e,t){var a=[];T(t),M(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"domain must be an unsigned integer");var _=new S(256).address;if(!(0|r._crypto_xof_shake256_init_with_domain(_,e))){var n=_;return K(a),n}A(a,"invalid usage")}function Da(e,t,a){var _=[];T(a),M(_,e,"state_address"),M(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"out_length must be an unsigned integer");var n=new S(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_shake256_squeeze(e,s,t))){var c=x(n,a);return K(_),c}A(_,"invalid usage")}function Ga(e,t,a){var _=[];T(a),M(_,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)&&A(_,"invalid usage"),K(_)}function Fa(e,t,a){var _=[];T(a),M(_,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 S(e|=0),p=c.address;if(_.push(p),!(0|r._crypto_xof_turboshake128(p,e,n,s,0))){var o=x(c,a);return K(_),o}A(_,"invalid usage")}function Va(e){var t=[];T(e);var a=new S(256).address;if(!(0|r._crypto_xof_turboshake128_init(a))){var _=a;return K(t),_}A(t,"invalid usage")}function qa(e,t){var a=[];T(t),M(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"domain must be an unsigned integer");var _=new S(256).address;if(!(0|r._crypto_xof_turboshake128_init_with_domain(_,e))){var n=_;return K(a),n}A(a,"invalid usage")}function Ha(e,t,a){var _=[];T(a),M(_,e,"state_address"),M(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"out_length must be an unsigned integer");var n=new S(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_turboshake128_squeeze(e,s,t))){var c=x(n,a);return K(_),c}A(_,"invalid usage")}function za(e,t,a){var _=[];T(a),M(_,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)&&A(_,"invalid usage"),K(_)}function Wa(e,t,a){var _=[];T(a),M(_,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 S(e|=0),p=c.address;if(_.push(p),!(0|r._crypto_xof_turboshake256(p,e,n,s,0))){var o=x(c,a);return K(_),o}A(_,"invalid usage")}function ja(e){var t=[];T(e);var a=new S(256).address;if(!(0|r._crypto_xof_turboshake256_init(a))){var _=a;return K(t),_}A(t,"invalid usage")}function Ja(e,t){var a=[];T(t),M(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"domain must be an unsigned integer");var _=new S(256).address;if(!(0|r._crypto_xof_turboshake256_init_with_domain(_,e))){var n=_;return K(a),n}A(a,"invalid usage")}function Qa(e,t,a){var _=[];T(a),M(_,e,"state_address"),M(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&I(_,"out_length must be an unsigned integer");var n=new S(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_turboshake256_squeeze(e,s,t))){var c=x(n,a);return K(_),c}A(_,"invalid usage")}function Za(e,t,a){var _=[];T(a),M(_,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)&&A(_,"invalid usage"),K(_)}function $a(e,t){var a=[];T(t),M(a,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&I(a,"length must be an unsigned integer");var _=new S(0|e),n=_.address;a.push(n),r._randombytes_buf(n,e);var s=x(_,t);return K(a),s}function e_(e,t,a){var _=[];T(a),M(_,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 S(0|e),p=c.address;_.push(p),r._randombytes_buf_deterministic(p,e,n);var o=x(c,a);return K(_),o}function r_(e){T(e),r._randombytes_close()}function t_(e){T(e);var t=r._randombytes_random()>>>0;return K([]),t}function a_(e,t){var a=[];T(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(_)&&A(a,"unsupported implementation"),K(a)}function __(e){T(e),r._randombytes_stir()}function n_(e,t){var a=[];T(t),M(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 K(a),_}function s_(e){var t,a=[];16!==(e=N(a,e,"bin")).length&&I(a,"invalid bin length"),t=w(e),a.push(t);var _=new S(46).address;if(a.push(_),0!==r._sodium_bin2ip(_,46,t)){var n=r.UTF8ToString(_);return K(a),n}A(a,"conversion failed")}function c_(e,t){var a=[];T(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 S(16),c=s.address;if(a.push(c),!(0|r._sodium_ip2bin(c,_,n))){var p=x(s,t);return K(a),p}A(a,"invalid IP address")}function p_(){var e=r._sodium_version_string(),t=r.UTF8ToString(e);return K([]),t}S.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.memcmp=o,t.memzero=p,t.output_formats=k,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,o as memcmp,p as memzero,y as pad,i as unpad,_ as symbols,m as to_base64,v as to_hex,u as to_string,k as output_formats,g as base64_variants,r as libsodium};
|
|
1
|
+
import e from"libsodium-sumo";let r;const t={};if(void 0===globalThis.crypto||"function"!=typeof globalThis.crypto.getRandomValues)throw new Error("globalThis.crypto.getRandomValues is not available. The ESM build of libsodium requires a secure random source (available in all browsers and Node.js 19+).");const a="function"==typeof(_=e)?_:null!=_&&"function"==typeof _.default?_.default:null;var _;const n=function(e){return null!=e&&void 0!==e.ready?e:null!=e&&null!=e.default&&void 0!==e.default.ready?e.default:null}(e),s=(null!=a?a({getRandomValue:function(){var e=new Uint32Array(1);return globalThis.crypto.getRandomValues(e),e[0]>>>0}}):null!=n?n.ready.then(function(){return n}):Promise.reject(new Error("Unsupported libsodium ESM export shape"))).then(function(e){r=e,t.libsodium=r,function(){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_sha3256","crypto_hash_sha3256_final","crypto_hash_sha3256_init","crypto_hash_sha3256_update","crypto_hash_sha3512","crypto_hash_sha3512_final","crypto_hash_sha3512_init","crypto_hash_sha3512_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_nd_keygen","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_kem_dec","crypto_kem_enc","crypto_kem_keypair","crypto_kem_mlkem768_dec","crypto_kem_mlkem768_enc","crypto_kem_mlkem768_enc_deterministic","crypto_kem_mlkem768_keypair","crypto_kem_mlkem768_seed_keypair","crypto_kem_primitive","crypto_kem_seed_keypair","crypto_kem_xwing_dec","crypto_kem_xwing_enc","crypto_kem_xwing_enc_deterministic","crypto_kem_xwing_keypair","crypto_kem_xwing_seed_keypair","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=[C,R,P,X,D,G,F,V,q,H,z,W,j,J,Q,Z,$,ee,re,te,ae,_e,ne,se,ce,pe,oe,he,ye,ie,le,ue,de,ve,ge,be,fe,me,ke,xe,Ee,Te,Se,we,Ye,Be,Ke,Ae,Ie,Me,Ne,Le,Ue,Oe,Ce,Re,Pe,Xe,De,Ge,Fe,Ve,qe,He,ze,We,je,Je,Qe,Ze,$e,er,rr,tr,ar,_r,nr,sr,cr,pr,or,hr,yr,ir,lr,ur,dr,vr,gr,br,fr,mr,kr,xr,Er,Tr,Sr,wr,Yr,Br,Kr,Ar,Ir,Mr,Nr,Lr,Ur,Or,Cr,Rr,Pr,Xr,Dr,Gr,Fr,Vr,qr,Hr,zr,Wr,jr,Jr,Qr,Zr,$r,et,rt,tt,at,_t,nt,st,ct,pt,ot,ht,yt,it,lt,ut,dt,vt,gt,bt,ft,mt,kt,xt,Et,Tt,St,wt,Yt,Bt,Kt,At,It,Mt,Nt,Lt,Ut,Ot,Ct,Rt,Pt,Xt,Dt,Gt,Ft,Vt,qt,Ht,zt,Wt,jt,Jt,Qt,Zt,$t,ea,ra,ta,aa,_a,na,sa,ca,pa,oa,ha,ya,ia,la,ua,da,va,ga,ba,fa,ma,ka,xa,Ea,Ta,Sa,wa,Ya,Ba,Ka,Aa,Ia,Ma,Na,La,Ua,Oa,Ca,Ra,Pa,Xa,Da,Ga,Fa,Va,qa,Ha,za,Wa,ja,Ja,Qa,Za,$a,e_,r_,t_,a_,__,n_,s_,c_,p_,o_,h_,y_],_=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_sha3256_BYTES","crypto_hash_sha3512_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_kem_CIPHERTEXTBYTES","crypto_kem_PUBLICKEYBYTES","crypto_kem_SECRETKEYBYTES","crypto_kem_SEEDBYTES","crypto_kem_SHAREDSECRETBYTES","crypto_kem_mlkem768_CIPHERTEXTBYTES","crypto_kem_mlkem768_PUBLICKEYBYTES","crypto_kem_mlkem768_SECRETKEYBYTES","crypto_kem_mlkem768_SEEDBYTES","crypto_kem_mlkem768_SHAREDSECRETBYTES","crypto_kem_xwing_CIPHERTEXTBYTES","crypto_kem_xwing_PUBLICKEYBYTES","crypto_kem_xwing_SECRETKEYBYTES","crypto_kem_xwing_SEEDBYTES","crypto_kem_xwing_SHAREDSECRETBYTES","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_kem_PRIMITIVE","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()))}}();var a=new Uint8Array([98,97,108,108,115]),_=t.randombytes_buf(t.crypto_secretbox_NONCEBYTES),n=t.randombytes_buf(t.crypto_secretbox_KEYBYTES),s=t.crypto_secretbox_easy(a,_,n),c=t.crypto_secretbox_open_easy(s,_,n);if(!t.memcmp(a,c))throw new Error("Initialization self-test failed")});function c(){return Object.keys(t).sort()}function p(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 o(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 h(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 y(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 i(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 l(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 u(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=A(4),s=1,c=0,p=0|e.length,o=new B(p+t);_.push(n),_.push(o.address);for(var h=o.address,y=o.address+p+t;h<y;h++)r.HEAPU8[h]=e[c],c+=s=1&~((65535&((p-=s)>>>48|p>>>32|p>>>16|p))-1>>16);return 0!==r._sodium_pad(n,o.address,e.length,t,o.length)&&N(_,"internal error"),o.length=r.getValue(n,"i32"),a=o.to_Uint8Array(),M(_),a}function d(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=[],_=K(e),n=A(4);return a.push(_),a.push(n),0!==r._sodium_unpad(n,_,e.length,t)&&N(a,"unsupported/invalid padding"),e=(e=new Uint8Array(e)).subarray(0,r.getValue(n,"i32")),M(a),e}function v(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 g(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,p=s.length,o=0;do{var h=s[--p];h>=240?(o=4,c=!0):h>=224?(o=3,c=!0):h>=192?(o=2,c=!0):h<128&&(o=1,c=!0)}while(!c);for(var y=o-(s.length-p),i=0;i<y;i++)_--,s.pop();a+=g(s)}}return a}function b(e){var t,a=[],_=new B((e=O(a,e,"input")).length/2),n=K(e),s=A(4);return a.push(n),a.push(_.address),a.push(s),0!==r._sodium_hex2bin(_.address,_.length,n,e.length,0,0,s)&&N(a,"invalid input"),r.getValue(s,"i32")-n!==e.length&&N(a,"incomplete input"),t=_.to_Uint8Array(),M(a),t}function f(e){e=O(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 m={ORIGINAL:1,ORIGINAL_NO_PADDING:3,URLSAFE:5,URLSAFE_NO_PADDING:7};function k(e){if(void 0===e)return m.URLSAFE_NO_PADDING;if(e!==m.ORIGINAL&&e!==m.ORIGINAL_NO_PADDING&&e!==m.URLSAFE&&e!==m.URLSAFE_NO_PADDING)throw new Error("unsupported base64 variant");return e}function x(e,t){t=k(t);var a,_=[],n=new B(3*(e=O(_,e,"input")).length/4),s=K(e),c=A(4),p=A(4);return _.push(s),_.push(n.address),_.push(c),_.push(p),0!==r._sodium_base642bin(n.address,n.length,s,e.length,0,c,p,t)&&N(_,"invalid input"),r.getValue(p,"i32")-s!==e.length&&N(_,"incomplete input"),n.length=r.getValue(c,"i32"),a=n.to_Uint8Array(),M(_),a}function E(e,t){t=k(t);var a=[];e=O(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),p=new B(c+1),o=K(e);return a.push(o),a.push(p.address),0===r._sodium_bin2base64(p.address,p.length,o,e.length,t)&&N(a,"conversion failed"),p.length=c,_=g(p.to_Uint8Array()),M(a),_}function T(){return["uint8array","text","hex","base64"]}function S(e,r){var t=r||"uint8array";if(!w(t))throw new Error(t+" output format is not available");if(e instanceof B){if("uint8array"===t)return e.to_Uint8Array();if("text"===t)return g(e.to_Uint8Array());if("hex"===t)return f(e.to_Uint8Array());if("base64"===t)return E(e.to_Uint8Array(),m.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]]=S(e[a[n]],t);return _}if("string"==typeof e)return e;throw new TypeError("Cannot format output")}function w(e){for(var r=["uint8array","text","hex","base64"],t=0;t<r.length;t++)if(r[t]===e)return!0;return!1}function Y(e){if(e){if("string"!=typeof e)throw new TypeError("When defined, the output format must be a string");if(!w(e))throw new Error(e+" is not a supported output format")}}function B(e){this.length=e,this.address=A(e)}function K(e){var t=A(e.length);return r.HEAPU8.set(e,t),t}function A(e){var t=r._malloc(e);if(0===t)throw{message:"_malloc() failed",length:e};return t}function I(e){r._free(e)}function M(e){if(e)for(var r=0;r<e.length;r++)I(e[r])}function N(e,r){throw M(e),new Error(r)}function L(e,r){throw M(e),new TypeError(r)}function U(e,r,t){null==r&&L(e,t+" cannot be null or undefined")}function O(e,r,t){return U(e,r,t),r instanceof Uint8Array?r:"string"==typeof r?v(r):void L(e,"unsupported input type for "+t)}function C(e,t,a,_,n,s){var c=[];Y(s);var p=null;null!=e&&(p=K(e=O(c,e,"secret_nonce")),e.length,c.push(p)),t=O(c,t,"ciphertext");var o,h=r._crypto_aead_aegis128l_abytes(),y=t.length;y<h&&L(c,"ciphertext is too short"),o=K(t),c.push(o);var i=null,l=0;null!=a&&(i=K(a=O(c,a,"additional_data")),l=a.length,c.push(i)),_=O(c,_,"public_nonce");var u,d=0|r._crypto_aead_aegis128l_npubbytes();_.length!==d&&L(c,"invalid public_nonce length"),u=K(_),c.push(u),n=O(c,n,"key");var v,g=0|r._crypto_aead_aegis128l_keybytes();n.length!==g&&L(c,"invalid key length"),v=K(n),c.push(v);var b=new B(y-r._crypto_aead_aegis128l_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_aegis128l_decrypt(f,null,p,o,y,0,i,l,0,u,v)){var m=S(b,s);return M(c),m}N(c,"ciphertext cannot be decrypted using that key")}function R(e,t,a,_,n,s,c){var p=[];Y(c);var o=null;null!=e&&(o=K(e=O(p,e,"secret_nonce")),e.length,p.push(o));var h=K(t=O(p,t,"ciphertext")),y=t.length;p.push(h),a=O(p,a,"mac");var i,l=0|r._crypto_aead_aegis128l_abytes();a.length!==l&&L(p,"invalid mac length"),i=K(a),p.push(i);var u=null,d=0;null!=_&&(u=K(_=O(p,_,"additional_data")),d=_.length,p.push(u)),n=O(p,n,"public_nonce");var v,g=0|r._crypto_aead_aegis128l_npubbytes();n.length!==g&&L(p,"invalid public_nonce length"),v=K(n),p.push(v),s=O(p,s,"key");var b,f=0|r._crypto_aead_aegis128l_keybytes();s.length!==f&&L(p,"invalid key length"),b=K(s),p.push(b);var m=new B(0|y),k=m.address;if(p.push(k),0===r._crypto_aead_aegis128l_decrypt_detached(k,o,h,y,0,i,u,d,0,v,b)){var x=S(m,c);return M(p),x}N(p,"ciphertext cannot be decrypted using that key")}function P(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"message")),o=e.length;c.push(p);var h=null,y=0;null!=t&&(h=K(t=O(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=K(a=O(c,a,"secret_nonce")),a.length,c.push(i)),_=O(c,_,"public_nonce");var l,u=0|r._crypto_aead_aegis128l_npubbytes();_.length!==u&&L(c,"invalid public_nonce length"),l=K(_),c.push(l),n=O(c,n,"key");var d,v=0|r._crypto_aead_aegis128l_keybytes();n.length!==v&&L(c,"invalid key length"),d=K(n),c.push(d);var g=new B(o+r._crypto_aead_aegis128l_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_aegis128l_encrypt(b,null,p,o,0,h,y,0,i,l,d)){var f=S(g,s);return M(c),f}N(c,"invalid usage")}function X(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"message")),o=e.length;c.push(p);var h=null,y=0;null!=t&&(h=K(t=O(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=K(a=O(c,a,"secret_nonce")),a.length,c.push(i)),_=O(c,_,"public_nonce");var l,u=0|r._crypto_aead_aegis128l_npubbytes();_.length!==u&&L(c,"invalid public_nonce length"),l=K(_),c.push(l),n=O(c,n,"key");var d,v=0|r._crypto_aead_aegis128l_keybytes();n.length!==v&&L(c,"invalid key length"),d=K(n),c.push(d);var g=new B(0|o),b=g.address;c.push(b);var f=new B(0|r._crypto_aead_aegis128l_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_aegis128l_encrypt_detached(b,m,null,p,o,0,h,y,0,i,l,d)){var k=S({ciphertext:g,mac:f},s);return M(c),k}N(c,"invalid usage")}function D(e){var t=[];Y(e);var a=new B(0|r._crypto_aead_aegis128l_keybytes()),_=a.address;t.push(_),r._crypto_aead_aegis128l_keygen(_);var n=S(a,e);return M(t),n}function G(e,t,a,_,n,s){var c=[];Y(s);var p=null;null!=e&&(p=K(e=O(c,e,"secret_nonce")),e.length,c.push(p)),t=O(c,t,"ciphertext");var o,h=r._crypto_aead_aegis256_abytes(),y=t.length;y<h&&L(c,"ciphertext is too short"),o=K(t),c.push(o);var i=null,l=0;null!=a&&(i=K(a=O(c,a,"additional_data")),l=a.length,c.push(i)),_=O(c,_,"public_nonce");var u,d=0|r._crypto_aead_aegis256_npubbytes();_.length!==d&&L(c,"invalid public_nonce length"),u=K(_),c.push(u),n=O(c,n,"key");var v,g=0|r._crypto_aead_aegis256_keybytes();n.length!==g&&L(c,"invalid key length"),v=K(n),c.push(v);var b=new B(y-r._crypto_aead_aegis256_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_aegis256_decrypt(f,null,p,o,y,0,i,l,0,u,v)){var m=S(b,s);return M(c),m}N(c,"ciphertext cannot be decrypted using that key")}function F(e,t,a,_,n,s,c){var p=[];Y(c);var o=null;null!=e&&(o=K(e=O(p,e,"secret_nonce")),e.length,p.push(o));var h=K(t=O(p,t,"ciphertext")),y=t.length;p.push(h),a=O(p,a,"mac");var i,l=0|r._crypto_aead_aegis256_abytes();a.length!==l&&L(p,"invalid mac length"),i=K(a),p.push(i);var u=null,d=0;null!=_&&(u=K(_=O(p,_,"additional_data")),d=_.length,p.push(u)),n=O(p,n,"public_nonce");var v,g=0|r._crypto_aead_aegis256_npubbytes();n.length!==g&&L(p,"invalid public_nonce length"),v=K(n),p.push(v),s=O(p,s,"key");var b,f=0|r._crypto_aead_aegis256_keybytes();s.length!==f&&L(p,"invalid key length"),b=K(s),p.push(b);var m=new B(0|y),k=m.address;if(p.push(k),0===r._crypto_aead_aegis256_decrypt_detached(k,o,h,y,0,i,u,d,0,v,b)){var x=S(m,c);return M(p),x}N(p,"ciphertext cannot be decrypted using that key")}function V(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"message")),o=e.length;c.push(p);var h=null,y=0;null!=t&&(h=K(t=O(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=K(a=O(c,a,"secret_nonce")),a.length,c.push(i)),_=O(c,_,"public_nonce");var l,u=0|r._crypto_aead_aegis256_npubbytes();_.length!==u&&L(c,"invalid public_nonce length"),l=K(_),c.push(l),n=O(c,n,"key");var d,v=0|r._crypto_aead_aegis256_keybytes();n.length!==v&&L(c,"invalid key length"),d=K(n),c.push(d);var g=new B(o+r._crypto_aead_aegis256_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_aegis256_encrypt(b,null,p,o,0,h,y,0,i,l,d)){var f=S(g,s);return M(c),f}N(c,"invalid usage")}function q(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"message")),o=e.length;c.push(p);var h=null,y=0;null!=t&&(h=K(t=O(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=K(a=O(c,a,"secret_nonce")),a.length,c.push(i)),_=O(c,_,"public_nonce");var l,u=0|r._crypto_aead_aegis256_npubbytes();_.length!==u&&L(c,"invalid public_nonce length"),l=K(_),c.push(l),n=O(c,n,"key");var d,v=0|r._crypto_aead_aegis256_keybytes();n.length!==v&&L(c,"invalid key length"),d=K(n),c.push(d);var g=new B(0|o),b=g.address;c.push(b);var f=new B(0|r._crypto_aead_aegis256_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_aegis256_encrypt_detached(b,m,null,p,o,0,h,y,0,i,l,d)){var k=S({ciphertext:g,mac:f},s);return M(c),k}N(c,"invalid usage")}function H(e){var t=[];Y(e);var a=new B(0|r._crypto_aead_aegis256_keybytes()),_=a.address;t.push(_),r._crypto_aead_aegis256_keygen(_);var n=S(a,e);return M(t),n}function z(e,t,a,_,n,s){var c=[];Y(s);var p=null;null!=e&&(p=K(e=O(c,e,"secret_nonce")),e.length,c.push(p)),t=O(c,t,"ciphertext");var o,h=r._crypto_aead_chacha20poly1305_abytes(),y=t.length;y<h&&L(c,"ciphertext is too short"),o=K(t),c.push(o);var i=null,l=0;null!=a&&(i=K(a=O(c,a,"additional_data")),l=a.length,c.push(i)),_=O(c,_,"public_nonce");var u,d=0|r._crypto_aead_chacha20poly1305_npubbytes();_.length!==d&&L(c,"invalid public_nonce length"),u=K(_),c.push(u),n=O(c,n,"key");var v,g=0|r._crypto_aead_chacha20poly1305_keybytes();n.length!==g&&L(c,"invalid key length"),v=K(n),c.push(v);var b=new B(y-r._crypto_aead_chacha20poly1305_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_chacha20poly1305_decrypt(f,null,p,o,y,0,i,l,0,u,v)){var m=S(b,s);return M(c),m}N(c,"ciphertext cannot be decrypted using that key")}function W(e,t,a,_,n,s,c){var p=[];Y(c);var o=null;null!=e&&(o=K(e=O(p,e,"secret_nonce")),e.length,p.push(o));var h=K(t=O(p,t,"ciphertext")),y=t.length;p.push(h),a=O(p,a,"mac");var i,l=0|r._crypto_box_macbytes();a.length!==l&&L(p,"invalid mac length"),i=K(a),p.push(i);var u=null,d=0;null!=_&&(u=K(_=O(p,_,"additional_data")),d=_.length,p.push(u)),n=O(p,n,"public_nonce");var v,g=0|r._crypto_aead_chacha20poly1305_npubbytes();n.length!==g&&L(p,"invalid public_nonce length"),v=K(n),p.push(v),s=O(p,s,"key");var b,f=0|r._crypto_aead_chacha20poly1305_keybytes();s.length!==f&&L(p,"invalid key length"),b=K(s),p.push(b);var m=new B(0|y),k=m.address;if(p.push(k),0===r._crypto_aead_chacha20poly1305_decrypt_detached(k,o,h,y,0,i,u,d,0,v,b)){var x=S(m,c);return M(p),x}N(p,"ciphertext cannot be decrypted using that key")}function j(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"message")),o=e.length;c.push(p);var h=null,y=0;null!=t&&(h=K(t=O(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=K(a=O(c,a,"secret_nonce")),a.length,c.push(i)),_=O(c,_,"public_nonce");var l,u=0|r._crypto_aead_chacha20poly1305_npubbytes();_.length!==u&&L(c,"invalid public_nonce length"),l=K(_),c.push(l),n=O(c,n,"key");var d,v=0|r._crypto_aead_chacha20poly1305_keybytes();n.length!==v&&L(c,"invalid key length"),d=K(n),c.push(d);var g=new B(o+r._crypto_aead_chacha20poly1305_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_chacha20poly1305_encrypt(b,null,p,o,0,h,y,0,i,l,d)){var f=S(g,s);return M(c),f}N(c,"invalid usage")}function J(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"message")),o=e.length;c.push(p);var h=null,y=0;null!=t&&(h=K(t=O(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=K(a=O(c,a,"secret_nonce")),a.length,c.push(i)),_=O(c,_,"public_nonce");var l,u=0|r._crypto_aead_chacha20poly1305_npubbytes();_.length!==u&&L(c,"invalid public_nonce length"),l=K(_),c.push(l),n=O(c,n,"key");var d,v=0|r._crypto_aead_chacha20poly1305_keybytes();n.length!==v&&L(c,"invalid key length"),d=K(n),c.push(d);var g=new B(0|o),b=g.address;c.push(b);var f=new B(0|r._crypto_aead_chacha20poly1305_abytes()),m=f.address;if(c.push(m),0===r._crypto_aead_chacha20poly1305_encrypt_detached(b,m,null,p,o,0,h,y,0,i,l,d)){var k=S({ciphertext:g,mac:f},s);return M(c),k}N(c,"invalid usage")}function Q(e,t,a,_,n,s){var c=[];Y(s);var p=null;null!=e&&(p=K(e=O(c,e,"secret_nonce")),e.length,c.push(p)),t=O(c,t,"ciphertext");var o,h=r._crypto_aead_chacha20poly1305_ietf_abytes(),y=t.length;y<h&&L(c,"ciphertext is too short"),o=K(t),c.push(o);var i=null,l=0;null!=a&&(i=K(a=O(c,a,"additional_data")),l=a.length,c.push(i)),_=O(c,_,"public_nonce");var u,d=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==d&&L(c,"invalid public_nonce length"),u=K(_),c.push(u),n=O(c,n,"key");var v,g=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==g&&L(c,"invalid key length"),v=K(n),c.push(v);var b=new B(y-r._crypto_aead_chacha20poly1305_ietf_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_chacha20poly1305_ietf_decrypt(f,null,p,o,y,0,i,l,0,u,v)){var m=S(b,s);return M(c),m}N(c,"ciphertext cannot be decrypted using that key")}function Z(e,t,a,_,n,s,c){var p=[];Y(c);var o=null;null!=e&&(o=K(e=O(p,e,"secret_nonce")),e.length,p.push(o));var h=K(t=O(p,t,"ciphertext")),y=t.length;p.push(h),a=O(p,a,"mac");var i,l=0|r._crypto_box_macbytes();a.length!==l&&L(p,"invalid mac length"),i=K(a),p.push(i);var u=null,d=0;null!=_&&(u=K(_=O(p,_,"additional_data")),d=_.length,p.push(u)),n=O(p,n,"public_nonce");var v,g=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();n.length!==g&&L(p,"invalid public_nonce length"),v=K(n),p.push(v),s=O(p,s,"key");var b,f=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();s.length!==f&&L(p,"invalid key length"),b=K(s),p.push(b);var m=new B(0|y),k=m.address;if(p.push(k),0===r._crypto_aead_chacha20poly1305_ietf_decrypt_detached(k,o,h,y,0,i,u,d,0,v,b)){var x=S(m,c);return M(p),x}N(p,"ciphertext cannot be decrypted using that key")}function $(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"message")),o=e.length;c.push(p);var h=null,y=0;null!=t&&(h=K(t=O(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=K(a=O(c,a,"secret_nonce")),a.length,c.push(i)),_=O(c,_,"public_nonce");var l,u=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==u&&L(c,"invalid public_nonce length"),l=K(_),c.push(l),n=O(c,n,"key");var d,v=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==v&&L(c,"invalid key length"),d=K(n),c.push(d);var g=new B(o+r._crypto_aead_chacha20poly1305_ietf_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_chacha20poly1305_ietf_encrypt(b,null,p,o,0,h,y,0,i,l,d)){var f=S(g,s);return M(c),f}N(c,"invalid usage")}function ee(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"message")),o=e.length;c.push(p);var h=null,y=0;null!=t&&(h=K(t=O(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=K(a=O(c,a,"secret_nonce")),a.length,c.push(i)),_=O(c,_,"public_nonce");var l,u=0|r._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==u&&L(c,"invalid public_nonce length"),l=K(_),c.push(l),n=O(c,n,"key");var d,v=0|r._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==v&&L(c,"invalid key length"),d=K(n),c.push(d);var g=new B(0|o),b=g.address;c.push(b);var f=new B(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,p,o,0,h,y,0,i,l,d)){var k=S({ciphertext:g,mac:f},s);return M(c),k}N(c,"invalid usage")}function re(e){var t=[];Y(e);var a=new B(0|r._crypto_aead_chacha20poly1305_ietf_keybytes()),_=a.address;t.push(_),r._crypto_aead_chacha20poly1305_ietf_keygen(_);var n=S(a,e);return M(t),n}function te(e){var t=[];Y(e);var a=new B(0|r._crypto_aead_chacha20poly1305_keybytes()),_=a.address;t.push(_),r._crypto_aead_chacha20poly1305_keygen(_);var n=S(a,e);return M(t),n}function ae(e,t,a,_,n,s){var c=[];Y(s);var p=null;null!=e&&(p=K(e=O(c,e,"secret_nonce")),e.length,c.push(p)),t=O(c,t,"ciphertext");var o,h=r._crypto_aead_xchacha20poly1305_ietf_abytes(),y=t.length;y<h&&L(c,"ciphertext is too short"),o=K(t),c.push(o);var i=null,l=0;null!=a&&(i=K(a=O(c,a,"additional_data")),l=a.length,c.push(i)),_=O(c,_,"public_nonce");var u,d=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==d&&L(c,"invalid public_nonce length"),u=K(_),c.push(u),n=O(c,n,"key");var v,g=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==g&&L(c,"invalid key length"),v=K(n),c.push(v);var b=new B(y-r._crypto_aead_xchacha20poly1305_ietf_abytes()|0),f=b.address;if(c.push(f),0===r._crypto_aead_xchacha20poly1305_ietf_decrypt(f,null,p,o,y,0,i,l,0,u,v)){var m=S(b,s);return M(c),m}N(c,"ciphertext cannot be decrypted using that key")}function _e(e,t,a,_,n,s,c){var p=[];Y(c);var o=null;null!=e&&(o=K(e=O(p,e,"secret_nonce")),e.length,p.push(o));var h=K(t=O(p,t,"ciphertext")),y=t.length;p.push(h),a=O(p,a,"mac");var i,l=0|r._crypto_box_macbytes();a.length!==l&&L(p,"invalid mac length"),i=K(a),p.push(i);var u=null,d=0;null!=_&&(u=K(_=O(p,_,"additional_data")),d=_.length,p.push(u)),n=O(p,n,"public_nonce");var v,g=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();n.length!==g&&L(p,"invalid public_nonce length"),v=K(n),p.push(v),s=O(p,s,"key");var b,f=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();s.length!==f&&L(p,"invalid key length"),b=K(s),p.push(b);var m=new B(0|y),k=m.address;if(p.push(k),0===r._crypto_aead_xchacha20poly1305_ietf_decrypt_detached(k,o,h,y,0,i,u,d,0,v,b)){var x=S(m,c);return M(p),x}N(p,"ciphertext cannot be decrypted using that key")}function ne(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"message")),o=e.length;c.push(p);var h=null,y=0;null!=t&&(h=K(t=O(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=K(a=O(c,a,"secret_nonce")),a.length,c.push(i)),_=O(c,_,"public_nonce");var l,u=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==u&&L(c,"invalid public_nonce length"),l=K(_),c.push(l),n=O(c,n,"key");var d,v=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==v&&L(c,"invalid key length"),d=K(n),c.push(d);var g=new B(o+r._crypto_aead_xchacha20poly1305_ietf_abytes()|0),b=g.address;if(c.push(b),0===r._crypto_aead_xchacha20poly1305_ietf_encrypt(b,null,p,o,0,h,y,0,i,l,d)){var f=S(g,s);return M(c),f}N(c,"invalid usage")}function se(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"message")),o=e.length;c.push(p);var h=null,y=0;null!=t&&(h=K(t=O(c,t,"additional_data")),y=t.length,c.push(h));var i=null;null!=a&&(i=K(a=O(c,a,"secret_nonce")),a.length,c.push(i)),_=O(c,_,"public_nonce");var l,u=0|r._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==u&&L(c,"invalid public_nonce length"),l=K(_),c.push(l),n=O(c,n,"key");var d,v=0|r._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==v&&L(c,"invalid key length"),d=K(n),c.push(d);var g=new B(0|o),b=g.address;c.push(b);var f=new B(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,p,o,0,h,y,0,i,l,d)){var k=S({ciphertext:g,mac:f},s);return M(c),k}N(c,"invalid usage")}function ce(e){var t=[];Y(e);var a=new B(0|r._crypto_aead_xchacha20poly1305_ietf_keybytes()),_=a.address;t.push(_),r._crypto_aead_xchacha20poly1305_ietf_keygen(_);var n=S(a,e);return M(t),n}function pe(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_auth_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_auth_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_auth(h,n,s,0,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function oe(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_auth_hmacsha256_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_auth_hmacsha256_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_auth_hmacsha256(h,n,s,0,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function he(e,t){var a=[];Y(t),U(a,e,"state_address");var _=new B(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),S(_,t));return M(a),s}N(a,"invalid usage")}function ye(e,t){var a=[];Y(t);var _=null,n=0;null!=e&&(_=K(e=O(a,e,"key")),n=e.length,a.push(_));var s=new B(208).address;if(!(0|r._crypto_auth_hmacsha256_init(s,_,n))){var c=s;return M(a),c}N(a,"invalid usage")}function ie(e){var t=[];Y(e);var a=new B(0|r._crypto_auth_hmacsha256_keybytes()),_=a.address;t.push(_),r._crypto_auth_hmacsha256_keygen(_);var n=S(a,e);return M(t),n}function le(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_auth_hmacsha256_update(e,n,s)&&N(_,"invalid usage"),M(_)}function ue(e,t,a){var _=[];e=O(_,e,"tag");var n,s=0|r._crypto_auth_hmacsha256_bytes();e.length!==s&&L(_,"invalid tag length"),n=K(e),_.push(n);var c=K(t=O(_,t,"message")),p=t.length;_.push(c),a=O(_,a,"key");var o,h=0|r._crypto_auth_hmacsha256_keybytes();a.length!==h&&L(_,"invalid key length"),o=K(a),_.push(o);var y=!(0|r._crypto_auth_hmacsha256_verify(n,c,p,0,o));return M(_),y}function de(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_auth_hmacsha512_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_auth_hmacsha512_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_auth_hmacsha512(h,n,s,0,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function ve(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_auth_hmacsha512256_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_auth_hmacsha512256_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_auth_hmacsha512256(h,n,s,0,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function ge(e,t){var a=[];Y(t),U(a,e,"state_address");var _=new B(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),S(_,t));return M(a),s}N(a,"invalid usage")}function be(e,t){var a=[];Y(t);var _=null,n=0;null!=e&&(_=K(e=O(a,e,"key")),n=e.length,a.push(_));var s=new B(416).address;if(!(0|r._crypto_auth_hmacsha512256_init(s,_,n))){var c=s;return M(a),c}N(a,"invalid usage")}function fe(e){var t=[];Y(e);var a=new B(0|r._crypto_auth_hmacsha512256_keybytes()),_=a.address;t.push(_),r._crypto_auth_hmacsha512256_keygen(_);var n=S(a,e);return M(t),n}function me(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_auth_hmacsha512256_update(e,n,s)&&N(_,"invalid usage"),M(_)}function ke(e,t,a){var _=[];e=O(_,e,"tag");var n,s=0|r._crypto_auth_hmacsha512256_bytes();e.length!==s&&L(_,"invalid tag length"),n=K(e),_.push(n);var c=K(t=O(_,t,"message")),p=t.length;_.push(c),a=O(_,a,"key");var o,h=0|r._crypto_auth_hmacsha512256_keybytes();a.length!==h&&L(_,"invalid key length"),o=K(a),_.push(o);var y=!(0|r._crypto_auth_hmacsha512256_verify(n,c,p,0,o));return M(_),y}function xe(e,t){var a=[];Y(t),U(a,e,"state_address");var _=new B(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),S(_,t));return M(a),s}N(a,"invalid usage")}function Ee(e,t){var a=[];Y(t);var _=null,n=0;null!=e&&(_=K(e=O(a,e,"key")),n=e.length,a.push(_));var s=new B(416).address;if(!(0|r._crypto_auth_hmacsha512_init(s,_,n))){var c=s;return M(a),c}N(a,"invalid usage")}function Te(e){var t=[];Y(e);var a=new B(0|r._crypto_auth_hmacsha512_keybytes()),_=a.address;t.push(_),r._crypto_auth_hmacsha512_keygen(_);var n=S(a,e);return M(t),n}function Se(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_auth_hmacsha512_update(e,n,s)&&N(_,"invalid usage"),M(_)}function we(e,t,a){var _=[];e=O(_,e,"tag");var n,s=0|r._crypto_auth_hmacsha512_bytes();e.length!==s&&L(_,"invalid tag length"),n=K(e),_.push(n);var c=K(t=O(_,t,"message")),p=t.length;_.push(c),a=O(_,a,"key");var o,h=0|r._crypto_auth_hmacsha512_keybytes();a.length!==h&&L(_,"invalid key length"),o=K(a),_.push(o);var y=!(0|r._crypto_auth_hmacsha512_verify(n,c,p,0,o));return M(_),y}function Ye(e){var t=[];Y(e);var a=new B(0|r._crypto_auth_keybytes()),_=a.address;t.push(_),r._crypto_auth_keygen(_);var n=S(a,e);return M(t),n}function Be(e,t,a){var _=[];e=O(_,e,"tag");var n,s=0|r._crypto_auth_bytes();e.length!==s&&L(_,"invalid tag length"),n=K(e),_.push(n);var c=K(t=O(_,t,"message")),p=t.length;_.push(c),a=O(_,a,"key");var o,h=0|r._crypto_auth_keybytes();a.length!==h&&L(_,"invalid key length"),o=K(a),_.push(o);var y=!(0|r._crypto_auth_verify(n,c,p,0,o));return M(_),y}function Ke(e,t,a){var _=[];Y(a),e=O(_,e,"publicKey");var n,s=0|r._crypto_box_publickeybytes();e.length!==s&&L(_,"invalid publicKey length"),n=K(e),_.push(n),t=O(_,t,"privateKey");var c,p=0|r._crypto_box_secretkeybytes();t.length!==p&&L(_,"invalid privateKey length"),c=K(t),_.push(c);var o=new B(0|r._crypto_box_beforenmbytes()),h=o.address;if(_.push(h),!(0|r._crypto_box_beforenm(h,n,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function Ae(e,t,a){var _=[];Y(a),e=O(_,e,"publicKey");var n,s=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();e.length!==s&&L(_,"invalid publicKey length"),n=K(e),_.push(n),t=O(_,t,"privateKey");var c,p=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();t.length!==p&&L(_,"invalid privateKey length"),c=K(t),_.push(c);var o=new B(0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes()),h=o.address;if(_.push(h),!(0|r._crypto_box_curve25519xchacha20poly1305_beforenm(h,n,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function Ie(e,t,a,_,n){var s=[];Y(n);var c=K(e=O(s,e,"message")),p=e.length;s.push(c),t=O(s,t,"nonce");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==h&&L(s,"invalid nonce length"),o=K(t),s.push(o),a=O(s,a,"publicKey");var y,i=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==i&&L(s,"invalid publicKey length"),y=K(a),s.push(y),_=O(s,_,"privateKey");var l,u=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==u&&L(s,"invalid privateKey length"),l=K(_),s.push(l);var d=new B(0|p),v=d.address;s.push(v);var g=new B(0|r._crypto_box_curve25519xchacha20poly1305_macbytes()),b=g.address;if(s.push(b),!(0|r._crypto_box_curve25519xchacha20poly1305_detached(v,b,c,p,0,o,y,l))){var f=S({ciphertext:d,mac:g},n);return M(s),f}N(s,"invalid usage")}function Me(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"message")),c=e.length;n.push(s),t=O(n,t,"nonce");var p,o=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==o&&L(n,"invalid nonce length"),p=K(t),n.push(p),a=O(n,a,"sharedKey");var h,y=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==y&&L(n,"invalid sharedKey length"),h=K(a),n.push(h);var i=new B(0|c),l=i.address;n.push(l);var u=new B(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,p,h))){var v=S({ciphertext:i,mac:u},_);return M(n),v}N(n,"invalid usage")}function Ne(e,t,a,_,n){var s=[];Y(n);var c=K(e=O(s,e,"message")),p=e.length;s.push(c),t=O(s,t,"nonce");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==h&&L(s,"invalid nonce length"),o=K(t),s.push(o),a=O(s,a,"publicKey");var y,i=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==i&&L(s,"invalid publicKey length"),y=K(a),s.push(y),_=O(s,_,"privateKey");var l,u=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==u&&L(s,"invalid privateKey length"),l=K(_),s.push(l);var d=new B(p+r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),v=d.address;if(s.push(v),!(0|r._crypto_box_curve25519xchacha20poly1305_easy(v,c,p,0,o,y,l))){var g=S(d,n);return M(s),g}N(s,"invalid usage")}function Le(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"message")),c=e.length;n.push(s),t=O(n,t,"nonce");var p,o=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==o&&L(n,"invalid nonce length"),p=K(t),n.push(p),a=O(n,a,"sharedKey");var h,y=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==y&&L(n,"invalid sharedKey length"),h=K(a),n.push(h);var i=new B(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,p,h))){var u=S(i,_);return M(n),u}N(n,"invalid usage")}function Ue(e){var t=[];Y(e);var a=new B(0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes()),_=a.address;t.push(_);var n=new B(0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),s=n.address;t.push(s),r._crypto_box_curve25519xchacha20poly1305_keypair(_,s);var c=S({publicKey:a,privateKey:n,keyType:"curve25519"},e);return M(t),c}function Oe(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"ciphertext")),o=e.length;c.push(p),t=O(c,t,"mac");var h,y=0|r._crypto_box_curve25519xchacha20poly1305_macbytes();t.length!==y&&L(c,"invalid mac length"),h=K(t),c.push(h),a=O(c,a,"nonce");var i,l=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==l&&L(c,"invalid nonce length"),i=K(a),c.push(i),_=O(c,_,"publicKey");var u,d=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();_.length!==d&&L(c,"invalid publicKey length"),u=K(_),c.push(u),n=O(c,n,"privateKey");var v,g=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();n.length!==g&&L(c,"invalid privateKey length"),v=K(n),c.push(v);var b=new B(0|o),f=b.address;if(c.push(f),!(0|r._crypto_box_curve25519xchacha20poly1305_open_detached(f,p,h,o,0,i,u,v))){var m=S(b,s);return M(c),m}N(c,"incorrect key pair for the given ciphertext")}function Ce(e,t,a,_,n){var s=[];Y(n);var c=K(e=O(s,e,"ciphertext")),p=e.length;s.push(c),t=O(s,t,"mac");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_macbytes();t.length!==h&&L(s,"invalid mac length"),o=K(t),s.push(o),a=O(s,a,"nonce");var y,i=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==i&&L(s,"invalid nonce length"),y=K(a),s.push(y),_=O(s,_,"sharedKey");var l,u=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();_.length!==u&&L(s,"invalid sharedKey length"),l=K(_),s.push(l);var d=new B(0|p),v=d.address;if(s.push(v),!(0|r._crypto_box_curve25519xchacha20poly1305_open_detached_afternm(v,c,o,p,0,y,l))){var g=S(d,n);return M(s),g}N(s,"incorrect secret key for the given ciphertext")}function Re(e,t,a,_,n){var s=[];Y(n),e=O(s,e,"ciphertext");var c,p=r._crypto_box_curve25519xchacha20poly1305_macbytes(),o=e.length;o<p&&L(s,"ciphertext is too short"),c=K(e),s.push(c),t=O(s,t,"nonce");var h,y=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==y&&L(s,"invalid nonce length"),h=K(t),s.push(h),a=O(s,a,"publicKey");var i,l=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==l&&L(s,"invalid publicKey length"),i=K(a),s.push(i),_=O(s,_,"privateKey");var u,d=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==d&&L(s,"invalid privateKey length"),u=K(_),s.push(u);var v=new B(o-r._crypto_box_curve25519xchacha20poly1305_macbytes()|0),g=v.address;if(s.push(g),!(0|r._crypto_box_curve25519xchacha20poly1305_open_easy(g,c,o,0,h,i,u))){var b=S(v,n);return M(s),b}N(s,"incorrect key pair for the given ciphertext")}function Pe(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"ciphertext")),c=e.length;n.push(s),t=O(n,t,"nonce");var p,o=0|r._crypto_box_curve25519xchacha20poly1305_noncebytes();t.length!==o&&L(n,"invalid nonce length"),p=K(t),n.push(p),a=O(n,a,"sharedKey");var h,y=0|r._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==y&&L(n,"invalid sharedKey length"),h=K(a),n.push(h);var i=new B(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,p,h))){var u=S(i,_);return M(n),u}N(n,"incorrect secret key for the given ciphertext")}function Xe(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"publicKey");var c,p=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==p&&L(_,"invalid publicKey length"),c=K(t),_.push(c);var o=new B(s+r._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),h=o.address;_.push(h),r._crypto_box_curve25519xchacha20poly1305_seal(h,n,s,0,c);var y=S(o,a);return M(_),y}function De(e,t,a,_){var n=[];Y(_),e=O(n,e,"ciphertext");var s,c=r._crypto_box_curve25519xchacha20poly1305_sealbytes(),p=e.length;p<c&&L(n,"ciphertext is too short"),s=K(e),n.push(s),t=O(n,t,"publicKey");var o,h=0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==h&&L(n,"invalid publicKey length"),o=K(t),n.push(o),a=O(n,a,"secretKey");var y,i=0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes();a.length!==i&&L(n,"invalid secretKey length"),y=K(a),n.push(y);var l=new B(p-r._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),u=l.address;n.push(u),r._crypto_box_curve25519xchacha20poly1305_seal_open(u,s,p,0,o,y);var d=S(l,_);return M(n),d}function Ge(e,t){var a=[];Y(t),e=O(a,e,"seed");var _,n=0|r._crypto_box_curve25519xchacha20poly1305_seedbytes();e.length!==n&&L(a,"invalid seed length"),_=K(e),a.push(_);var s=new B(0|r._crypto_box_curve25519xchacha20poly1305_publickeybytes()),c=s.address;a.push(c);var p=new B(0|r._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_box_curve25519xchacha20poly1305_seed_keypair(c,o,_))){var h={publicKey:S(s,t),privateKey:S(p,t),keyType:"x25519"};return M(a),h}N(a,"invalid usage")}function Fe(e,t,a,_,n){var s=[];Y(n);var c=K(e=O(s,e,"message")),p=e.length;s.push(c),t=O(s,t,"nonce");var o,h=0|r._crypto_box_noncebytes();t.length!==h&&L(s,"invalid nonce length"),o=K(t),s.push(o),a=O(s,a,"publicKey");var y,i=0|r._crypto_box_publickeybytes();a.length!==i&&L(s,"invalid publicKey length"),y=K(a),s.push(y),_=O(s,_,"privateKey");var l,u=0|r._crypto_box_secretkeybytes();_.length!==u&&L(s,"invalid privateKey length"),l=K(_),s.push(l);var d=new B(0|p),v=d.address;s.push(v);var g=new B(0|r._crypto_box_macbytes()),b=g.address;if(s.push(b),!(0|r._crypto_box_detached(v,b,c,p,0,o,y,l))){var f=S({ciphertext:d,mac:g},n);return M(s),f}N(s,"invalid usage")}function Ve(e,t,a,_,n){var s=[];Y(n);var c=K(e=O(s,e,"message")),p=e.length;s.push(c),t=O(s,t,"nonce");var o,h=0|r._crypto_box_noncebytes();t.length!==h&&L(s,"invalid nonce length"),o=K(t),s.push(o),a=O(s,a,"publicKey");var y,i=0|r._crypto_box_publickeybytes();a.length!==i&&L(s,"invalid publicKey length"),y=K(a),s.push(y),_=O(s,_,"privateKey");var l,u=0|r._crypto_box_secretkeybytes();_.length!==u&&L(s,"invalid privateKey length"),l=K(_),s.push(l);var d=new B(p+r._crypto_box_macbytes()|0),v=d.address;if(s.push(v),!(0|r._crypto_box_easy(v,c,p,0,o,y,l))){var g=S(d,n);return M(s),g}N(s,"invalid usage")}function qe(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"message")),c=e.length;n.push(s),t=O(n,t,"nonce");var p,o=0|r._crypto_box_noncebytes();t.length!==o&&L(n,"invalid nonce length"),p=K(t),n.push(p),a=O(n,a,"sharedKey");var h,y=0|r._crypto_box_beforenmbytes();a.length!==y&&L(n,"invalid sharedKey length"),h=K(a),n.push(h);var i=new B(c+r._crypto_box_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_box_easy_afternm(l,s,c,0,p,h))){var u=S(i,_);return M(n),u}N(n,"invalid usage")}function He(e){var t=[];Y(e);var a=new B(0|r._crypto_box_publickeybytes()),_=a.address;t.push(_);var n=new B(0|r._crypto_box_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_box_keypair(_,s))){var c={publicKey:S(a,e),privateKey:S(n,e),keyType:"x25519"};return M(t),c}N(t,"internal error")}function ze(e,t,a,_,n,s){var c=[];Y(s);var p=K(e=O(c,e,"ciphertext")),o=e.length;c.push(p),t=O(c,t,"mac");var h,y=0|r._crypto_box_macbytes();t.length!==y&&L(c,"invalid mac length"),h=K(t),c.push(h),a=O(c,a,"nonce");var i,l=0|r._crypto_box_noncebytes();a.length!==l&&L(c,"invalid nonce length"),i=K(a),c.push(i),_=O(c,_,"publicKey");var u,d=0|r._crypto_box_publickeybytes();_.length!==d&&L(c,"invalid publicKey length"),u=K(_),c.push(u),n=O(c,n,"privateKey");var v,g=0|r._crypto_box_secretkeybytes();n.length!==g&&L(c,"invalid privateKey length"),v=K(n),c.push(v);var b=new B(0|o),f=b.address;if(c.push(f),!(0|r._crypto_box_open_detached(f,p,h,o,0,i,u,v))){var m=S(b,s);return M(c),m}N(c,"incorrect key pair for the given ciphertext")}function We(e,t,a,_,n){var s=[];Y(n),e=O(s,e,"ciphertext");var c,p=r._crypto_box_macbytes(),o=e.length;o<p&&L(s,"ciphertext is too short"),c=K(e),s.push(c),t=O(s,t,"nonce");var h,y=0|r._crypto_box_noncebytes();t.length!==y&&L(s,"invalid nonce length"),h=K(t),s.push(h),a=O(s,a,"publicKey");var i,l=0|r._crypto_box_publickeybytes();a.length!==l&&L(s,"invalid publicKey length"),i=K(a),s.push(i),_=O(s,_,"privateKey");var u,d=0|r._crypto_box_secretkeybytes();_.length!==d&&L(s,"invalid privateKey length"),u=K(_),s.push(u);var v=new B(o-r._crypto_box_macbytes()|0),g=v.address;if(s.push(g),!(0|r._crypto_box_open_easy(g,c,o,0,h,i,u))){var b=S(v,n);return M(s),b}N(s,"incorrect key pair for the given ciphertext")}function je(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"ciphertext")),c=e.length;n.push(s),t=O(n,t,"nonce");var p,o=0|r._crypto_box_noncebytes();t.length!==o&&L(n,"invalid nonce length"),p=K(t),n.push(p),a=O(n,a,"sharedKey");var h,y=0|r._crypto_box_beforenmbytes();a.length!==y&&L(n,"invalid sharedKey length"),h=K(a),n.push(h);var i=new B(c-r._crypto_box_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_box_open_easy_afternm(l,s,c,0,p,h))){var u=S(i,_);return M(n),u}N(n,"incorrect secret key for the given ciphertext")}function Je(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"publicKey");var c,p=0|r._crypto_box_publickeybytes();t.length!==p&&L(_,"invalid publicKey length"),c=K(t),_.push(c);var o=new B(s+r._crypto_box_sealbytes()|0),h=o.address;if(_.push(h),!(0|r._crypto_box_seal(h,n,s,0,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function Qe(e,t,a,_){var n=[];Y(_),e=O(n,e,"ciphertext");var s,c=r._crypto_box_sealbytes(),p=e.length;p<c&&L(n,"ciphertext is too short"),s=K(e),n.push(s),t=O(n,t,"publicKey");var o,h=0|r._crypto_box_publickeybytes();t.length!==h&&L(n,"invalid publicKey length"),o=K(t),n.push(o),a=O(n,a,"privateKey");var y,i=0|r._crypto_box_secretkeybytes();a.length!==i&&L(n,"invalid privateKey length"),y=K(a),n.push(y);var l=new B(p-r._crypto_box_sealbytes()|0),u=l.address;if(n.push(u),!(0|r._crypto_box_seal_open(u,s,p,0,o,y))){var d=S(l,_);return M(n),d}N(n,"incorrect key pair for the given ciphertext")}function Ze(e,t){var a=[];Y(t),e=O(a,e,"seed");var _,n=0|r._crypto_box_seedbytes();e.length!==n&&L(a,"invalid seed length"),_=K(e),a.push(_);var s=new B(0|r._crypto_box_publickeybytes()),c=s.address;a.push(c);var p=new B(0|r._crypto_box_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_box_seed_keypair(c,o,_))){var h={publicKey:S(s,t),privateKey:S(p,t),keyType:"x25519"};return M(a),h}N(a,"invalid usage")}function $e(e,t,a){var _=[];Y(a),e=O(_,e,"p");var n,s=0|r._crypto_core_ed25519_bytes();e.length!==s&&L(_,"invalid p length"),n=K(e),_.push(n),t=O(_,t,"q");var c,p=0|r._crypto_core_ed25519_bytes();t.length!==p&&L(_,"invalid q length"),c=K(t),_.push(c);var o=new B(0|r._crypto_core_ed25519_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_core_ed25519_add(h,n,c))){var y=S(o,a);return M(_),y}N(_,"input is an invalid element")}function er(e,t){var a=[];Y(t);var _=K(e=O(a,e,"r"));e.length,a.push(_);var n=new B(0|r._crypto_core_ed25519_bytes()),s=n.address;if(a.push(s),!(0|r._crypto_core_ed25519_from_hash(s,_))){var c=S(n,t);return M(a),c}N(a,"invalid usage")}function rr(e,t){var a=[];Y(t);var _=K(e=O(a,e,"r"));e.length,a.push(_);var n=new B(0|r._crypto_core_ed25519_bytes()),s=n.address;if(a.push(s),!(0|r._crypto_core_ed25519_from_uniform(s,_))){var c=S(n,t);return M(a),c}N(a,"invalid usage")}function tr(e,t){var a=[];Y(t),e=O(a,e,"repr");var _,n=0|r._crypto_core_ed25519_bytes();e.length!==n&&L(a,"invalid repr length"),_=K(e),a.push(_);var s=1==(0|r._crypto_core_ed25519_is_valid_point(_));return M(a),s}function ar(e){var t=[];Y(e);var a=new B(0|r._crypto_core_ed25519_bytes()),_=a.address;t.push(_),r._crypto_core_ed25519_random(_);var n=S(a,e);return M(t),n}function _r(e,t,a){var _=[];Y(a),e=O(_,e,"x");var n,s=0|r._crypto_core_ed25519_scalarbytes();e.length!==s&&L(_,"invalid x length"),n=K(e),_.push(n),t=O(_,t,"y");var c,p=0|r._crypto_core_ed25519_scalarbytes();t.length!==p&&L(_,"invalid y length"),c=K(t),_.push(c);var o=new B(0|r._crypto_core_ed25519_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ed25519_scalar_add(h,n,c);var y=S(o,a);return M(_),y}function nr(e,t){var a=[];Y(t),e=O(a,e,"s");var _,n=0|r._crypto_core_ed25519_scalarbytes();e.length!==n&&L(a,"invalid s length"),_=K(e),a.push(_);var s=new B(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ed25519_scalar_complement(c,_);var p=S(s,t);return M(a),p}function sr(e,t){var a=[];Y(t),e=O(a,e,"s");var _,n=0|r._crypto_core_ed25519_scalarbytes();e.length!==n&&L(a,"invalid s length"),_=K(e),a.push(_);var s=new B(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_core_ed25519_scalar_invert(c,_))){var p=S(s,t);return M(a),p}N(a,"invalid reciprocate")}function cr(e,t,a){var _=[];Y(a),e=O(_,e,"x");var n,s=0|r._crypto_core_ed25519_scalarbytes();e.length!==s&&L(_,"invalid x length"),n=K(e),_.push(n),t=O(_,t,"y");var c,p=0|r._crypto_core_ed25519_scalarbytes();t.length!==p&&L(_,"invalid y length"),c=K(t),_.push(c);var o=new B(0|r._crypto_core_ed25519_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ed25519_scalar_mul(h,n,c);var y=S(o,a);return M(_),y}function pr(e,t){var a=[];Y(t),e=O(a,e,"s");var _,n=0|r._crypto_core_ed25519_scalarbytes();e.length!==n&&L(a,"invalid s length"),_=K(e),a.push(_);var s=new B(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ed25519_scalar_negate(c,_);var p=S(s,t);return M(a),p}function or(e){var t=[];Y(e);var a=new B(0|r._crypto_core_ed25519_scalarbytes()),_=a.address;t.push(_),r._crypto_core_ed25519_scalar_random(_);var n=S(a,e);return M(t),n}function hr(e,t){var a=[];Y(t),e=O(a,e,"sample");var _,n=0|r._crypto_core_ed25519_nonreducedscalarbytes();e.length!==n&&L(a,"invalid sample length"),_=K(e),a.push(_);var s=new B(0|r._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ed25519_scalar_reduce(c,_);var p=S(s,t);return M(a),p}function yr(e,t,a){var _=[];Y(a),e=O(_,e,"x");var n,s=0|r._crypto_core_ed25519_scalarbytes();e.length!==s&&L(_,"invalid x length"),n=K(e),_.push(n),t=O(_,t,"y");var c,p=0|r._crypto_core_ed25519_scalarbytes();t.length!==p&&L(_,"invalid y length"),c=K(t),_.push(c);var o=new B(0|r._crypto_core_ed25519_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ed25519_scalar_sub(h,n,c);var y=S(o,a);return M(_),y}function ir(e,t,a){var _=[];Y(a),e=O(_,e,"p");var n,s=0|r._crypto_core_ed25519_bytes();e.length!==s&&L(_,"invalid p length"),n=K(e),_.push(n),t=O(_,t,"q");var c,p=0|r._crypto_core_ed25519_bytes();t.length!==p&&L(_,"invalid q length"),c=K(t),_.push(c);var o=new B(0|r._crypto_core_ed25519_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_core_ed25519_sub(h,n,c))){var y=S(o,a);return M(_),y}N(_,"input is an invalid element")}function lr(e,t,a,_){var n=[];Y(_),e=O(n,e,"input");var s,c=0|r._crypto_core_hchacha20_inputbytes();e.length!==c&&L(n,"invalid input length"),s=K(e),n.push(s),t=O(n,t,"privateKey");var p,o=0|r._crypto_core_hchacha20_keybytes();t.length!==o&&L(n,"invalid privateKey length"),p=K(t),n.push(p);var h=null;null!=a&&(h=K(a=O(n,a,"constant")),a.length,n.push(h));var y=new B(0|r._crypto_core_hchacha20_outputbytes()),i=y.address;if(n.push(i),!(0|r._crypto_core_hchacha20(i,s,p,h))){var l=S(y,_);return M(n),l}N(n,"invalid usage")}function ur(e,t,a,_){var n=[];Y(_),e=O(n,e,"input");var s,c=0|r._crypto_core_hsalsa20_inputbytes();e.length!==c&&L(n,"invalid input length"),s=K(e),n.push(s),t=O(n,t,"privateKey");var p,o=0|r._crypto_core_hsalsa20_keybytes();t.length!==o&&L(n,"invalid privateKey length"),p=K(t),n.push(p);var h=null;null!=a&&(h=K(a=O(n,a,"constant")),a.length,n.push(h));var y=new B(0|r._crypto_core_hsalsa20_outputbytes()),i=y.address;if(n.push(i),!(0|r._crypto_core_hsalsa20(i,s,p,h))){var l=S(y,_);return M(n),l}N(n,"invalid usage")}function dr(e,t,a){var _=[];Y(a),e=O(_,e,"p");var n,s=0|r._crypto_core_ristretto255_bytes();e.length!==s&&L(_,"invalid p length"),n=K(e),_.push(n),t=O(_,t,"q");var c,p=0|r._crypto_core_ristretto255_bytes();t.length!==p&&L(_,"invalid q length"),c=K(t),_.push(c);var o=new B(0|r._crypto_core_ristretto255_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_core_ristretto255_add(h,n,c))){var y=S(o,a);return M(_),y}N(_,"input is an invalid element")}function vr(e,t){var a=[];Y(t);var _=K(e=O(a,e,"r"));e.length,a.push(_);var n=new B(0|r._crypto_core_ristretto255_bytes()),s=n.address;if(a.push(s),!(0|r._crypto_core_ristretto255_from_hash(s,_))){var c=S(n,t);return M(a),c}N(a,"invalid usage")}function gr(e,t){var a=[];Y(t),e=O(a,e,"repr");var _,n=0|r._crypto_core_ristretto255_bytes();e.length!==n&&L(a,"invalid repr length"),_=K(e),a.push(_);var s=1==(0|r._crypto_core_ristretto255_is_valid_point(_));return M(a),s}function br(e){var t=[];Y(e);var a=new B(0|r._crypto_core_ristretto255_bytes()),_=a.address;t.push(_),r._crypto_core_ristretto255_random(_);var n=S(a,e);return M(t),n}function fr(e,t,a){var _=[];Y(a),e=O(_,e,"x");var n,s=0|r._crypto_core_ristretto255_scalarbytes();e.length!==s&&L(_,"invalid x length"),n=K(e),_.push(n),t=O(_,t,"y");var c,p=0|r._crypto_core_ristretto255_scalarbytes();t.length!==p&&L(_,"invalid y length"),c=K(t),_.push(c);var o=new B(0|r._crypto_core_ristretto255_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ristretto255_scalar_add(h,n,c);var y=S(o,a);return M(_),y}function mr(e,t){var a=[];Y(t),e=O(a,e,"s");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&L(a,"invalid s length"),_=K(e),a.push(_);var s=new B(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ristretto255_scalar_complement(c,_);var p=S(s,t);return M(a),p}function kr(e,t){var a=[];Y(t),e=O(a,e,"s");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&L(a,"invalid s length"),_=K(e),a.push(_);var s=new B(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_core_ristretto255_scalar_invert(c,_))){var p=S(s,t);return M(a),p}N(a,"invalid reciprocate")}function xr(e,t,a){var _=[];Y(a),e=O(_,e,"x");var n,s=0|r._crypto_core_ristretto255_scalarbytes();e.length!==s&&L(_,"invalid x length"),n=K(e),_.push(n),t=O(_,t,"y");var c,p=0|r._crypto_core_ristretto255_scalarbytes();t.length!==p&&L(_,"invalid y length"),c=K(t),_.push(c);var o=new B(0|r._crypto_core_ristretto255_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ristretto255_scalar_mul(h,n,c);var y=S(o,a);return M(_),y}function Er(e,t){var a=[];Y(t),e=O(a,e,"s");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&L(a,"invalid s length"),_=K(e),a.push(_);var s=new B(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ristretto255_scalar_negate(c,_);var p=S(s,t);return M(a),p}function Tr(e){var t=[];Y(e);var a=new B(0|r._crypto_core_ristretto255_scalarbytes()),_=a.address;t.push(_),r._crypto_core_ristretto255_scalar_random(_);var n=S(a,e);return M(t),n}function Sr(e,t){var a=[];Y(t),e=O(a,e,"sample");var _,n=0|r._crypto_core_ristretto255_nonreducedscalarbytes();e.length!==n&&L(a,"invalid sample length"),_=K(e),a.push(_);var s=new B(0|r._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),r._crypto_core_ristretto255_scalar_reduce(c,_);var p=S(s,t);return M(a),p}function wr(e,t,a){var _=[];Y(a),e=O(_,e,"x");var n,s=0|r._crypto_core_ristretto255_scalarbytes();e.length!==s&&L(_,"invalid x length"),n=K(e),_.push(n),t=O(_,t,"y");var c,p=0|r._crypto_core_ristretto255_scalarbytes();t.length!==p&&L(_,"invalid y length"),c=K(t),_.push(c);var o=new B(0|r._crypto_core_ristretto255_scalarbytes()),h=o.address;_.push(h),r._crypto_core_ristretto255_scalar_sub(h,n,c);var y=S(o,a);return M(_),y}function Yr(e,t,a){var _=[];Y(a),e=O(_,e,"p");var n,s=0|r._crypto_core_ristretto255_bytes();e.length!==s&&L(_,"invalid p length"),n=K(e),_.push(n),t=O(_,t,"q");var c,p=0|r._crypto_core_ristretto255_bytes();t.length!==p&&L(_,"invalid q length"),c=K(t),_.push(c);var o=new B(0|r._crypto_core_ristretto255_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_core_ristretto255_sub(h,n,c))){var y=S(o,a);return M(_),y}N(_,"input is an invalid element")}function Br(e,t,a,_){var n=[];Y(_),U(n,e,"hash_length"),("number"!=typeof e||(0|e)!==e||e<0)&&L(n,"hash_length must be an unsigned integer");var s=K(t=O(n,t,"message")),c=t.length;n.push(s);var p=null,o=0;null!=a&&(p=K(a=O(n,a,"key")),o=a.length,n.push(p));var h=new B(e|=0),y=h.address;if(n.push(y),!(0|r._crypto_generichash(y,e,s,c,0,p,o))){var i=S(h,_);return M(n),i}N(n,"invalid usage")}function Kr(e,t,a,_,n){var s=[];Y(n),U(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&L(s,"subkey_len must be an unsigned integer");var c=null,p=0;null!=t&&(c=K(t=O(s,t,"key")),p=t.length,s.push(c));var o=null,h=0;null!=a&&(a=O(s,a,"id"),h=0|r._crypto_generichash_blake2b_saltbytes(),a.length!==h&&L(s,"invalid id length"),o=K(a),s.push(o));var y=null,i=0;null!=_&&(_=O(s,_,"ctx"),i=0|r._crypto_generichash_blake2b_personalbytes(),_.length!==i&&L(s,"invalid ctx length"),y=K(_),s.push(y));var l=new B(0|e),u=l.address;if(s.push(u),!(0|r._crypto_generichash_blake2b_salt_personal(u,e,null,0,0,c,p,o,y))){var d=S(l,n);return M(s),d}N(s,"invalid usage")}function Ar(e,t,a){var _=[];Y(a),U(_,e,"state_address"),U(_,t,"hash_length"),("number"!=typeof t||(0|t)!==t||t<0)&&L(_,"hash_length must be an unsigned integer");var n=new B(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_generichash_final(e,s,t))){var c=(r._free(e),S(n,a));return M(_),c}N(_,"invalid usage")}function Ir(e,t,a){var _=[];Y(a);var n=null,s=0;null!=e&&(n=K(e=O(_,e,"key")),s=e.length,_.push(n)),U(_,t,"hash_length"),("number"!=typeof t||(0|t)!==t||t<0)&&L(_,"hash_length must be an unsigned integer");var c=new B(357).address;if(!(0|r._crypto_generichash_init(c,n,s,t))){var p=c;return M(_),p}N(_,"invalid usage")}function Mr(e){var t=[];Y(e);var a=new B(0|r._crypto_generichash_keybytes()),_=a.address;t.push(_),r._crypto_generichash_keygen(_);var n=S(a,e);return M(t),n}function Nr(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_generichash_update(e,n,s)&&N(_,"invalid usage"),M(_)}function Lr(e,t){var a=[];Y(t);var _=K(e=O(a,e,"message")),n=e.length;a.push(_);var s=new B(0|r._crypto_hash_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash(c,_,n,0))){var p=S(s,t);return M(a),p}N(a,"invalid usage")}function Ur(e,t){var a=[];Y(t);var _=K(e=O(a,e,"message")),n=e.length;a.push(_);var s=new B(0|r._crypto_hash_sha256_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash_sha256(c,_,n,0))){var p=S(s,t);return M(a),p}N(a,"invalid usage")}function Or(e,t){var a=[];Y(t),U(a,e,"state_address");var _=new B(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),S(_,t));return M(a),s}N(a,"invalid usage")}function Cr(e){var t=[];Y(e);var a=new B(104).address;if(!(0|r._crypto_hash_sha256_init(a))){var _=a;return M(t),_}N(t,"invalid usage")}function Rr(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_hash_sha256_update(e,n,s)&&N(_,"invalid usage"),M(_)}function Pr(e,t){var a=[];Y(t);var _=K(e=O(a,e,"message")),n=e.length;a.push(_);var s=new B(0|r._crypto_hash_sha3256_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash_sha3256(c,_,n))){var p=S(s,t);return M(a),p}N(a,"invalid usage")}function Xr(e,t){var a=[];Y(t),U(a,e,"state_address");var _=new B(0|r._crypto_hash_sha3256_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_hash_sha3256_final(e,n))){var s=(r._free(e),S(_,t));return M(a),s}N(a,"invalid usage")}function Dr(e){var t=[];Y(e);var a=new B(256).address;if(!(0|r._crypto_hash_sha3256_init(a))){var _=a;return M(t),_}N(t,"invalid usage")}function Gr(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_hash_sha3256_update(e,n,s)&&N(_,"invalid usage"),M(_)}function Fr(e,t){var a=[];Y(t);var _=K(e=O(a,e,"message")),n=e.length;a.push(_);var s=new B(0|r._crypto_hash_sha3512_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash_sha3512(c,_,n))){var p=S(s,t);return M(a),p}N(a,"invalid usage")}function Vr(e,t){var a=[];Y(t),U(a,e,"state_address");var _=new B(0|r._crypto_hash_sha3512_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_hash_sha3512_final(e,n))){var s=(r._free(e),S(_,t));return M(a),s}N(a,"invalid usage")}function qr(e){var t=[];Y(e);var a=new B(256).address;if(!(0|r._crypto_hash_sha3512_init(a))){var _=a;return M(t),_}N(t,"invalid usage")}function Hr(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_hash_sha3512_update(e,n,s)&&N(_,"invalid usage"),M(_)}function zr(e,t){var a=[];Y(t);var _=K(e=O(a,e,"message")),n=e.length;a.push(_);var s=new B(0|r._crypto_hash_sha512_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_hash_sha512(c,_,n,0))){var p=S(s,t);return M(a),p}N(a,"invalid usage")}function Wr(e,t){var a=[];Y(t),U(a,e,"state_address");var _=new B(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),S(_,t));return M(a),s}N(a,"invalid usage")}function jr(e){var t=[];Y(e);var a=new B(208).address;if(!(0|r._crypto_hash_sha512_init(a))){var _=a;return M(t),_}N(t,"invalid usage")}function Jr(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_hash_sha512_update(e,n,s)&&N(_,"invalid usage"),M(_)}function Qr(e,t,a){var _=[];Y(a),e=O(_,e,"input");var n,s=0|r._crypto_ipcrypt_bytes();e.length!==s&&L(_,"invalid input length"),n=K(e),_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_ipcrypt_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_ipcrypt_bytes()),h=o.address;_.push(h),r._crypto_ipcrypt_decrypt(h,n,c);var y=S(o,a);return M(_),y}function Zr(e,t,a){var _=[];Y(a),e=O(_,e,"input");var n,s=0|r._crypto_ipcrypt_bytes();e.length!==s&&L(_,"invalid input length"),n=K(e),_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_ipcrypt_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_ipcrypt_bytes()),h=o.address;_.push(h),r._crypto_ipcrypt_encrypt(h,n,c);var y=S(o,a);return M(_),y}function $r(e){var t=[];Y(e);var a=new B(0|r._crypto_ipcrypt_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_keygen(_);var n=S(a,e);return M(t),n}function et(e,t,a){var _=[];Y(a),e=O(_,e,"input");var n,s=0|r._crypto_ipcrypt_nd_outputbytes();e.length!==s&&L(_,"invalid input length"),n=K(e),_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_ipcrypt_nd_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_ipcrypt_nd_inputbytes()),h=o.address;_.push(h),r._crypto_ipcrypt_nd_decrypt(h,n,c);var y=S(o,a);return M(_),y}function rt(e,t,a,_){var n=[];Y(_),e=O(n,e,"input");var s,c=0|r._crypto_ipcrypt_nd_inputbytes();e.length!==c&&L(n,"invalid input length"),s=K(e),n.push(s),t=O(n,t,"tweak");var p,o=0|r._crypto_ipcrypt_nd_tweakbytes();t.length!==o&&L(n,"invalid tweak length"),p=K(t),n.push(p),a=O(n,a,"key");var h,y=0|r._crypto_ipcrypt_nd_keybytes();a.length!==y&&L(n,"invalid key length"),h=K(a),n.push(h);var i=new B(0|r._crypto_ipcrypt_nd_outputbytes()),l=i.address;n.push(l),r._crypto_ipcrypt_nd_encrypt(l,s,p,h);var u=S(i,_);return M(n),u}function tt(e){var t=[];Y(e);var a=new B(0|r._crypto_ipcrypt_nd_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_nd_keygen(_);var n=S(a,e);return M(t),n}function at(e,t,a){var _=[];Y(a),e=O(_,e,"input");var n,s=0|r._crypto_ipcrypt_ndx_outputbytes();e.length!==s&&L(_,"invalid input length"),n=K(e),_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_ipcrypt_ndx_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_ipcrypt_ndx_inputbytes()),h=o.address;_.push(h),r._crypto_ipcrypt_ndx_decrypt(h,n,c);var y=S(o,a);return M(_),y}function _t(e,t,a,_){var n=[];Y(_),e=O(n,e,"input");var s,c=0|r._crypto_ipcrypt_ndx_inputbytes();e.length!==c&&L(n,"invalid input length"),s=K(e),n.push(s),t=O(n,t,"tweak");var p,o=0|r._crypto_ipcrypt_ndx_tweakbytes();t.length!==o&&L(n,"invalid tweak length"),p=K(t),n.push(p),a=O(n,a,"key");var h,y=0|r._crypto_ipcrypt_ndx_keybytes();a.length!==y&&L(n,"invalid key length"),h=K(a),n.push(h);var i=new B(0|r._crypto_ipcrypt_ndx_outputbytes()),l=i.address;n.push(l),r._crypto_ipcrypt_ndx_encrypt(l,s,p,h);var u=S(i,_);return M(n),u}function nt(e){var t=[];Y(e);var a=new B(0|r._crypto_ipcrypt_ndx_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_ndx_keygen(_);var n=S(a,e);return M(t),n}function st(e,t,a){var _=[];Y(a),e=O(_,e,"input");var n,s=0|r._crypto_ipcrypt_pfx_bytes();e.length!==s&&L(_,"invalid input length"),n=K(e),_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_ipcrypt_pfx_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_ipcrypt_pfx_bytes()),h=o.address;_.push(h),r._crypto_ipcrypt_pfx_decrypt(h,n,c);var y=S(o,a);return M(_),y}function ct(e,t,a){var _=[];Y(a),e=O(_,e,"input");var n,s=0|r._crypto_ipcrypt_pfx_bytes();e.length!==s&&L(_,"invalid input length"),n=K(e),_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_ipcrypt_pfx_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_ipcrypt_pfx_bytes()),h=o.address;_.push(h),r._crypto_ipcrypt_pfx_encrypt(h,n,c);var y=S(o,a);return M(_),y}function pt(e){var t=[];Y(e);var a=new B(0|r._crypto_ipcrypt_pfx_keybytes()),_=a.address;t.push(_),r._crypto_ipcrypt_pfx_keygen(_);var n=S(a,e);return M(t),n}function ot(e,t,a,_,n){var s=[];Y(n),U(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&L(s,"subkey_len must be an unsigned integer"),U(s,t,"subkey_id");var c,p=0;if("bigint"==typeof t&&t>=BigInt(0)){const e=t>>BigInt(32);e>BigInt(4294967295)&&L(s,"subkey_id cannot be more than 64 bits"),p=Number(e),c=Number(t&BigInt(4294967295))}else"number"==typeof t&&(0|t)===t&&t>=0?c=t:L(s,"subkey_id must be an unsigned integer or bigint");"string"!=typeof a&&L(s,"ctx must be a string"),(a=v(a+"\0")).length-1!==r._crypto_kdf_contextbytes()&&L(s,"invalid ctx length");var o=K(a);a.length,s.push(o),_=O(s,_,"key");var h,y=0|r._crypto_kdf_keybytes();_.length!==y&&L(s,"invalid key length"),h=K(_),s.push(h);var i=new B(0|e),l=i.address;s.push(l),r._crypto_kdf_derive_from_key(l,e,c,p,o,h);var u=S(i,n);return M(s),u}function ht(e){var t=[];Y(e);var a=new B(0|r._crypto_kdf_keybytes()),_=a.address;t.push(_),r._crypto_kdf_keygen(_);var n=S(a,e);return M(t),n}function yt(e,t,a){var _=[];Y(a),e=O(_,e,"ciphertext");var n,s=0|r._crypto_kem_ciphertextbytes();e.length!==s&&L(_,"invalid ciphertext length"),n=K(e),_.push(n),t=O(_,t,"privateKey");var c,p=0|r._crypto_kem_secretkeybytes();t.length!==p&&L(_,"invalid privateKey length"),c=K(t),_.push(c);var o=new B(0|r._crypto_kem_sharedsecretbytes()),h=o.address;if(_.push(h),!(0|r._crypto_kem_dec(h,n,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function it(e,t){var a=[];Y(t),e=O(a,e,"publicKey");var _,n=0|r._crypto_kem_publickeybytes();e.length!==n&&L(a,"invalid publicKey length"),_=K(e),a.push(_);var s=new B(0|r._crypto_kem_ciphertextbytes()),c=s.address;a.push(c);var p=new B(0|r._crypto_kem_sharedsecretbytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_enc(c,o,_))){var h=S({ciphertext:s,sharedSecret:p},t);return M(a),h}N(a,"invalid usage")}function lt(e){var t=[];Y(e);var a=new B(0|r._crypto_kem_publickeybytes()),_=a.address;t.push(_);var n=new B(0|r._crypto_kem_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_kem_keypair(_,s))){var c={publicKey:S(a,e),privateKey:S(n,e),keyType:"xwing"};return M(t),c}N(t,"internal error")}function ut(e,t,a){var _=[];Y(a),e=O(_,e,"ciphertext");var n,s=0|r._crypto_kem_mlkem768_ciphertextbytes();e.length!==s&&L(_,"invalid ciphertext length"),n=K(e),_.push(n),t=O(_,t,"privateKey");var c,p=0|r._crypto_kem_mlkem768_secretkeybytes();t.length!==p&&L(_,"invalid privateKey length"),c=K(t),_.push(c);var o=new B(0|r._crypto_kem_mlkem768_sharedsecretbytes()),h=o.address;if(_.push(h),!(0|r._crypto_kem_mlkem768_dec(h,n,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function dt(e,t){var a=[];Y(t),e=O(a,e,"publicKey");var _,n=0|r._crypto_kem_mlkem768_publickeybytes();e.length!==n&&L(a,"invalid publicKey length"),_=K(e),a.push(_);var s=new B(0|r._crypto_kem_mlkem768_ciphertextbytes()),c=s.address;a.push(c);var p=new B(0|r._crypto_kem_mlkem768_sharedsecretbytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_mlkem768_enc(c,o,_))){var h=S({ciphertext:s,sharedSecret:p},t);return M(a),h}N(a,"invalid usage")}function vt(e,t,a){var _=[];Y(a),e=O(_,e,"publicKey");var n,s,c=0|r._crypto_kem_mlkem768_publickeybytes();e.length!==c&&L(_,"invalid publicKey length"),n=K(e),_.push(n),32!==(t=O(_,t,"seed")).length&&L(_,"invalid seed length"),s=K(t),_.push(s);var p=new B(0|r._crypto_kem_mlkem768_ciphertextbytes()),o=p.address;_.push(o);var h=new B(0|r._crypto_kem_mlkem768_sharedsecretbytes()),y=h.address;if(_.push(y),!(0|r._crypto_kem_mlkem768_enc_deterministic(o,y,n,s))){var i=S({ciphertext:p,sharedSecret:h},a);return M(_),i}N(_,"invalid usage")}function gt(e){var t=[];Y(e);var a=new B(0|r._crypto_kem_mlkem768_publickeybytes()),_=a.address;t.push(_);var n=new B(0|r._crypto_kem_mlkem768_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_kem_mlkem768_keypair(_,s))){var c={publicKey:S(a,e),privateKey:S(n,e),keyType:"ml-kem-768"};return M(t),c}N(t,"internal error")}function bt(e,t){var a=[];Y(t),e=O(a,e,"seed");var _,n=0|r._crypto_kem_mlkem768_seedbytes();e.length!==n&&L(a,"invalid seed length"),_=K(e),a.push(_);var s=new B(0|r._crypto_kem_mlkem768_publickeybytes()),c=s.address;a.push(c);var p=new B(0|r._crypto_kem_mlkem768_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_mlkem768_seed_keypair(c,o,_))){var h={publicKey:S(s,t),privateKey:S(p,t),keyType:"ml-kem-768"};return M(a),h}N(a,"invalid usage")}function ft(){var e=r._crypto_kem_primitive(),t=r.UTF8ToString(e);return M([]),t}function mt(e,t){var a=[];Y(t),e=O(a,e,"seed");var _,n=0|r._crypto_kem_seedbytes();e.length!==n&&L(a,"invalid seed length"),_=K(e),a.push(_);var s=new B(0|r._crypto_kem_publickeybytes()),c=s.address;a.push(c);var p=new B(0|r._crypto_kem_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_seed_keypair(c,o,_))){var h={publicKey:S(s,t),privateKey:S(p,t),keyType:"xwing"};return M(a),h}N(a,"invalid usage")}function kt(e,t,a){var _=[];Y(a),e=O(_,e,"ciphertext");var n,s=0|r._crypto_kem_xwing_ciphertextbytes();e.length!==s&&L(_,"invalid ciphertext length"),n=K(e),_.push(n),t=O(_,t,"privateKey");var c,p=0|r._crypto_kem_xwing_secretkeybytes();t.length!==p&&L(_,"invalid privateKey length"),c=K(t),_.push(c);var o=new B(0|r._crypto_kem_xwing_sharedsecretbytes()),h=o.address;if(_.push(h),!(0|r._crypto_kem_xwing_dec(h,n,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function xt(e,t){var a=[];Y(t),e=O(a,e,"publicKey");var _,n=0|r._crypto_kem_xwing_publickeybytes();e.length!==n&&L(a,"invalid publicKey length"),_=K(e),a.push(_);var s=new B(0|r._crypto_kem_xwing_ciphertextbytes()),c=s.address;a.push(c);var p=new B(0|r._crypto_kem_xwing_sharedsecretbytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_xwing_enc(c,o,_))){var h=S({ciphertext:s,sharedSecret:p},t);return M(a),h}N(a,"invalid usage")}function Et(e,t,a){var _=[];Y(a),e=O(_,e,"publicKey");var n,s,c=0|r._crypto_kem_xwing_publickeybytes();e.length!==c&&L(_,"invalid publicKey length"),n=K(e),_.push(n),64!==(t=O(_,t,"seed")).length&&L(_,"invalid seed length"),s=K(t),_.push(s);var p=new B(0|r._crypto_kem_xwing_ciphertextbytes()),o=p.address;_.push(o);var h=new B(0|r._crypto_kem_xwing_sharedsecretbytes()),y=h.address;if(_.push(y),!(0|r._crypto_kem_xwing_enc_deterministic(o,y,n,s))){var i=S({ciphertext:p,sharedSecret:h},a);return M(_),i}N(_,"invalid usage")}function Tt(e){var t=[];Y(e);var a=new B(0|r._crypto_kem_xwing_publickeybytes()),_=a.address;t.push(_);var n=new B(0|r._crypto_kem_xwing_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_kem_xwing_keypair(_,s))){var c={publicKey:S(a,e),privateKey:S(n,e),keyType:"xwing"};return M(t),c}N(t,"internal error")}function St(e,t){var a=[];Y(t),e=O(a,e,"seed");var _,n=0|r._crypto_kem_xwing_seedbytes();e.length!==n&&L(a,"invalid seed length"),_=K(e),a.push(_);var s=new B(0|r._crypto_kem_xwing_publickeybytes()),c=s.address;a.push(c);var p=new B(0|r._crypto_kem_xwing_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_kem_xwing_seed_keypair(c,o,_))){var h={publicKey:S(s,t),privateKey:S(p,t),keyType:"xwing"};return M(a),h}N(a,"invalid usage")}function wt(e,t,a,_){var n=[];Y(_),e=O(n,e,"clientPublicKey");var s,c=0|r._crypto_kx_publickeybytes();e.length!==c&&L(n,"invalid clientPublicKey length"),s=K(e),n.push(s),t=O(n,t,"clientSecretKey");var p,o=0|r._crypto_kx_secretkeybytes();t.length!==o&&L(n,"invalid clientSecretKey length"),p=K(t),n.push(p),a=O(n,a,"serverPublicKey");var h,y=0|r._crypto_kx_publickeybytes();a.length!==y&&L(n,"invalid serverPublicKey length"),h=K(a),n.push(h);var i=new B(0|r._crypto_kx_sessionkeybytes()),l=i.address;n.push(l);var u=new B(0|r._crypto_kx_sessionkeybytes()),d=u.address;if(n.push(d),!(0|r._crypto_kx_client_session_keys(l,d,s,p,h))){var v=S({sharedRx:i,sharedTx:u},_);return M(n),v}N(n,"invalid usage")}function Yt(e){var t=[];Y(e);var a=new B(0|r._crypto_kx_publickeybytes()),_=a.address;t.push(_);var n=new B(0|r._crypto_kx_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_kx_keypair(_,s))){var c={publicKey:S(a,e),privateKey:S(n,e),keyType:"x25519"};return M(t),c}N(t,"internal error")}function Bt(e,t){var a=[];Y(t),e=O(a,e,"seed");var _,n=0|r._crypto_kx_seedbytes();e.length!==n&&L(a,"invalid seed length"),_=K(e),a.push(_);var s=new B(0|r._crypto_kx_publickeybytes()),c=s.address;a.push(c);var p=new B(0|r._crypto_kx_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_kx_seed_keypair(c,o,_))){var h={publicKey:S(s,t),privateKey:S(p,t),keyType:"x25519"};return M(a),h}N(a,"internal error")}function Kt(e,t,a,_){var n=[];Y(_),e=O(n,e,"serverPublicKey");var s,c=0|r._crypto_kx_publickeybytes();e.length!==c&&L(n,"invalid serverPublicKey length"),s=K(e),n.push(s),t=O(n,t,"serverSecretKey");var p,o=0|r._crypto_kx_secretkeybytes();t.length!==o&&L(n,"invalid serverSecretKey length"),p=K(t),n.push(p),a=O(n,a,"clientPublicKey");var h,y=0|r._crypto_kx_publickeybytes();a.length!==y&&L(n,"invalid clientPublicKey length"),h=K(a),n.push(h);var i=new B(0|r._crypto_kx_sessionkeybytes()),l=i.address;n.push(l);var u=new B(0|r._crypto_kx_sessionkeybytes()),d=u.address;if(n.push(d),!(0|r._crypto_kx_server_session_keys(l,d,s,p,h))){var v=S({sharedRx:i,sharedTx:u},_);return M(n),v}N(n,"invalid usage")}function At(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_onetimeauth_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_onetimeauth_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_onetimeauth(h,n,s,0,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function It(e,t){var a=[];Y(t),U(a,e,"state_address");var _=new B(0|r._crypto_onetimeauth_bytes()),n=_.address;if(a.push(n),!(0|r._crypto_onetimeauth_final(e,n))){var s=(r._free(e),S(_,t));return M(a),s}N(a,"invalid usage")}function Mt(e,t){var a=[];Y(t);var _=null;null!=e&&(_=K(e=O(a,e,"key")),e.length,a.push(_));var n=new B(144).address;if(!(0|r._crypto_onetimeauth_init(n,_))){var s=n;return M(a),s}N(a,"invalid usage")}function Nt(e){var t=[];Y(e);var a=new B(0|r._crypto_onetimeauth_keybytes()),_=a.address;t.push(_),r._crypto_onetimeauth_keygen(_);var n=S(a,e);return M(t),n}function Lt(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_onetimeauth_update(e,n,s)&&N(_,"invalid usage"),M(_)}function Ut(e,t,a){var _=[];e=O(_,e,"hash");var n,s=0|r._crypto_onetimeauth_bytes();e.length!==s&&L(_,"invalid hash length"),n=K(e),_.push(n);var c=K(t=O(_,t,"message")),p=t.length;_.push(c),a=O(_,a,"key");var o,h=0|r._crypto_onetimeauth_keybytes();a.length!==h&&L(_,"invalid key length"),o=K(a),_.push(o);var y=!(0|r._crypto_onetimeauth_verify(n,c,p,0,o));return M(_),y}function Ot(e,t,a,_,n,s,c){var p=[];Y(c),U(p,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&L(p,"keyLength must be an unsigned integer");var o=K(t=O(p,t,"password")),h=t.length;p.push(o),a=O(p,a,"salt");var y,i=0|r._crypto_pwhash_saltbytes();a.length!==i&&L(p,"invalid salt length"),y=K(a),p.push(y),U(p,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&L(p,"opsLimit must be an unsigned integer"),U(p,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&L(p,"memLimit must be an unsigned integer"),U(p,s,"algorithm"),("number"!=typeof s||(0|s)!==s||s<0)&&L(p,"algorithm must be an unsigned integer");var l=new B(0|e),u=l.address;if(p.push(u),!(0|r._crypto_pwhash(u,e,0,o,h,0,y,_,0,n,s))){var d=S(l,c);return M(p),d}N(p,"invalid usage")}function Ct(e,t,a,_,n,s){var c=[];Y(s),U(c,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&L(c,"keyLength must be an unsigned integer");var p=K(t=O(c,t,"password")),o=t.length;c.push(p),a=O(c,a,"salt");var h,y=0|r._crypto_pwhash_scryptsalsa208sha256_saltbytes();a.length!==y&&L(c,"invalid salt length"),h=K(a),c.push(h),U(c,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&L(c,"opsLimit must be an unsigned integer"),U(c,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&L(c,"memLimit must be an unsigned integer");var i=new B(0|e),l=i.address;if(c.push(l),!(0|r._crypto_pwhash_scryptsalsa208sha256(l,e,0,p,o,0,h,_,0,n))){var u=S(i,s);return M(c),u}N(c,"invalid usage")}function Rt(e,t,a,_,n,s,c){var p=[];Y(c);var o=K(e=O(p,e,"password")),h=e.length;p.push(o);var y=K(t=O(p,t,"salt")),i=t.length;p.push(y),U(p,a,"opsLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&L(p,"opsLimit must be an unsigned integer"),U(p,_,"r"),("number"!=typeof _||(0|_)!==_||_<0)&&L(p,"r must be an unsigned integer"),U(p,n,"p"),("number"!=typeof n||(0|n)!==n||n<0)&&L(p,"p must be an unsigned integer"),U(p,s,"keyLength"),("number"!=typeof s||(0|s)!==s||s<0)&&L(p,"keyLength must be an unsigned integer");var l=new B(0|s),u=l.address;if(p.push(u),!(0|r._crypto_pwhash_scryptsalsa208sha256_ll(o,h,y,i,a,0,_,n,u,s))){var d=S(l,c);return M(p),d}N(p,"invalid usage")}function Pt(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"password")),c=e.length;n.push(s),U(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&L(n,"opsLimit must be an unsigned integer"),U(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&L(n,"memLimit must be an unsigned integer");var p=new B(0|r._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(n.push(p),!(0|r._crypto_pwhash_scryptsalsa208sha256_str(p,s,c,0,t,0,a))){var o=r.UTF8ToString(p);return M(n),o}N(n,"invalid usage")}function Xt(e,t,a){var _=[];Y(a),"string"!=typeof e&&L(_,"hashed_password must be a string");var n=K(e=v(e+"\0"));e.length,_.push(n);var s=K(t=O(_,t,"password")),c=t.length;_.push(s);var p=!(0|r._crypto_pwhash_scryptsalsa208sha256_str_verify(n,s,c,0));return M(_),p}function Dt(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"password")),c=e.length;n.push(s),U(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&L(n,"opsLimit must be an unsigned integer"),U(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&L(n,"memLimit must be an unsigned integer");var p=new B(0|r._crypto_pwhash_strbytes()).address;if(n.push(p),!(0|r._crypto_pwhash_str(p,s,c,0,t,0,a))){var o=r.UTF8ToString(p);return M(n),o}N(n,"invalid usage")}function Gt(e,t,a,_){var n=[];Y(_),"string"!=typeof e&&L(n,"hashed_password must be a string");var s=K(e=v(e+"\0"));e.length,n.push(s),U(n,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&L(n,"opsLimit must be an unsigned integer"),U(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&L(n,"memLimit must be an unsigned integer");var c=!!(0|r._crypto_pwhash_str_needs_rehash(s,t,0,a));return M(n),c}function Ft(e,t,a){var _=[];Y(a),"string"!=typeof e&&L(_,"hashed_password must be a string");var n=K(e=v(e+"\0"));e.length,_.push(n);var s=K(t=O(_,t,"password")),c=t.length;_.push(s);var p=!(0|r._crypto_pwhash_str_verify(n,s,c,0));return M(_),p}function Vt(e,t,a){var _=[];Y(a),e=O(_,e,"privateKey");var n,s=0|r._crypto_scalarmult_scalarbytes();e.length!==s&&L(_,"invalid privateKey length"),n=K(e),_.push(n),t=O(_,t,"publicKey");var c,p=0|r._crypto_scalarmult_bytes();t.length!==p&&L(_,"invalid publicKey length"),c=K(t),_.push(c);var o=new B(0|r._crypto_scalarmult_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_scalarmult(h,n,c))){var y=S(o,a);return M(_),y}N(_,"weak public key")}function qt(e,t){var a=[];Y(t),e=O(a,e,"privateKey");var _,n=0|r._crypto_scalarmult_scalarbytes();e.length!==n&&L(a,"invalid privateKey length"),_=K(e),a.push(_);var s=new B(0|r._crypto_scalarmult_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_base(c,_))){var p=S(s,t);return M(a),p}N(a,"unknown error")}function Ht(e,t,a){var _=[];Y(a),e=O(_,e,"n");var n,s=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==s&&L(_,"invalid n length"),n=K(e),_.push(n),t=O(_,t,"p");var c,p=0|r._crypto_scalarmult_ed25519_bytes();t.length!==p&&L(_,"invalid p length"),c=K(t),_.push(c);var o=new B(0|r._crypto_scalarmult_ed25519_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_scalarmult_ed25519(h,n,c))){var y=S(o,a);return M(_),y}N(_,"invalid point or scalar is 0")}function zt(e,t){var a=[];Y(t),e=O(a,e,"scalar");var _,n=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==n&&L(a,"invalid scalar length"),_=K(e),a.push(_);var s=new B(0|r._crypto_scalarmult_ed25519_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_ed25519_base(c,_))){var p=S(s,t);return M(a),p}N(a,"scalar is 0")}function Wt(e,t){var a=[];Y(t),e=O(a,e,"scalar");var _,n=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==n&&L(a,"invalid scalar length"),_=K(e),a.push(_);var s=new B(0|r._crypto_scalarmult_ed25519_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_ed25519_base_noclamp(c,_))){var p=S(s,t);return M(a),p}N(a,"scalar is 0")}function jt(e,t,a){var _=[];Y(a),e=O(_,e,"n");var n,s=0|r._crypto_scalarmult_ed25519_scalarbytes();e.length!==s&&L(_,"invalid n length"),n=K(e),_.push(n),t=O(_,t,"p");var c,p=0|r._crypto_scalarmult_ed25519_bytes();t.length!==p&&L(_,"invalid p length"),c=K(t),_.push(c);var o=new B(0|r._crypto_scalarmult_ed25519_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_scalarmult_ed25519_noclamp(h,n,c))){var y=S(o,a);return M(_),y}N(_,"invalid point or scalar is 0")}function Jt(e,t,a){var _=[];Y(a),e=O(_,e,"scalar");var n,s=0|r._crypto_scalarmult_ristretto255_scalarbytes();e.length!==s&&L(_,"invalid scalar length"),n=K(e),_.push(n),t=O(_,t,"element");var c,p=0|r._crypto_scalarmult_ristretto255_bytes();t.length!==p&&L(_,"invalid element length"),c=K(t),_.push(c);var o=new B(0|r._crypto_scalarmult_ristretto255_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_scalarmult_ristretto255(h,n,c))){var y=S(o,a);return M(_),y}N(_,"result is identity element")}function Qt(e,t){var a=[];Y(t),e=O(a,e,"scalar");var _,n=0|r._crypto_core_ristretto255_scalarbytes();e.length!==n&&L(a,"invalid scalar length"),_=K(e),a.push(_);var s=new B(0|r._crypto_core_ristretto255_bytes()),c=s.address;if(a.push(c),!(0|r._crypto_scalarmult_ristretto255_base(c,_))){var p=S(s,t);return M(a),p}N(a,"scalar is 0")}function Zt(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"message")),c=e.length;n.push(s),t=O(n,t,"nonce");var p,o=0|r._crypto_secretbox_noncebytes();t.length!==o&&L(n,"invalid nonce length"),p=K(t),n.push(p),a=O(n,a,"key");var h,y=0|r._crypto_secretbox_keybytes();a.length!==y&&L(n,"invalid key length"),h=K(a),n.push(h);var i=new B(0|c),l=i.address;n.push(l);var u=new B(0|r._crypto_secretbox_macbytes()),d=u.address;if(n.push(d),!(0|r._crypto_secretbox_detached(l,d,s,c,0,p,h))){var v=S({mac:u,cipher:i},_);return M(n),v}N(n,"invalid usage")}function $t(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"message")),c=e.length;n.push(s),t=O(n,t,"nonce");var p,o=0|r._crypto_secretbox_noncebytes();t.length!==o&&L(n,"invalid nonce length"),p=K(t),n.push(p),a=O(n,a,"key");var h,y=0|r._crypto_secretbox_keybytes();a.length!==y&&L(n,"invalid key length"),h=K(a),n.push(h);var i=new B(c+r._crypto_secretbox_macbytes()|0),l=i.address;if(n.push(l),!(0|r._crypto_secretbox_easy(l,s,c,0,p,h))){var u=S(i,_);return M(n),u}N(n,"invalid usage")}function ea(e){var t=[];Y(e);var a=new B(0|r._crypto_secretbox_keybytes()),_=a.address;t.push(_),r._crypto_secretbox_keygen(_);var n=S(a,e);return M(t),n}function ra(e,t,a,_,n){var s=[];Y(n);var c=K(e=O(s,e,"ciphertext")),p=e.length;s.push(c),t=O(s,t,"mac");var o,h=0|r._crypto_secretbox_macbytes();t.length!==h&&L(s,"invalid mac length"),o=K(t),s.push(o),a=O(s,a,"nonce");var y,i=0|r._crypto_secretbox_noncebytes();a.length!==i&&L(s,"invalid nonce length"),y=K(a),s.push(y),_=O(s,_,"key");var l,u=0|r._crypto_secretbox_keybytes();_.length!==u&&L(s,"invalid key length"),l=K(_),s.push(l);var d=new B(0|p),v=d.address;if(s.push(v),!(0|r._crypto_secretbox_open_detached(v,c,o,p,0,y,l))){var g=S(d,n);return M(s),g}N(s,"wrong secret key for the given ciphertext")}function ta(e,t,a,_){var n=[];Y(_),e=O(n,e,"ciphertext");var s,c=r._crypto_secretbox_macbytes(),p=e.length;p<c&&L(n,"ciphertext is too short"),s=K(e),n.push(s),t=O(n,t,"nonce");var o,h=0|r._crypto_secretbox_noncebytes();t.length!==h&&L(n,"invalid nonce length"),o=K(t),n.push(o),a=O(n,a,"key");var y,i=0|r._crypto_secretbox_keybytes();a.length!==i&&L(n,"invalid key length"),y=K(a),n.push(y);var l=new B(p-r._crypto_secretbox_macbytes()|0),u=l.address;if(n.push(u),!(0|r._crypto_secretbox_open_easy(u,s,p,0,o,y))){var d=S(l,_);return M(n),d}N(n,"wrong secret key for the given ciphertext")}function aa(e,t,a){var _=[];Y(a),e=O(_,e,"header");var n,s=0|r._crypto_secretstream_xchacha20poly1305_headerbytes();e.length!==s&&L(_,"invalid header length"),n=K(e),_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_secretstream_xchacha20poly1305_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(52).address;if(!(0|r._crypto_secretstream_xchacha20poly1305_init_pull(o,n,c))){var h=o;return M(_),h}N(_,"invalid usage")}function _a(e,t){var a=[];Y(t),e=O(a,e,"key");var _,n=0|r._crypto_secretstream_xchacha20poly1305_keybytes();e.length!==n&&L(a,"invalid key length"),_=K(e),a.push(_);var s=new B(52).address,c=new B(0|r._crypto_secretstream_xchacha20poly1305_headerbytes()),p=c.address;if(a.push(p),!(0|r._crypto_secretstream_xchacha20poly1305_init_push(s,p,_))){var o={state:s,header:S(c,t)};return M(a),o}N(a,"invalid usage")}function na(e){var t=[];Y(e);var a=new B(0|r._crypto_secretstream_xchacha20poly1305_keybytes()),_=a.address;t.push(_),r._crypto_secretstream_xchacha20poly1305_keygen(_);var n=S(a,e);return M(t),n}function sa(e,t,a,_){var n=[];Y(_),U(n,e,"state_address"),t=O(n,t,"cipher");var s,c=r._crypto_secretstream_xchacha20poly1305_abytes(),p=t.length;p<c&&L(n,"cipher is too short"),s=K(t),n.push(s);var o=null,h=0;null!=a&&(o=K(a=O(n,a,"ad")),h=a.length,n.push(o));var y=new B(p-r._crypto_secretstream_xchacha20poly1305_abytes()|0),i=y.address;n.push(i);var l,u=(l=A(1),n.push(l),(u=0===r._crypto_secretstream_xchacha20poly1305_pull(e,i,0,l,s,p,0,o,h)&&{tag:r.HEAPU8[l],message:y})&&{message:S(u.message,_),tag:u.tag});return M(n),u}function ca(e,t,a,_,n){var s=[];Y(n),U(s,e,"state_address");var c=K(t=O(s,t,"message_chunk")),p=t.length;s.push(c);var o=null,h=0;null!=a&&(o=K(a=O(s,a,"ad")),h=a.length,s.push(o)),U(s,_,"tag"),("number"!=typeof _||(0|_)!==_||_<0)&&L(s,"tag must be an unsigned integer");var y=new B(p+r._crypto_secretstream_xchacha20poly1305_abytes()|0),i=y.address;if(s.push(i),!(0|r._crypto_secretstream_xchacha20poly1305_push(e,i,0,c,p,0,o,h,0,_))){var l=S(y,n);return M(s),l}N(s,"invalid usage")}function pa(e,t){var a=[];return Y(t),U(a,e,"state_address"),r._crypto_secretstream_xchacha20poly1305_rekey(e),M(a),!0}function oa(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_shorthash_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_shorthash_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_shorthash(h,n,s,0,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function ha(e){var t=[];Y(e);var a=new B(0|r._crypto_shorthash_keybytes()),_=a.address;t.push(_),r._crypto_shorthash_keygen(_);var n=S(a,e);return M(t),n}function ya(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"key");var c,p=0|r._crypto_shorthash_siphashx24_keybytes();t.length!==p&&L(_,"invalid key length"),c=K(t),_.push(c);var o=new B(0|r._crypto_shorthash_siphashx24_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_shorthash_siphashx24(h,n,s,0,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function ia(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"privateKey");var c,p=0|r._crypto_sign_secretkeybytes();t.length!==p&&L(_,"invalid privateKey length"),c=K(t),_.push(c);var o=new B(e.length+r._crypto_sign_bytes()|0),h=o.address;if(_.push(h),!(0|r._crypto_sign(h,null,n,s,0,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function la(e,t,a){var _=[];Y(a);var n=K(e=O(_,e,"message")),s=e.length;_.push(n),t=O(_,t,"privateKey");var c,p=0|r._crypto_sign_secretkeybytes();t.length!==p&&L(_,"invalid privateKey length"),c=K(t),_.push(c);var o=new B(0|r._crypto_sign_bytes()),h=o.address;if(_.push(h),!(0|r._crypto_sign_detached(h,null,n,s,0,c))){var y=S(o,a);return M(_),y}N(_,"invalid usage")}function ua(e,t){var a=[];Y(t),e=O(a,e,"edPk");var _,n=0|r._crypto_sign_publickeybytes();e.length!==n&&L(a,"invalid edPk length"),_=K(e),a.push(_);var s=new B(0|r._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_pk_to_curve25519(c,_))){var p=S(s,t);return M(a),p}N(a,"invalid key")}function da(e,t){var a=[];Y(t),e=O(a,e,"edSk");var _,n=0|r._crypto_sign_secretkeybytes();e.length!==n&&L(a,"invalid edSk length"),_=K(e),a.push(_);var s=new B(0|r._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_sk_to_curve25519(c,_))){var p=S(s,t);return M(a),p}N(a,"invalid key")}function va(e,t){var a=[];Y(t),e=O(a,e,"privateKey");var _,n=0|r._crypto_sign_secretkeybytes();e.length!==n&&L(a,"invalid privateKey length"),_=K(e),a.push(_);var s=new B(0|r._crypto_sign_publickeybytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_sk_to_pk(c,_))){var p=S(s,t);return M(a),p}N(a,"invalid key")}function ga(e,t){var a=[];Y(t),e=O(a,e,"privateKey");var _,n=0|r._crypto_sign_secretkeybytes();e.length!==n&&L(a,"invalid privateKey length"),_=K(e),a.push(_);var s=new B(0|r._crypto_sign_seedbytes()),c=s.address;if(a.push(c),!(0|r._crypto_sign_ed25519_sk_to_seed(c,_))){var p=S(s,t);return M(a),p}N(a,"invalid key")}function ba(e,t,a){var _=[];Y(a),U(_,e,"state_address"),t=O(_,t,"privateKey");var n,s=0|r._crypto_sign_secretkeybytes();t.length!==s&&L(_,"invalid privateKey length"),n=K(t),_.push(n);var c=new B(0|r._crypto_sign_bytes()),p=c.address;if(_.push(p),!(0|r._crypto_sign_final_create(e,p,null,n))){var o=(r._free(e),S(c,a));return M(_),o}N(_,"invalid usage")}function fa(e,t,a,_){var n=[];Y(_),U(n,e,"state_address"),t=O(n,t,"signature");var s,c=0|r._crypto_sign_bytes();t.length!==c&&L(n,"invalid signature length"),s=K(t),n.push(s),a=O(n,a,"publicKey");var p,o=0|r._crypto_sign_publickeybytes();a.length!==o&&L(n,"invalid publicKey length"),p=K(a),n.push(p);var h=!(0|r._crypto_sign_final_verify(e,s,p));return M(n),h}function ma(e){var t=[];Y(e);var a=new B(208).address;if(!(0|r._crypto_sign_init(a))){var _=a;return M(t),_}N(t,"internal error")}function ka(e){var t=[];Y(e);var a=new B(0|r._crypto_sign_publickeybytes()),_=a.address;t.push(_);var n=new B(0|r._crypto_sign_secretkeybytes()),s=n.address;if(t.push(s),!(0|r._crypto_sign_keypair(_,s))){var c={publicKey:S(a,e),privateKey:S(n,e),keyType:"ed25519"};return M(t),c}N(t,"internal error")}function xa(e,t,a){var _=[];Y(a),e=O(_,e,"signedMessage");var n,s=r._crypto_sign_bytes(),c=e.length;c<s&&L(_,"signedMessage is too short"),n=K(e),_.push(n),t=O(_,t,"publicKey");var p,o=0|r._crypto_sign_publickeybytes();t.length!==o&&L(_,"invalid publicKey length"),p=K(t),_.push(p);var h=new B(c-r._crypto_sign_bytes()|0),y=h.address;if(_.push(y),!(0|r._crypto_sign_open(y,null,n,c,0,p))){var i=S(h,a);return M(_),i}N(_,"incorrect signature for the given public key")}function Ea(e,t){var a=[];Y(t),e=O(a,e,"seed");var _,n=0|r._crypto_sign_seedbytes();e.length!==n&&L(a,"invalid seed length"),_=K(e),a.push(_);var s=new B(0|r._crypto_sign_publickeybytes()),c=s.address;a.push(c);var p=new B(0|r._crypto_sign_secretkeybytes()),o=p.address;if(a.push(o),!(0|r._crypto_sign_seed_keypair(c,o,_))){var h={publicKey:S(s,t),privateKey:S(p,t),keyType:"ed25519"};return M(a),h}N(a,"invalid usage")}function Ta(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_sign_update(e,n,s,0)&&N(_,"invalid usage"),M(_)}function Sa(e,t,a){var _=[];e=O(_,e,"signature");var n,s=0|r._crypto_sign_bytes();e.length!==s&&L(_,"invalid signature length"),n=K(e),_.push(n);var c=K(t=O(_,t,"message")),p=t.length;_.push(c),a=O(_,a,"publicKey");var o,h=0|r._crypto_sign_publickeybytes();a.length!==h&&L(_,"invalid publicKey length"),o=K(a),_.push(o);var y=!(0|r._crypto_sign_verify_detached(n,c,p,0,o));return M(_),y}function wa(e,t,a,_){var n=[];Y(_),U(n,e,"outLength"),("number"!=typeof e||(0|e)!==e||e<0)&&L(n,"outLength must be an unsigned integer"),t=O(n,t,"key");var s,c=0|r._crypto_stream_chacha20_keybytes();t.length!==c&&L(n,"invalid key length"),s=K(t),n.push(s),a=O(n,a,"nonce");var p,o=0|r._crypto_stream_chacha20_noncebytes();a.length!==o&&L(n,"invalid nonce length"),p=K(a),n.push(p);var h=new B(0|e),y=h.address;n.push(y),r._crypto_stream_chacha20(y,e,0,p,s);var i=S(h,_);return M(n),i}function Ya(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"input_message")),c=e.length;n.push(s),t=O(n,t,"nonce");var p,o=0|r._crypto_stream_chacha20_ietf_noncebytes();t.length!==o&&L(n,"invalid nonce length"),p=K(t),n.push(p),a=O(n,a,"key");var h,y=0|r._crypto_stream_chacha20_ietf_keybytes();a.length!==y&&L(n,"invalid key length"),h=K(a),n.push(h);var i=new B(0|c),l=i.address;if(n.push(l),0===r._crypto_stream_chacha20_ietf_xor(l,s,c,0,p,h)){var u=S(i,_);return M(n),u}N(n,"invalid usage")}function Ba(e,t,a,_,n){var s=[];Y(n);var c=K(e=O(s,e,"input_message")),p=e.length;s.push(c),t=O(s,t,"nonce");var o,h=0|r._crypto_stream_chacha20_ietf_noncebytes();t.length!==h&&L(s,"invalid nonce length"),o=K(t),s.push(o),U(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&L(s,"nonce_increment must be an unsigned integer"),_=O(s,_,"key");var y,i=0|r._crypto_stream_chacha20_ietf_keybytes();_.length!==i&&L(s,"invalid key length"),y=K(_),s.push(y);var l=new B(0|p),u=l.address;if(s.push(u),0===r._crypto_stream_chacha20_ietf_xor_ic(u,c,p,0,o,a,y)){var d=S(l,n);return M(s),d}N(s,"invalid usage")}function Ka(e){var t=[];Y(e);var a=new B(0|r._crypto_stream_chacha20_keybytes()),_=a.address;t.push(_),r._crypto_stream_chacha20_keygen(_);var n=S(a,e);return M(t),n}function Aa(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"input_message")),c=e.length;n.push(s),t=O(n,t,"nonce");var p,o=0|r._crypto_stream_chacha20_noncebytes();t.length!==o&&L(n,"invalid nonce length"),p=K(t),n.push(p),a=O(n,a,"key");var h,y=0|r._crypto_stream_chacha20_keybytes();a.length!==y&&L(n,"invalid key length"),h=K(a),n.push(h);var i=new B(0|c),l=i.address;if(n.push(l),0===r._crypto_stream_chacha20_xor(l,s,c,0,p,h)){var u=S(i,_);return M(n),u}N(n,"invalid usage")}function Ia(e,t,a,_,n){var s=[];Y(n);var c=K(e=O(s,e,"input_message")),p=e.length;s.push(c),t=O(s,t,"nonce");var o,h=0|r._crypto_stream_chacha20_noncebytes();t.length!==h&&L(s,"invalid nonce length"),o=K(t),s.push(o),U(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&L(s,"nonce_increment must be an unsigned integer"),_=O(s,_,"key");var y,i=0|r._crypto_stream_chacha20_keybytes();_.length!==i&&L(s,"invalid key length"),y=K(_),s.push(y);var l=new B(0|p),u=l.address;if(s.push(u),0===r._crypto_stream_chacha20_xor_ic(u,c,p,0,o,a,0,y)){var d=S(l,n);return M(s),d}N(s,"invalid usage")}function Ma(e){var t=[];Y(e);var a=new B(0|r._crypto_stream_keybytes()),_=a.address;t.push(_),r._crypto_stream_keygen(_);var n=S(a,e);return M(t),n}function Na(e){var t=[];Y(e);var a=new B(0|r._crypto_stream_xchacha20_keybytes()),_=a.address;t.push(_),r._crypto_stream_xchacha20_keygen(_);var n=S(a,e);return M(t),n}function La(e,t,a,_){var n=[];Y(_);var s=K(e=O(n,e,"input_message")),c=e.length;n.push(s),t=O(n,t,"nonce");var p,o=0|r._crypto_stream_xchacha20_noncebytes();t.length!==o&&L(n,"invalid nonce length"),p=K(t),n.push(p),a=O(n,a,"key");var h,y=0|r._crypto_stream_xchacha20_keybytes();a.length!==y&&L(n,"invalid key length"),h=K(a),n.push(h);var i=new B(0|c),l=i.address;if(n.push(l),0===r._crypto_stream_xchacha20_xor(l,s,c,0,p,h)){var u=S(i,_);return M(n),u}N(n,"invalid usage")}function Ua(e,t,a,_,n){var s=[];Y(n);var c=K(e=O(s,e,"input_message")),p=e.length;s.push(c),t=O(s,t,"nonce");var o,h=0|r._crypto_stream_xchacha20_noncebytes();t.length!==h&&L(s,"invalid nonce length"),o=K(t),s.push(o),U(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&L(s,"nonce_increment must be an unsigned integer"),_=O(s,_,"key");var y,i=0|r._crypto_stream_xchacha20_keybytes();_.length!==i&&L(s,"invalid key length"),y=K(_),s.push(y);var l=new B(0|p),u=l.address;if(s.push(u),0===r._crypto_stream_xchacha20_xor_ic(u,c,p,0,o,a,0,y)){var d=S(l,n);return M(s),d}N(s,"invalid usage")}function Oa(e,t,a){var _=[];Y(a),U(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&L(_,"out_length must be an unsigned integer");var n=K(t=O(_,t,"message")),s=t.length;_.push(n);var c=new B(e|=0),p=c.address;if(_.push(p),!(0|r._crypto_xof_shake128(p,e,n,s,0))){var o=S(c,a);return M(_),o}N(_,"invalid usage")}function Ca(e){var t=[];Y(e);var a=new B(256).address;if(!(0|r._crypto_xof_shake128_init(a))){var _=a;return M(t),_}N(t,"invalid usage")}function Ra(e,t){var a=[];Y(t),U(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&L(a,"domain must be an unsigned integer");var _=new B(256).address;if(!(0|r._crypto_xof_shake128_init_with_domain(_,e))){var n=_;return M(a),n}N(a,"invalid usage")}function Pa(e,t,a){var _=[];Y(a),U(_,e,"state_address"),U(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&L(_,"out_length must be an unsigned integer");var n=new B(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_shake128_squeeze(e,s,t))){var c=S(n,a);return M(_),c}N(_,"invalid usage")}function Xa(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_xof_shake128_update(e,n,s,0)&&N(_,"invalid usage"),M(_)}function Da(e,t,a){var _=[];Y(a),U(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&L(_,"out_length must be an unsigned integer");var n=K(t=O(_,t,"message")),s=t.length;_.push(n);var c=new B(e|=0),p=c.address;if(_.push(p),!(0|r._crypto_xof_shake256(p,e,n,s,0))){var o=S(c,a);return M(_),o}N(_,"invalid usage")}function Ga(e){var t=[];Y(e);var a=new B(256).address;if(!(0|r._crypto_xof_shake256_init(a))){var _=a;return M(t),_}N(t,"invalid usage")}function Fa(e,t){var a=[];Y(t),U(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&L(a,"domain must be an unsigned integer");var _=new B(256).address;if(!(0|r._crypto_xof_shake256_init_with_domain(_,e))){var n=_;return M(a),n}N(a,"invalid usage")}function Va(e,t,a){var _=[];Y(a),U(_,e,"state_address"),U(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&L(_,"out_length must be an unsigned integer");var n=new B(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_shake256_squeeze(e,s,t))){var c=S(n,a);return M(_),c}N(_,"invalid usage")}function qa(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_xof_shake256_update(e,n,s,0)&&N(_,"invalid usage"),M(_)}function Ha(e,t,a){var _=[];Y(a),U(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&L(_,"out_length must be an unsigned integer");var n=K(t=O(_,t,"message")),s=t.length;_.push(n);var c=new B(e|=0),p=c.address;if(_.push(p),!(0|r._crypto_xof_turboshake128(p,e,n,s,0))){var o=S(c,a);return M(_),o}N(_,"invalid usage")}function za(e){var t=[];Y(e);var a=new B(256).address;if(!(0|r._crypto_xof_turboshake128_init(a))){var _=a;return M(t),_}N(t,"invalid usage")}function Wa(e,t){var a=[];Y(t),U(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&L(a,"domain must be an unsigned integer");var _=new B(256).address;if(!(0|r._crypto_xof_turboshake128_init_with_domain(_,e))){var n=_;return M(a),n}N(a,"invalid usage")}function ja(e,t,a){var _=[];Y(a),U(_,e,"state_address"),U(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&L(_,"out_length must be an unsigned integer");var n=new B(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_turboshake128_squeeze(e,s,t))){var c=S(n,a);return M(_),c}N(_,"invalid usage")}function Ja(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_xof_turboshake128_update(e,n,s,0)&&N(_,"invalid usage"),M(_)}function Qa(e,t,a){var _=[];Y(a),U(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&L(_,"out_length must be an unsigned integer");var n=K(t=O(_,t,"message")),s=t.length;_.push(n);var c=new B(e|=0),p=c.address;if(_.push(p),!(0|r._crypto_xof_turboshake256(p,e,n,s,0))){var o=S(c,a);return M(_),o}N(_,"invalid usage")}function Za(e){var t=[];Y(e);var a=new B(256).address;if(!(0|r._crypto_xof_turboshake256_init(a))){var _=a;return M(t),_}N(t,"invalid usage")}function $a(e,t){var a=[];Y(t),U(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&L(a,"domain must be an unsigned integer");var _=new B(256).address;if(!(0|r._crypto_xof_turboshake256_init_with_domain(_,e))){var n=_;return M(a),n}N(a,"invalid usage")}function e_(e,t,a){var _=[];Y(a),U(_,e,"state_address"),U(_,t,"out_length"),("number"!=typeof t||(0|t)!==t||t<0)&&L(_,"out_length must be an unsigned integer");var n=new B(t|=0),s=n.address;if(_.push(s),!(0|r._crypto_xof_turboshake256_squeeze(e,s,t))){var c=S(n,a);return M(_),c}N(_,"invalid usage")}function r_(e,t,a){var _=[];Y(a),U(_,e,"state_address");var n=K(t=O(_,t,"message_chunk")),s=t.length;_.push(n),0|r._crypto_xof_turboshake256_update(e,n,s,0)&&N(_,"invalid usage"),M(_)}function t_(e,t){var a=[];Y(t),U(a,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&L(a,"length must be an unsigned integer");var _=new B(0|e),n=_.address;a.push(n),r._randombytes_buf(n,e);var s=S(_,t);return M(a),s}function a_(e,t,a){var _=[];Y(a),U(_,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&L(_,"length must be an unsigned integer"),t=O(_,t,"seed");var n,s=0|r._randombytes_seedbytes();t.length!==s&&L(_,"invalid seed length"),n=K(t),_.push(n);var c=new B(0|e),p=c.address;_.push(p),r._randombytes_buf_deterministic(p,e,n);var o=S(c,a);return M(_),o}function __(e){Y(e),r._randombytes_close()}function n_(e){Y(e);var t=r._randombytes_random()>>>0;return M([]),t}function s_(e,t){var a=[];Y(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(_)&&N(a,"unsupported implementation"),M(a)}function c_(e){Y(e),r._randombytes_stir()}function p_(e,t){var a=[];Y(t),U(a,e,"upper_bound"),("number"!=typeof e||(0|e)!==e||e<0)&&L(a,"upper_bound must be an unsigned integer");var _=r._randombytes_uniform(e)>>>0;return M(a),_}function o_(e){var t,a=[];16!==(e=O(a,e,"bin")).length&&L(a,"invalid bin length"),t=K(e),a.push(t);var _=new B(46).address;if(a.push(_),0!==r._sodium_bin2ip(_,46,t)){var n=r.UTF8ToString(_);return M(a),n}N(a,"conversion failed")}function h_(e,t){var a=[];Y(t),"string"!=typeof e&&L(a,"ip must be a string");var _=K(e=v(e+"\0")),n=e.length-1;a.push(_);var s=new B(16),c=s.address;if(a.push(c),!(0|r._sodium_ip2bin(c,_,n))){var p=S(s,t);return M(a),p}N(a,"invalid IP address")}function y_(){var e=r._sodium_version_string(),t=r.UTF8ToString(e);return M([]),t}B.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=o,t.base64_variants=m,t.compare=l,t.from_base64=x,t.from_hex=b,t.from_string=v,t.increment=p,t.is_zero=h,t.memcmp=i,t.memzero=y,t.output_formats=T,t.pad=u,t.unpad=d,t.ready=s,t.symbols=c,t.to_base64=E,t.to_hex=f,t.to_string=g;export default t;export{s as ready,o as add,l as compare,x as from_base64,b as from_hex,v as from_string,p as increment,h as is_zero,i as memcmp,y as memzero,u as pad,d as unpad,c as symbols,E as to_base64,f as to_hex,g as to_string,T as output_formats,m as base64_variants,r as libsodium};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "libsodium-wrappers-sumo",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.4",
|
|
4
4
|
"description": "The Sodium cryptographic library compiled to pure JavaScript (wrappers, sumo variant)",
|
|
5
5
|
"main": "dist/modules-sumo/libsodium-wrappers.js",
|
|
6
6
|
"module": "dist/modules-sumo-esm/libsodium-wrappers.mjs",
|