chaosdc/node_modules/libsodium-wrappers/dist/modules/libsodium-wrappers.js

2 lines
110 KiB
JavaScript

!function(e){function r(e,r){"use strict";var t,a=r.ready.then(function(){function a(){if(t._sodium_init()<0)throw new Error("libsodium was not correctly initialized.");for(var r=["crypto_aead_aegis128l_decrypt","crypto_aead_aegis128l_decrypt_detached","crypto_aead_aegis128l_encrypt","crypto_aead_aegis128l_encrypt_detached","crypto_aead_aegis128l_keygen","crypto_aead_aegis256_decrypt","crypto_aead_aegis256_decrypt_detached","crypto_aead_aegis256_encrypt","crypto_aead_aegis256_encrypt_detached","crypto_aead_aegis256_keygen","crypto_aead_chacha20poly1305_decrypt","crypto_aead_chacha20poly1305_decrypt_detached","crypto_aead_chacha20poly1305_encrypt","crypto_aead_chacha20poly1305_encrypt_detached","crypto_aead_chacha20poly1305_ietf_decrypt","crypto_aead_chacha20poly1305_ietf_decrypt_detached","crypto_aead_chacha20poly1305_ietf_encrypt","crypto_aead_chacha20poly1305_ietf_encrypt_detached","crypto_aead_chacha20poly1305_ietf_keygen","crypto_aead_chacha20poly1305_keygen","crypto_aead_xchacha20poly1305_ietf_decrypt","crypto_aead_xchacha20poly1305_ietf_decrypt_detached","crypto_aead_xchacha20poly1305_ietf_encrypt","crypto_aead_xchacha20poly1305_ietf_encrypt_detached","crypto_aead_xchacha20poly1305_ietf_keygen","crypto_auth","crypto_auth_hmacsha256","crypto_auth_hmacsha256_final","crypto_auth_hmacsha256_init","crypto_auth_hmacsha256_keygen","crypto_auth_hmacsha256_update","crypto_auth_hmacsha256_verify","crypto_auth_hmacsha512","crypto_auth_hmacsha512256","crypto_auth_hmacsha512256_final","crypto_auth_hmacsha512256_init","crypto_auth_hmacsha512256_keygen","crypto_auth_hmacsha512256_update","crypto_auth_hmacsha512256_verify","crypto_auth_hmacsha512_final","crypto_auth_hmacsha512_init","crypto_auth_hmacsha512_keygen","crypto_auth_hmacsha512_update","crypto_auth_hmacsha512_verify","crypto_auth_keygen","crypto_auth_verify","crypto_box_beforenm","crypto_box_curve25519xchacha20poly1305_beforenm","crypto_box_curve25519xchacha20poly1305_detached","crypto_box_curve25519xchacha20poly1305_detached_afternm","crypto_box_curve25519xchacha20poly1305_easy","crypto_box_curve25519xchacha20poly1305_easy_afternm","crypto_box_curve25519xchacha20poly1305_keypair","crypto_box_curve25519xchacha20poly1305_open_detached","crypto_box_curve25519xchacha20poly1305_open_detached_afternm","crypto_box_curve25519xchacha20poly1305_open_easy","crypto_box_curve25519xchacha20poly1305_open_easy_afternm","crypto_box_curve25519xchacha20poly1305_seal","crypto_box_curve25519xchacha20poly1305_seal_open","crypto_box_curve25519xchacha20poly1305_seed_keypair","crypto_box_detached","crypto_box_easy","crypto_box_easy_afternm","crypto_box_keypair","crypto_box_open_detached","crypto_box_open_easy","crypto_box_open_easy_afternm","crypto_box_seal","crypto_box_seal_open","crypto_box_seed_keypair","crypto_core_ed25519_add","crypto_core_ed25519_from_hash","crypto_core_ed25519_from_uniform","crypto_core_ed25519_is_valid_point","crypto_core_ed25519_random","crypto_core_ed25519_scalar_add","crypto_core_ed25519_scalar_complement","crypto_core_ed25519_scalar_invert","crypto_core_ed25519_scalar_mul","crypto_core_ed25519_scalar_negate","crypto_core_ed25519_scalar_random","crypto_core_ed25519_scalar_reduce","crypto_core_ed25519_scalar_sub","crypto_core_ed25519_sub","crypto_core_hchacha20","crypto_core_hsalsa20","crypto_core_ristretto255_add","crypto_core_ristretto255_from_hash","crypto_core_ristretto255_is_valid_point","crypto_core_ristretto255_random","crypto_core_ristretto255_scalar_add","crypto_core_ristretto255_scalar_complement","crypto_core_ristretto255_scalar_invert","crypto_core_ristretto255_scalar_mul","crypto_core_ristretto255_scalar_negate","crypto_core_ristretto255_scalar_random","crypto_core_ristretto255_scalar_reduce","crypto_core_ristretto255_scalar_sub","crypto_core_ristretto255_sub","crypto_generichash","crypto_generichash_blake2b_salt_personal","crypto_generichash_final","crypto_generichash_init","crypto_generichash_keygen","crypto_generichash_update","crypto_hash","crypto_hash_sha256","crypto_hash_sha256_final","crypto_hash_sha256_init","crypto_hash_sha256_update","crypto_hash_sha512","crypto_hash_sha512_final","crypto_hash_sha512_init","crypto_hash_sha512_update","crypto_ipcrypt_decrypt","crypto_ipcrypt_encrypt","crypto_ipcrypt_keygen","crypto_ipcrypt_nd_decrypt","crypto_ipcrypt_nd_encrypt","crypto_ipcrypt_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_kx_client_session_keys","crypto_kx_keypair","crypto_kx_seed_keypair","crypto_kx_server_session_keys","crypto_onetimeauth","crypto_onetimeauth_final","crypto_onetimeauth_init","crypto_onetimeauth_keygen","crypto_onetimeauth_update","crypto_onetimeauth_verify","crypto_pwhash","crypto_pwhash_scryptsalsa208sha256","crypto_pwhash_scryptsalsa208sha256_ll","crypto_pwhash_scryptsalsa208sha256_str","crypto_pwhash_scryptsalsa208sha256_str_verify","crypto_pwhash_str","crypto_pwhash_str_needs_rehash","crypto_pwhash_str_verify","crypto_scalarmult","crypto_scalarmult_base","crypto_scalarmult_ed25519","crypto_scalarmult_ed25519_base","crypto_scalarmult_ed25519_base_noclamp","crypto_scalarmult_ed25519_noclamp","crypto_scalarmult_ristretto255","crypto_scalarmult_ristretto255_base","crypto_secretbox_detached","crypto_secretbox_easy","crypto_secretbox_keygen","crypto_secretbox_open_detached","crypto_secretbox_open_easy","crypto_secretstream_xchacha20poly1305_init_pull","crypto_secretstream_xchacha20poly1305_init_push","crypto_secretstream_xchacha20poly1305_keygen","crypto_secretstream_xchacha20poly1305_pull","crypto_secretstream_xchacha20poly1305_push","crypto_secretstream_xchacha20poly1305_rekey","crypto_shorthash","crypto_shorthash_keygen","crypto_shorthash_siphashx24","crypto_sign","crypto_sign_detached","crypto_sign_ed25519_pk_to_curve25519","crypto_sign_ed25519_sk_to_curve25519","crypto_sign_ed25519_sk_to_pk","crypto_sign_ed25519_sk_to_seed","crypto_sign_final_create","crypto_sign_final_verify","crypto_sign_init","crypto_sign_keypair","crypto_sign_open","crypto_sign_seed_keypair","crypto_sign_update","crypto_sign_verify_detached","crypto_stream_chacha20","crypto_stream_chacha20_ietf_xor","crypto_stream_chacha20_ietf_xor_ic","crypto_stream_chacha20_keygen","crypto_stream_chacha20_xor","crypto_stream_chacha20_xor_ic","crypto_stream_keygen","crypto_stream_xchacha20_keygen","crypto_stream_xchacha20_xor","crypto_stream_xchacha20_xor_ic","crypto_xof_shake128","crypto_xof_shake128_init","crypto_xof_shake128_init_with_domain","crypto_xof_shake128_squeeze","crypto_xof_shake128_update","crypto_xof_shake256","crypto_xof_shake256_init","crypto_xof_shake256_init_with_domain","crypto_xof_shake256_squeeze","crypto_xof_shake256_update","crypto_xof_turboshake128","crypto_xof_turboshake128_init","crypto_xof_turboshake128_init_with_domain","crypto_xof_turboshake128_squeeze","crypto_xof_turboshake128_update","crypto_xof_turboshake256","crypto_xof_turboshake256_init","crypto_xof_turboshake256_init_with_domain","crypto_xof_turboshake256_squeeze","crypto_xof_turboshake256_update","randombytes_buf","randombytes_buf_deterministic","randombytes_close","randombytes_random","randombytes_set_implementation","randombytes_stir","randombytes_uniform","sodium_bin2ip","sodium_ip2bin","sodium_version_string"],a=[E,k,S,T,w,Y,B,A,M,I,K,N,L,O,U,P,C,R,X,D,G,F,V,q,z,W,H,j,J,Q,Z,$,ee,re,te,ae,_e,ne,se,ce,oe,pe,he,ye,ie,ue,le,de,ve,ge,be,fe,me,xe,Ee,ke,Se,Te,we,Ye,Be,Ae,Me,Ie,Ke,Ne,Le,Oe,Ue,Pe,Ce,Re,Xe,De,Ge,Fe,Ve,qe,ze,We,He,je,Je,Qe,Ze,$e,er,rr,tr,ar,_r,nr,sr,cr,or,pr,hr,yr,ir,ur,lr,dr,vr,gr,br,fr,mr,xr,Er,kr,Sr,Tr,wr,Yr,Br,Ar,Mr,Ir,Kr,Nr,Lr,Or,Ur,Pr,Cr,Rr,Xr,Dr,Gr,Fr,Vr,qr,zr,Wr,Hr,jr,Jr,Qr,Zr,$r,et,rt,tt,at,_t,nt,st,ct,ot,pt,ht,yt,it,ut,lt,dt,vt,gt,bt,ft,mt,xt,Et,kt,St,Tt,wt,Yt,Bt,At,Mt,It,Kt,Nt,Lt,Ot,Ut,Pt,Ct,Rt,Xt,Dt,Gt,Ft,Vt,qt,zt,Wt,Ht,jt,Jt,Qt,Zt,$t,ea,ra,ta,aa,_a,na,sa,ca,oa,pa,ha,ya,ia,ua,la,da,va,ga,ba,fa,ma,xa,Ea,ka,Sa,Ta,wa,Ya],_=0;_<a.length;_++)"function"==typeof t["_"+r[_]]&&(e[r[_]]=a[_]);var n=["SODIUM_LIBRARY_VERSION_MAJOR","SODIUM_LIBRARY_VERSION_MINOR","crypto_aead_aegis128l_ABYTES","crypto_aead_aegis128l_KEYBYTES","crypto_aead_aegis128l_MESSAGEBYTES_MAX","crypto_aead_aegis128l_NPUBBYTES","crypto_aead_aegis128l_NSECBYTES","crypto_aead_aegis256_ABYTES","crypto_aead_aegis256_KEYBYTES","crypto_aead_aegis256_MESSAGEBYTES_MAX","crypto_aead_aegis256_NPUBBYTES","crypto_aead_aegis256_NSECBYTES","crypto_aead_aes256gcm_ABYTES","crypto_aead_aes256gcm_KEYBYTES","crypto_aead_aes256gcm_MESSAGEBYTES_MAX","crypto_aead_aes256gcm_NPUBBYTES","crypto_aead_aes256gcm_NSECBYTES","crypto_aead_chacha20poly1305_ABYTES","crypto_aead_chacha20poly1305_IETF_ABYTES","crypto_aead_chacha20poly1305_IETF_KEYBYTES","crypto_aead_chacha20poly1305_IETF_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_IETF_NPUBBYTES","crypto_aead_chacha20poly1305_IETF_NSECBYTES","crypto_aead_chacha20poly1305_KEYBYTES","crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_NPUBBYTES","crypto_aead_chacha20poly1305_NSECBYTES","crypto_aead_chacha20poly1305_ietf_ABYTES","crypto_aead_chacha20poly1305_ietf_KEYBYTES","crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_ietf_NPUBBYTES","crypto_aead_chacha20poly1305_ietf_NSECBYTES","crypto_aead_xchacha20poly1305_IETF_ABYTES","crypto_aead_xchacha20poly1305_IETF_KEYBYTES","crypto_aead_xchacha20poly1305_IETF_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_IETF_NPUBBYTES","crypto_aead_xchacha20poly1305_IETF_NSECBYTES","crypto_aead_xchacha20poly1305_ietf_ABYTES","crypto_aead_xchacha20poly1305_ietf_KEYBYTES","crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_ietf_NPUBBYTES","crypto_aead_xchacha20poly1305_ietf_NSECBYTES","crypto_auth_BYTES","crypto_auth_KEYBYTES","crypto_auth_hmacsha256_BYTES","crypto_auth_hmacsha256_KEYBYTES","crypto_auth_hmacsha512256_BYTES","crypto_auth_hmacsha512256_KEYBYTES","crypto_auth_hmacsha512_BYTES","crypto_auth_hmacsha512_KEYBYTES","crypto_box_BEFORENMBYTES","crypto_box_MACBYTES","crypto_box_MESSAGEBYTES_MAX","crypto_box_NONCEBYTES","crypto_box_PUBLICKEYBYTES","crypto_box_SEALBYTES","crypto_box_SECRETKEYBYTES","crypto_box_SEEDBYTES","crypto_box_curve25519xchacha20poly1305_BEFORENMBYTES","crypto_box_curve25519xchacha20poly1305_MACBYTES","crypto_box_curve25519xchacha20poly1305_MESSAGEBYTES_MAX","crypto_box_curve25519xchacha20poly1305_NONCEBYTES","crypto_box_curve25519xchacha20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xchacha20poly1305_SEALBYTES","crypto_box_curve25519xchacha20poly1305_SECRETKEYBYTES","crypto_box_curve25519xchacha20poly1305_SEEDBYTES","crypto_box_curve25519xsalsa20poly1305_BEFORENMBYTES","crypto_box_curve25519xsalsa20poly1305_MACBYTES","crypto_box_curve25519xsalsa20poly1305_MESSAGEBYTES_MAX","crypto_box_curve25519xsalsa20poly1305_NONCEBYTES","crypto_box_curve25519xsalsa20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xsalsa20poly1305_SECRETKEYBYTES","crypto_box_curve25519xsalsa20poly1305_SEEDBYTES","crypto_core_ed25519_BYTES","crypto_core_ed25519_HASHBYTES","crypto_core_ed25519_NONREDUCEDSCALARBYTES","crypto_core_ed25519_SCALARBYTES","crypto_core_ed25519_UNIFORMBYTES","crypto_core_hchacha20_CONSTBYTES","crypto_core_hchacha20_INPUTBYTES","crypto_core_hchacha20_KEYBYTES","crypto_core_hchacha20_OUTPUTBYTES","crypto_core_hsalsa20_CONSTBYTES","crypto_core_hsalsa20_INPUTBYTES","crypto_core_hsalsa20_KEYBYTES","crypto_core_hsalsa20_OUTPUTBYTES","crypto_core_ristretto255_BYTES","crypto_core_ristretto255_HASHBYTES","crypto_core_ristretto255_NONREDUCEDSCALARBYTES","crypto_core_ristretto255_SCALARBYTES","crypto_core_salsa2012_CONSTBYTES","crypto_core_salsa2012_INPUTBYTES","crypto_core_salsa2012_KEYBYTES","crypto_core_salsa2012_OUTPUTBYTES","crypto_core_salsa208_CONSTBYTES","crypto_core_salsa208_INPUTBYTES","crypto_core_salsa208_KEYBYTES","crypto_core_salsa208_OUTPUTBYTES","crypto_core_salsa20_CONSTBYTES","crypto_core_salsa20_INPUTBYTES","crypto_core_salsa20_KEYBYTES","crypto_core_salsa20_OUTPUTBYTES","crypto_generichash_BYTES","crypto_generichash_BYTES_MAX","crypto_generichash_BYTES_MIN","crypto_generichash_KEYBYTES","crypto_generichash_KEYBYTES_MAX","crypto_generichash_KEYBYTES_MIN","crypto_generichash_blake2b_BYTES","crypto_generichash_blake2b_BYTES_MAX","crypto_generichash_blake2b_BYTES_MIN","crypto_generichash_blake2b_KEYBYTES","crypto_generichash_blake2b_KEYBYTES_MAX","crypto_generichash_blake2b_KEYBYTES_MIN","crypto_generichash_blake2b_PERSONALBYTES","crypto_generichash_blake2b_SALTBYTES","crypto_hash_BYTES","crypto_hash_sha256_BYTES","crypto_hash_sha512_BYTES","crypto_ipcrypt_BYTES","crypto_ipcrypt_KEYBYTES","crypto_ipcrypt_NDX_INPUTBYTES","crypto_ipcrypt_NDX_KEYBYTES","crypto_ipcrypt_NDX_OUTPUTBYTES","crypto_ipcrypt_NDX_TWEAKBYTES","crypto_ipcrypt_ND_INPUTBYTES","crypto_ipcrypt_ND_KEYBYTES","crypto_ipcrypt_ND_OUTPUTBYTES","crypto_ipcrypt_ND_TWEAKBYTES","crypto_ipcrypt_PFX_BYTES","crypto_ipcrypt_PFX_KEYBYTES","crypto_kdf_BYTES_MAX","crypto_kdf_BYTES_MIN","crypto_kdf_CONTEXTBYTES","crypto_kdf_KEYBYTES","crypto_kdf_blake2b_BYTES_MAX","crypto_kdf_blake2b_BYTES_MIN","crypto_kdf_blake2b_CONTEXTBYTES","crypto_kdf_blake2b_KEYBYTES","crypto_kdf_hkdf_sha256_BYTES_MAX","crypto_kdf_hkdf_sha256_BYTES_MIN","crypto_kdf_hkdf_sha256_KEYBYTES","crypto_kdf_hkdf_sha512_BYTES_MAX","crypto_kdf_hkdf_sha512_BYTES_MIN","crypto_kdf_hkdf_sha512_KEYBYTES","crypto_kx_PUBLICKEYBYTES","crypto_kx_SECRETKEYBYTES","crypto_kx_SEEDBYTES","crypto_kx_SESSIONKEYBYTES","crypto_onetimeauth_BYTES","crypto_onetimeauth_KEYBYTES","crypto_onetimeauth_poly1305_BYTES","crypto_onetimeauth_poly1305_KEYBYTES","crypto_pwhash_ALG_ARGON2I13","crypto_pwhash_ALG_ARGON2ID13","crypto_pwhash_ALG_DEFAULT","crypto_pwhash_BYTES_MAX","crypto_pwhash_BYTES_MIN","crypto_pwhash_MEMLIMIT_INTERACTIVE","crypto_pwhash_MEMLIMIT_MAX","crypto_pwhash_MEMLIMIT_MIN","crypto_pwhash_MEMLIMIT_MODERATE","crypto_pwhash_MEMLIMIT_SENSITIVE","crypto_pwhash_OPSLIMIT_INTERACTIVE","crypto_pwhash_OPSLIMIT_MAX","crypto_pwhash_OPSLIMIT_MIN","crypto_pwhash_OPSLIMIT_MODERATE","crypto_pwhash_OPSLIMIT_SENSITIVE","crypto_pwhash_PASSWD_MAX","crypto_pwhash_PASSWD_MIN","crypto_pwhash_SALTBYTES","crypto_pwhash_STRBYTES","crypto_pwhash_argon2i_BYTES_MAX","crypto_pwhash_argon2i_BYTES_MIN","crypto_pwhash_argon2i_MEMLIMIT_INTERACTIVE","crypto_pwhash_argon2i_MEMLIMIT_MAX","crypto_pwhash_argon2i_MEMLIMIT_MIN","crypto_pwhash_argon2i_MEMLIMIT_MODERATE","crypto_pwhash_argon2i_MEMLIMIT_SENSITIVE","crypto_pwhash_argon2i_OPSLIMIT_INTERACTIVE","crypto_pwhash_argon2i_OPSLIMIT_MAX","crypto_pwhash_argon2i_OPSLIMIT_MIN","crypto_pwhash_argon2i_OPSLIMIT_MODERATE","crypto_pwhash_argon2i_OPSLIMIT_SENSITIVE","crypto_pwhash_argon2i_PASSWD_MAX","crypto_pwhash_argon2i_PASSWD_MIN","crypto_pwhash_argon2i_SALTBYTES","crypto_pwhash_argon2i_STRBYTES","crypto_pwhash_argon2id_BYTES_MAX","crypto_pwhash_argon2id_BYTES_MIN","crypto_pwhash_argon2id_MEMLIMIT_INTERACTIVE","crypto_pwhash_argon2id_MEMLIMIT_MAX","crypto_pwhash_argon2id_MEMLIMIT_MIN","crypto_pwhash_argon2id_MEMLIMIT_MODERATE","crypto_pwhash_argon2id_MEMLIMIT_SENSITIVE","crypto_pwhash_argon2id_OPSLIMIT_INTERACTIVE","crypto_pwhash_argon2id_OPSLIMIT_MAX","crypto_pwhash_argon2id_OPSLIMIT_MIN","crypto_pwhash_argon2id_OPSLIMIT_MODERATE","crypto_pwhash_argon2id_OPSLIMIT_SENSITIVE","crypto_pwhash_argon2id_PASSWD_MAX","crypto_pwhash_argon2id_PASSWD_MIN","crypto_pwhash_argon2id_SALTBYTES","crypto_pwhash_argon2id_STRBYTES","crypto_pwhash_scryptsalsa208sha256_BYTES_MAX","crypto_pwhash_scryptsalsa208sha256_BYTES_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_PASSWD_MAX","crypto_pwhash_scryptsalsa208sha256_PASSWD_MIN","crypto_pwhash_scryptsalsa208sha256_SALTBYTES","crypto_pwhash_scryptsalsa208sha256_STRBYTES","crypto_scalarmult_BYTES","crypto_scalarmult_SCALARBYTES","crypto_scalarmult_curve25519_BYTES","crypto_scalarmult_curve25519_SCALARBYTES","crypto_scalarmult_ed25519_BYTES","crypto_scalarmult_ed25519_SCALARBYTES","crypto_scalarmult_ristretto255_BYTES","crypto_scalarmult_ristretto255_SCALARBYTES","crypto_secretbox_KEYBYTES","crypto_secretbox_MACBYTES","crypto_secretbox_MESSAGEBYTES_MAX","crypto_secretbox_NONCEBYTES","crypto_secretbox_xchacha20poly1305_KEYBYTES","crypto_secretbox_xchacha20poly1305_MACBYTES","crypto_secretbox_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretbox_xchacha20poly1305_NONCEBYTES","crypto_secretbox_xsalsa20poly1305_KEYBYTES","crypto_secretbox_xsalsa20poly1305_MACBYTES","crypto_secretbox_xsalsa20poly1305_MESSAGEBYTES_MAX","crypto_secretbox_xsalsa20poly1305_NONCEBYTES","crypto_secretstream_xchacha20poly1305_ABYTES","crypto_secretstream_xchacha20poly1305_HEADERBYTES","crypto_secretstream_xchacha20poly1305_KEYBYTES","crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretstream_xchacha20poly1305_TAG_FINAL","crypto_secretstream_xchacha20poly1305_TAG_MESSAGE","crypto_secretstream_xchacha20poly1305_TAG_PUSH","crypto_secretstream_xchacha20poly1305_TAG_REKEY","crypto_shorthash_BYTES","crypto_shorthash_KEYBYTES","crypto_shorthash_siphash24_BYTES","crypto_shorthash_siphash24_KEYBYTES","crypto_shorthash_siphashx24_BYTES","crypto_shorthash_siphashx24_KEYBYTES","crypto_sign_BYTES","crypto_sign_MESSAGEBYTES_MAX","crypto_sign_PUBLICKEYBYTES","crypto_sign_SECRETKEYBYTES","crypto_sign_SEEDBYTES","crypto_sign_ed25519_BYTES","crypto_sign_ed25519_MESSAGEBYTES_MAX","crypto_sign_ed25519_PUBLICKEYBYTES","crypto_sign_ed25519_SECRETKEYBYTES","crypto_sign_ed25519_SEEDBYTES","crypto_stream_KEYBYTES","crypto_stream_MESSAGEBYTES_MAX","crypto_stream_NONCEBYTES","crypto_stream_chacha20_IETF_KEYBYTES","crypto_stream_chacha20_IETF_MESSAGEBYTES_MAX","crypto_stream_chacha20_IETF_NONCEBYTES","crypto_stream_chacha20_KEYBYTES","crypto_stream_chacha20_MESSAGEBYTES_MAX","crypto_stream_chacha20_NONCEBYTES","crypto_stream_chacha20_ietf_KEYBYTES","crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX","crypto_stream_chacha20_ietf_NONCEBYTES","crypto_stream_salsa2012_KEYBYTES","crypto_stream_salsa2012_MESSAGEBYTES_MAX","crypto_stream_salsa2012_NONCEBYTES","crypto_stream_salsa208_KEYBYTES","crypto_stream_salsa208_MESSAGEBYTES_MAX","crypto_stream_salsa208_NONCEBYTES","crypto_stream_salsa20_KEYBYTES","crypto_stream_salsa20_MESSAGEBYTES_MAX","crypto_stream_salsa20_NONCEBYTES","crypto_stream_xchacha20_KEYBYTES","crypto_stream_xchacha20_MESSAGEBYTES_MAX","crypto_stream_xchacha20_NONCEBYTES","crypto_stream_xsalsa20_KEYBYTES","crypto_stream_xsalsa20_MESSAGEBYTES_MAX","crypto_stream_xsalsa20_NONCEBYTES","crypto_verify_16_BYTES","crypto_verify_32_BYTES","crypto_verify_64_BYTES","crypto_xof_shake128_BLOCKBYTES","crypto_xof_shake128_STATEBYTES","crypto_xof_shake256_BLOCKBYTES","crypto_xof_shake256_STATEBYTES","crypto_xof_turboshake128_BLOCKBYTES","crypto_xof_turboshake128_STATEBYTES","crypto_xof_turboshake256_BLOCKBYTES","crypto_xof_turboshake256_STATEBYTES"];for(_=0;_<n.length;_++)"function"==typeof(c=t["_"+n[_].toLowerCase()])&&(e[n[_]]=c());var s=["SODIUM_VERSION_STRING","crypto_pwhash_STRPREFIX","crypto_pwhash_argon2i_STRPREFIX","crypto_pwhash_argon2id_STRPREFIX","crypto_pwhash_scryptsalsa208sha256_STRPREFIX"];for(_=0;_<s.length;_++){var c;"function"==typeof(c=t["_"+s[_].toLowerCase()])&&(e[s[_]]=t.UTF8ToString(c()))}}t=r;try{a();var _=new Uint8Array([98,97,108,108,115]),n=e.randombytes_buf(e.crypto_secretbox_NONCEBYTES),s=e.randombytes_buf(e.crypto_secretbox_KEYBYTES),c=e.crypto_secretbox_easy(_,n,s),o=e.crypto_secretbox_open_easy(c,n,s);if(e.memcmp(_,o))return}catch(e){if(null==t.useBackupModule)throw new Error("Both wasm and asm failed to load"+e)}return t.useBackupModule().then(function(){a()})});function _(e){if("function"==typeof TextEncoder)return(new TextEncoder).encode(e);e=unescape(encodeURIComponent(e));for(var r=new Uint8Array(e.length),t=0,a=e.length;t<a;t++)r[t]=e.charCodeAt(t);return r}function n(e){if("function"==typeof TextDecoder)return new TextDecoder("utf-8",{fatal:!0}).decode(e);var r=8192,t=Math.ceil(e.length/r);if(t<=1)try{return decodeURIComponent(escape(String.fromCharCode.apply(null,e)))}catch(e){throw new TypeError("The encoded data was not valid.")}for(var a="",_=0,s=0;s<t;s++){var c=Array.prototype.slice.call(e,s*r+_,(s+1)*r+_);if(0!==c.length){var o,p=c.length,h=0;do{var y=c[--p];y>=240?(h=4,o=!0):y>=224?(h=3,o=!0):y>=192?(h=2,o=!0):y<128&&(h=1,o=!0)}while(!o);for(var i=h-(c.length-p),u=0;u<i;u++)_--,c.pop();a+=n(c)}}return a}function s(e){e=x(null,e,"input");for(var r,t,a,_="",n=0;n<e.length;n++)a=87+(t=15&e[n])+(t-10>>8&-39)<<8|87+(r=e[n]>>>4)+(r-10>>8&-39),_+=String.fromCharCode(255&a)+String.fromCharCode(a>>>8);return _}var c={ORIGINAL:1,ORIGINAL_NO_PADDING:3,URLSAFE:5,URLSAFE_NO_PADDING:7};function o(e){if(void 0===e)return c.URLSAFE_NO_PADDING;if(e!==c.ORIGINAL&&e!==c.ORIGINAL_NO_PADDING&&e!==c.URLSAFE&&e!==c.URLSAFE_NO_PADDING)throw new Error("unsupported base64 variant");return e}function p(e,r){r=o(r);var a=[];e=x(a,e,"input");var _,s=0|Math.floor(e.length/3),c=e.length-3*s,p=4*s+(0!==c?2&r?2+(c>>>1):4:0),h=new u(p+1),y=l(e);return a.push(y),a.push(h.address),0===t._sodium_bin2base64(h.address,h.length,y,e.length,r)&&b(a,"conversion failed"),h.length=p,_=n(h.to_Uint8Array()),g(a),_}function h(e,r){var t=r||"uint8array";if(!y(t))throw new Error(t+" output format is not available");if(e instanceof u){if("uint8array"===t)return e.to_Uint8Array();if("text"===t)return n(e.to_Uint8Array());if("hex"===t)return s(e.to_Uint8Array());if("base64"===t)return p(e.to_Uint8Array(),c.URLSAFE_NO_PADDING);throw new Error('What is output format "'+t+'"?')}if("object"==typeof e){for(var a=Object.keys(e),_={},o=0;o<a.length;o++)_[a[o]]=h(e[a[o]],t);return _}if("string"==typeof e)return e;throw new TypeError("Cannot format output")}function y(e){for(var r=["uint8array","text","hex","base64"],t=0;t<r.length;t++)if(r[t]===e)return!0;return!1}function i(e){if(e){if("string"!=typeof e)throw new TypeError("When defined, the output format must be a string");if(!y(e))throw new Error(e+" is not a supported output format")}}function u(e){this.length=e,this.address=d(e)}function l(e){var r=d(e.length);return t.HEAPU8.set(e,r),r}function d(e){var r=t._malloc(e);if(0===r)throw{message:"_malloc() failed",length:e};return r}function v(e){t._free(e)}function g(e){if(e)for(var r=0;r<e.length;r++)v(e[r])}function b(e,r){throw g(e),new Error(r)}function f(e,r){throw g(e),new TypeError(r)}function m(e,r,t){null==r&&f(e,t+" cannot be null or undefined")}function x(e,r,t){return m(e,r,t),r instanceof Uint8Array?r:"string"==typeof r?_(r):void f(e,"unsupported input type for "+t)}function E(e,r,a,_,n,s){var c=[];i(s);var o=null;null!=e&&(o=l(e=x(c,e,"secret_nonce")),e.length,c.push(o)),r=x(c,r,"ciphertext");var p,y=t._crypto_aead_aegis128l_abytes(),d=r.length;d<y&&f(c,"ciphertext is too short"),p=l(r),c.push(p);var v=null,m=0;null!=a&&(v=l(a=x(c,a,"additional_data")),m=a.length,c.push(v)),_=x(c,_,"public_nonce");var E,k=0|t._crypto_aead_aegis128l_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),E=l(_),c.push(E),n=x(c,n,"key");var S,T=0|t._crypto_aead_aegis128l_keybytes();n.length!==T&&f(c,"invalid key length"),S=l(n),c.push(S);var w=new u(d-t._crypto_aead_aegis128l_abytes()|0),Y=w.address;if(c.push(Y),0===t._crypto_aead_aegis128l_decrypt(Y,null,o,p,d,0,v,m,0,E,S)){var B=h(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function k(e,r,a,_,n,s,c){var o=[];i(c);var p=null;null!=e&&(p=l(e=x(o,e,"secret_nonce")),e.length,o.push(p));var y=l(r=x(o,r,"ciphertext")),d=r.length;o.push(y),a=x(o,a,"mac");var v,m=0|t._crypto_aead_aegis128l_abytes();a.length!==m&&f(o,"invalid mac length"),v=l(a),o.push(v);var E=null,k=0;null!=_&&(E=l(_=x(o,_,"additional_data")),k=_.length,o.push(E)),n=x(o,n,"public_nonce");var S,T=0|t._crypto_aead_aegis128l_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=l(n),o.push(S),s=x(o,s,"key");var w,Y=0|t._crypto_aead_aegis128l_keybytes();s.length!==Y&&f(o,"invalid key length"),w=l(s),o.push(w);var B=new u(0|d),A=B.address;if(o.push(A),0===t._crypto_aead_aegis128l_decrypt_detached(A,p,y,d,0,v,E,k,0,S,w)){var M=h(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function S(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=l(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=l(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_aegis128l_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=l(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_aegis128l_keybytes();n.length!==S&&f(c,"invalid key length"),k=l(n),c.push(k);var T=new u(p+t._crypto_aead_aegis128l_abytes()|0),w=T.address;if(c.push(w),0===t._crypto_aead_aegis128l_encrypt(w,null,o,p,0,y,d,0,v,m,k)){var Y=h(T,s);return g(c),Y}b(c,"invalid usage")}function T(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=l(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=l(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_aegis128l_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=l(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_aegis128l_keybytes();n.length!==S&&f(c,"invalid key length"),k=l(n),c.push(k);var T=new u(0|p),w=T.address;c.push(w);var Y=new u(0|t._crypto_aead_aegis128l_abytes()),B=Y.address;if(c.push(B),0===t._crypto_aead_aegis128l_encrypt_detached(w,B,null,o,p,0,y,d,0,v,m,k)){var A=h({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function w(e){var r=[];i(e);var a=new u(0|t._crypto_aead_aegis128l_keybytes()),_=a.address;r.push(_),t._crypto_aead_aegis128l_keygen(_);var n=h(a,e);return g(r),n}function Y(e,r,a,_,n,s){var c=[];i(s);var o=null;null!=e&&(o=l(e=x(c,e,"secret_nonce")),e.length,c.push(o)),r=x(c,r,"ciphertext");var p,y=t._crypto_aead_aegis256_abytes(),d=r.length;d<y&&f(c,"ciphertext is too short"),p=l(r),c.push(p);var v=null,m=0;null!=a&&(v=l(a=x(c,a,"additional_data")),m=a.length,c.push(v)),_=x(c,_,"public_nonce");var E,k=0|t._crypto_aead_aegis256_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),E=l(_),c.push(E),n=x(c,n,"key");var S,T=0|t._crypto_aead_aegis256_keybytes();n.length!==T&&f(c,"invalid key length"),S=l(n),c.push(S);var w=new u(d-t._crypto_aead_aegis256_abytes()|0),Y=w.address;if(c.push(Y),0===t._crypto_aead_aegis256_decrypt(Y,null,o,p,d,0,v,m,0,E,S)){var B=h(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function B(e,r,a,_,n,s,c){var o=[];i(c);var p=null;null!=e&&(p=l(e=x(o,e,"secret_nonce")),e.length,o.push(p));var y=l(r=x(o,r,"ciphertext")),d=r.length;o.push(y),a=x(o,a,"mac");var v,m=0|t._crypto_aead_aegis256_abytes();a.length!==m&&f(o,"invalid mac length"),v=l(a),o.push(v);var E=null,k=0;null!=_&&(E=l(_=x(o,_,"additional_data")),k=_.length,o.push(E)),n=x(o,n,"public_nonce");var S,T=0|t._crypto_aead_aegis256_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=l(n),o.push(S),s=x(o,s,"key");var w,Y=0|t._crypto_aead_aegis256_keybytes();s.length!==Y&&f(o,"invalid key length"),w=l(s),o.push(w);var B=new u(0|d),A=B.address;if(o.push(A),0===t._crypto_aead_aegis256_decrypt_detached(A,p,y,d,0,v,E,k,0,S,w)){var M=h(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function A(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=l(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=l(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_aegis256_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=l(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_aegis256_keybytes();n.length!==S&&f(c,"invalid key length"),k=l(n),c.push(k);var T=new u(p+t._crypto_aead_aegis256_abytes()|0),w=T.address;if(c.push(w),0===t._crypto_aead_aegis256_encrypt(w,null,o,p,0,y,d,0,v,m,k)){var Y=h(T,s);return g(c),Y}b(c,"invalid usage")}function M(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=l(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=l(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_aegis256_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=l(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_aegis256_keybytes();n.length!==S&&f(c,"invalid key length"),k=l(n),c.push(k);var T=new u(0|p),w=T.address;c.push(w);var Y=new u(0|t._crypto_aead_aegis256_abytes()),B=Y.address;if(c.push(B),0===t._crypto_aead_aegis256_encrypt_detached(w,B,null,o,p,0,y,d,0,v,m,k)){var A=h({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function I(e){var r=[];i(e);var a=new u(0|t._crypto_aead_aegis256_keybytes()),_=a.address;r.push(_),t._crypto_aead_aegis256_keygen(_);var n=h(a,e);return g(r),n}function K(e,r,a,_,n,s){var c=[];i(s);var o=null;null!=e&&(o=l(e=x(c,e,"secret_nonce")),e.length,c.push(o)),r=x(c,r,"ciphertext");var p,y=t._crypto_aead_chacha20poly1305_abytes(),d=r.length;d<y&&f(c,"ciphertext is too short"),p=l(r),c.push(p);var v=null,m=0;null!=a&&(v=l(a=x(c,a,"additional_data")),m=a.length,c.push(v)),_=x(c,_,"public_nonce");var E,k=0|t._crypto_aead_chacha20poly1305_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),E=l(_),c.push(E),n=x(c,n,"key");var S,T=0|t._crypto_aead_chacha20poly1305_keybytes();n.length!==T&&f(c,"invalid key length"),S=l(n),c.push(S);var w=new u(d-t._crypto_aead_chacha20poly1305_abytes()|0),Y=w.address;if(c.push(Y),0===t._crypto_aead_chacha20poly1305_decrypt(Y,null,o,p,d,0,v,m,0,E,S)){var B=h(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function N(e,r,a,_,n,s,c){var o=[];i(c);var p=null;null!=e&&(p=l(e=x(o,e,"secret_nonce")),e.length,o.push(p));var y=l(r=x(o,r,"ciphertext")),d=r.length;o.push(y),a=x(o,a,"mac");var v,m=0|t._crypto_box_macbytes();a.length!==m&&f(o,"invalid mac length"),v=l(a),o.push(v);var E=null,k=0;null!=_&&(E=l(_=x(o,_,"additional_data")),k=_.length,o.push(E)),n=x(o,n,"public_nonce");var S,T=0|t._crypto_aead_chacha20poly1305_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=l(n),o.push(S),s=x(o,s,"key");var w,Y=0|t._crypto_aead_chacha20poly1305_keybytes();s.length!==Y&&f(o,"invalid key length"),w=l(s),o.push(w);var B=new u(0|d),A=B.address;if(o.push(A),0===t._crypto_aead_chacha20poly1305_decrypt_detached(A,p,y,d,0,v,E,k,0,S,w)){var M=h(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function L(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=l(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=l(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_chacha20poly1305_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=l(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_chacha20poly1305_keybytes();n.length!==S&&f(c,"invalid key length"),k=l(n),c.push(k);var T=new u(p+t._crypto_aead_chacha20poly1305_abytes()|0),w=T.address;if(c.push(w),0===t._crypto_aead_chacha20poly1305_encrypt(w,null,o,p,0,y,d,0,v,m,k)){var Y=h(T,s);return g(c),Y}b(c,"invalid usage")}function O(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=l(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=l(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_chacha20poly1305_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=l(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_chacha20poly1305_keybytes();n.length!==S&&f(c,"invalid key length"),k=l(n),c.push(k);var T=new u(0|p),w=T.address;c.push(w);var Y=new u(0|t._crypto_aead_chacha20poly1305_abytes()),B=Y.address;if(c.push(B),0===t._crypto_aead_chacha20poly1305_encrypt_detached(w,B,null,o,p,0,y,d,0,v,m,k)){var A=h({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function U(e,r,a,_,n,s){var c=[];i(s);var o=null;null!=e&&(o=l(e=x(c,e,"secret_nonce")),e.length,c.push(o)),r=x(c,r,"ciphertext");var p,y=t._crypto_aead_chacha20poly1305_ietf_abytes(),d=r.length;d<y&&f(c,"ciphertext is too short"),p=l(r),c.push(p);var v=null,m=0;null!=a&&(v=l(a=x(c,a,"additional_data")),m=a.length,c.push(v)),_=x(c,_,"public_nonce");var E,k=0|t._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),E=l(_),c.push(E),n=x(c,n,"key");var S,T=0|t._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==T&&f(c,"invalid key length"),S=l(n),c.push(S);var w=new u(d-t._crypto_aead_chacha20poly1305_ietf_abytes()|0),Y=w.address;if(c.push(Y),0===t._crypto_aead_chacha20poly1305_ietf_decrypt(Y,null,o,p,d,0,v,m,0,E,S)){var B=h(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function P(e,r,a,_,n,s,c){var o=[];i(c);var p=null;null!=e&&(p=l(e=x(o,e,"secret_nonce")),e.length,o.push(p));var y=l(r=x(o,r,"ciphertext")),d=r.length;o.push(y),a=x(o,a,"mac");var v,m=0|t._crypto_box_macbytes();a.length!==m&&f(o,"invalid mac length"),v=l(a),o.push(v);var E=null,k=0;null!=_&&(E=l(_=x(o,_,"additional_data")),k=_.length,o.push(E)),n=x(o,n,"public_nonce");var S,T=0|t._crypto_aead_chacha20poly1305_ietf_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=l(n),o.push(S),s=x(o,s,"key");var w,Y=0|t._crypto_aead_chacha20poly1305_ietf_keybytes();s.length!==Y&&f(o,"invalid key length"),w=l(s),o.push(w);var B=new u(0|d),A=B.address;if(o.push(A),0===t._crypto_aead_chacha20poly1305_ietf_decrypt_detached(A,p,y,d,0,v,E,k,0,S,w)){var M=h(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function C(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=l(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=l(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=l(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=l(n),c.push(k);var T=new u(p+t._crypto_aead_chacha20poly1305_ietf_abytes()|0),w=T.address;if(c.push(w),0===t._crypto_aead_chacha20poly1305_ietf_encrypt(w,null,o,p,0,y,d,0,v,m,k)){var Y=h(T,s);return g(c),Y}b(c,"invalid usage")}function R(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=l(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=l(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_chacha20poly1305_ietf_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=l(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_chacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=l(n),c.push(k);var T=new u(0|p),w=T.address;c.push(w);var Y=new u(0|t._crypto_aead_chacha20poly1305_ietf_abytes()),B=Y.address;if(c.push(B),0===t._crypto_aead_chacha20poly1305_ietf_encrypt_detached(w,B,null,o,p,0,y,d,0,v,m,k)){var A=h({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function X(e){var r=[];i(e);var a=new u(0|t._crypto_aead_chacha20poly1305_ietf_keybytes()),_=a.address;r.push(_),t._crypto_aead_chacha20poly1305_ietf_keygen(_);var n=h(a,e);return g(r),n}function D(e){var r=[];i(e);var a=new u(0|t._crypto_aead_chacha20poly1305_keybytes()),_=a.address;r.push(_),t._crypto_aead_chacha20poly1305_keygen(_);var n=h(a,e);return g(r),n}function G(e,r,a,_,n,s){var c=[];i(s);var o=null;null!=e&&(o=l(e=x(c,e,"secret_nonce")),e.length,c.push(o)),r=x(c,r,"ciphertext");var p,y=t._crypto_aead_xchacha20poly1305_ietf_abytes(),d=r.length;d<y&&f(c,"ciphertext is too short"),p=l(r),c.push(p);var v=null,m=0;null!=a&&(v=l(a=x(c,a,"additional_data")),m=a.length,c.push(v)),_=x(c,_,"public_nonce");var E,k=0|t._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==k&&f(c,"invalid public_nonce length"),E=l(_),c.push(E),n=x(c,n,"key");var S,T=0|t._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==T&&f(c,"invalid key length"),S=l(n),c.push(S);var w=new u(d-t._crypto_aead_xchacha20poly1305_ietf_abytes()|0),Y=w.address;if(c.push(Y),0===t._crypto_aead_xchacha20poly1305_ietf_decrypt(Y,null,o,p,d,0,v,m,0,E,S)){var B=h(w,s);return g(c),B}b(c,"ciphertext cannot be decrypted using that key")}function F(e,r,a,_,n,s,c){var o=[];i(c);var p=null;null!=e&&(p=l(e=x(o,e,"secret_nonce")),e.length,o.push(p));var y=l(r=x(o,r,"ciphertext")),d=r.length;o.push(y),a=x(o,a,"mac");var v,m=0|t._crypto_box_macbytes();a.length!==m&&f(o,"invalid mac length"),v=l(a),o.push(v);var E=null,k=0;null!=_&&(E=l(_=x(o,_,"additional_data")),k=_.length,o.push(E)),n=x(o,n,"public_nonce");var S,T=0|t._crypto_aead_xchacha20poly1305_ietf_npubbytes();n.length!==T&&f(o,"invalid public_nonce length"),S=l(n),o.push(S),s=x(o,s,"key");var w,Y=0|t._crypto_aead_xchacha20poly1305_ietf_keybytes();s.length!==Y&&f(o,"invalid key length"),w=l(s),o.push(w);var B=new u(0|d),A=B.address;if(o.push(A),0===t._crypto_aead_xchacha20poly1305_ietf_decrypt_detached(A,p,y,d,0,v,E,k,0,S,w)){var M=h(B,c);return g(o),M}b(o,"ciphertext cannot be decrypted using that key")}function V(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=l(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=l(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=l(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=l(n),c.push(k);var T=new u(p+t._crypto_aead_xchacha20poly1305_ietf_abytes()|0),w=T.address;if(c.push(w),0===t._crypto_aead_xchacha20poly1305_ietf_encrypt(w,null,o,p,0,y,d,0,v,m,k)){var Y=h(T,s);return g(c),Y}b(c,"invalid usage")}function q(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"message")),p=e.length;c.push(o);var y=null,d=0;null!=r&&(y=l(r=x(c,r,"additional_data")),d=r.length,c.push(y));var v=null;null!=a&&(v=l(a=x(c,a,"secret_nonce")),a.length,c.push(v)),_=x(c,_,"public_nonce");var m,E=0|t._crypto_aead_xchacha20poly1305_ietf_npubbytes();_.length!==E&&f(c,"invalid public_nonce length"),m=l(_),c.push(m),n=x(c,n,"key");var k,S=0|t._crypto_aead_xchacha20poly1305_ietf_keybytes();n.length!==S&&f(c,"invalid key length"),k=l(n),c.push(k);var T=new u(0|p),w=T.address;c.push(w);var Y=new u(0|t._crypto_aead_xchacha20poly1305_ietf_abytes()),B=Y.address;if(c.push(B),0===t._crypto_aead_xchacha20poly1305_ietf_encrypt_detached(w,B,null,o,p,0,y,d,0,v,m,k)){var A=h({ciphertext:T,mac:Y},s);return g(c),A}b(c,"invalid usage")}function z(e){var r=[];i(e);var a=new u(0|t._crypto_aead_xchacha20poly1305_ietf_keybytes()),_=a.address;r.push(_),t._crypto_aead_xchacha20poly1305_ietf_keygen(_);var n=h(a,e);return g(r),n}function W(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_auth_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_auth_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_auth(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function H(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_auth_hmacsha256_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_auth_hmacsha256_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_auth_hmacsha256(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function j(e,r){var a=[];i(r),m(a,e,"state_address");var _=new u(0|t._crypto_auth_hmacsha256_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_auth_hmacsha256_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function J(e,r){var a=[];i(r);var _=null,n=0;null!=e&&(_=l(e=x(a,e,"key")),n=e.length,a.push(_));var s=new u(208).address;if(!(0|t._crypto_auth_hmacsha256_init(s,_,n))){var c=s;return g(a),c}b(a,"invalid usage")}function Q(e){var r=[];i(e);var a=new u(0|t._crypto_auth_hmacsha256_keybytes()),_=a.address;r.push(_),t._crypto_auth_hmacsha256_keygen(_);var n=h(a,e);return g(r),n}function Z(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_auth_hmacsha256_update(e,n,s)&&b(_,"invalid usage"),g(_)}function $(e,r,a){var _=[];e=x(_,e,"tag");var n,s=0|t._crypto_auth_hmacsha256_bytes();e.length!==s&&f(_,"invalid tag length"),n=l(e),_.push(n);var c=l(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"key");var p,h=0|t._crypto_auth_hmacsha256_keybytes();a.length!==h&&f(_,"invalid key length"),p=l(a),_.push(p);var y=!(0|t._crypto_auth_hmacsha256_verify(n,c,o,0,p));return g(_),y}function ee(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_auth_hmacsha512_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_auth_hmacsha512_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_auth_hmacsha512(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function re(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_auth_hmacsha512256_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_auth_hmacsha512256_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_auth_hmacsha512256(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function te(e,r){var a=[];i(r),m(a,e,"state_address");var _=new u(0|t._crypto_auth_hmacsha512256_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_auth_hmacsha512256_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function ae(e,r){var a=[];i(r);var _=null,n=0;null!=e&&(_=l(e=x(a,e,"key")),n=e.length,a.push(_));var s=new u(416).address;if(!(0|t._crypto_auth_hmacsha512256_init(s,_,n))){var c=s;return g(a),c}b(a,"invalid usage")}function _e(e){var r=[];i(e);var a=new u(0|t._crypto_auth_hmacsha512256_keybytes()),_=a.address;r.push(_),t._crypto_auth_hmacsha512256_keygen(_);var n=h(a,e);return g(r),n}function ne(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_auth_hmacsha512256_update(e,n,s)&&b(_,"invalid usage"),g(_)}function se(e,r,a){var _=[];e=x(_,e,"tag");var n,s=0|t._crypto_auth_hmacsha512256_bytes();e.length!==s&&f(_,"invalid tag length"),n=l(e),_.push(n);var c=l(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"key");var p,h=0|t._crypto_auth_hmacsha512256_keybytes();a.length!==h&&f(_,"invalid key length"),p=l(a),_.push(p);var y=!(0|t._crypto_auth_hmacsha512256_verify(n,c,o,0,p));return g(_),y}function ce(e,r){var a=[];i(r),m(a,e,"state_address");var _=new u(0|t._crypto_auth_hmacsha512_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_auth_hmacsha512_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function oe(e,r){var a=[];i(r);var _=null,n=0;null!=e&&(_=l(e=x(a,e,"key")),n=e.length,a.push(_));var s=new u(416).address;if(!(0|t._crypto_auth_hmacsha512_init(s,_,n))){var c=s;return g(a),c}b(a,"invalid usage")}function pe(e){var r=[];i(e);var a=new u(0|t._crypto_auth_hmacsha512_keybytes()),_=a.address;r.push(_),t._crypto_auth_hmacsha512_keygen(_);var n=h(a,e);return g(r),n}function he(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_auth_hmacsha512_update(e,n,s)&&b(_,"invalid usage"),g(_)}function ye(e,r,a){var _=[];e=x(_,e,"tag");var n,s=0|t._crypto_auth_hmacsha512_bytes();e.length!==s&&f(_,"invalid tag length"),n=l(e),_.push(n);var c=l(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"key");var p,h=0|t._crypto_auth_hmacsha512_keybytes();a.length!==h&&f(_,"invalid key length"),p=l(a),_.push(p);var y=!(0|t._crypto_auth_hmacsha512_verify(n,c,o,0,p));return g(_),y}function ie(e){var r=[];i(e);var a=new u(0|t._crypto_auth_keybytes()),_=a.address;r.push(_),t._crypto_auth_keygen(_);var n=h(a,e);return g(r),n}function ue(e,r,a){var _=[];e=x(_,e,"tag");var n,s=0|t._crypto_auth_bytes();e.length!==s&&f(_,"invalid tag length"),n=l(e),_.push(n);var c=l(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"key");var p,h=0|t._crypto_auth_keybytes();a.length!==h&&f(_,"invalid key length"),p=l(a),_.push(p);var y=!(0|t._crypto_auth_verify(n,c,o,0,p));return g(_),y}function le(e,r,a){var _=[];i(a),e=x(_,e,"publicKey");var n,s=0|t._crypto_box_publickeybytes();e.length!==s&&f(_,"invalid publicKey length"),n=l(e),_.push(n),r=x(_,r,"privateKey");var c,o=0|t._crypto_box_secretkeybytes();r.length!==o&&f(_,"invalid privateKey length"),c=l(r),_.push(c);var p=new u(0|t._crypto_box_beforenmbytes()),y=p.address;if(_.push(y),!(0|t._crypto_box_beforenm(y,n,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function de(e,r,a){var _=[];i(a),e=x(_,e,"publicKey");var n,s=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();e.length!==s&&f(_,"invalid publicKey length"),n=l(e),_.push(n),r=x(_,r,"privateKey");var c,o=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();r.length!==o&&f(_,"invalid privateKey length"),c=l(r),_.push(c);var p=new u(0|t._crypto_box_curve25519xchacha20poly1305_beforenmbytes()),y=p.address;if(_.push(y),!(0|t._crypto_box_curve25519xchacha20poly1305_beforenm(y,n,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function ve(e,r,a,_,n){var s=[];i(n);var c=l(e=x(s,e,"message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=l(r),s.push(p),a=x(s,a,"publicKey");var d,v=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==v&&f(s,"invalid publicKey length"),d=l(a),s.push(d),_=x(s,_,"privateKey");var m,E=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==E&&f(s,"invalid privateKey length"),m=l(_),s.push(m);var k=new u(0|o),S=k.address;s.push(S);var T=new u(0|t._crypto_box_curve25519xchacha20poly1305_macbytes()),w=T.address;if(s.push(w),!(0|t._crypto_box_curve25519xchacha20poly1305_detached(S,w,c,o,0,p,d,m))){var Y=h({ciphertext:k,mac:T},n);return g(s),Y}b(s,"invalid usage")}function ge(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=l(r),n.push(o),a=x(n,a,"sharedKey");var y,d=0|t._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==d&&f(n,"invalid sharedKey length"),y=l(a),n.push(y);var v=new u(0|c),m=v.address;n.push(m);var E=new u(0|t._crypto_box_curve25519xchacha20poly1305_macbytes()),k=E.address;if(n.push(k),!(0|t._crypto_box_curve25519xchacha20poly1305_detached_afternm(m,k,s,c,0,o,y))){var S=h({ciphertext:v,mac:E},_);return g(n),S}b(n,"invalid usage")}function be(e,r,a,_,n){var s=[];i(n);var c=l(e=x(s,e,"message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=l(r),s.push(p),a=x(s,a,"publicKey");var d,v=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==v&&f(s,"invalid publicKey length"),d=l(a),s.push(d),_=x(s,_,"privateKey");var m,E=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==E&&f(s,"invalid privateKey length"),m=l(_),s.push(m);var k=new u(o+t._crypto_box_curve25519xchacha20poly1305_macbytes()|0),S=k.address;if(s.push(S),!(0|t._crypto_box_curve25519xchacha20poly1305_easy(S,c,o,0,p,d,m))){var T=h(k,n);return g(s),T}b(s,"invalid usage")}function fe(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=l(r),n.push(o),a=x(n,a,"sharedKey");var y,d=0|t._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==d&&f(n,"invalid sharedKey length"),y=l(a),n.push(y);var v=new u(c+t._crypto_box_curve25519xchacha20poly1305_macbytes()|0),m=v.address;if(n.push(m),!(0|t._crypto_box_curve25519xchacha20poly1305_easy_afternm(m,s,c,0,o,y))){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function me(e){var r=[];i(e);var a=new u(0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes()),_=a.address;r.push(_);var n=new u(0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),s=n.address;r.push(s),t._crypto_box_curve25519xchacha20poly1305_keypair(_,s);var c=h({publicKey:a,privateKey:n,keyType:"curve25519"},e);return g(r),c}function xe(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"ciphertext")),p=e.length;c.push(o),r=x(c,r,"mac");var y,d=0|t._crypto_box_curve25519xchacha20poly1305_macbytes();r.length!==d&&f(c,"invalid mac length"),y=l(r),c.push(y),a=x(c,a,"nonce");var v,m=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==m&&f(c,"invalid nonce length"),v=l(a),c.push(v),_=x(c,_,"publicKey");var E,k=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();_.length!==k&&f(c,"invalid publicKey length"),E=l(_),c.push(E),n=x(c,n,"privateKey");var S,T=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();n.length!==T&&f(c,"invalid privateKey length"),S=l(n),c.push(S);var w=new u(0|p),Y=w.address;if(c.push(Y),!(0|t._crypto_box_curve25519xchacha20poly1305_open_detached(Y,o,y,p,0,v,E,S))){var B=h(w,s);return g(c),B}b(c,"incorrect key pair for the given ciphertext")}function Ee(e,r,a,_,n){var s=[];i(n);var c=l(e=x(s,e,"ciphertext")),o=e.length;s.push(c),r=x(s,r,"mac");var p,y=0|t._crypto_box_curve25519xchacha20poly1305_macbytes();r.length!==y&&f(s,"invalid mac length"),p=l(r),s.push(p),a=x(s,a,"nonce");var d,v=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();a.length!==v&&f(s,"invalid nonce length"),d=l(a),s.push(d),_=x(s,_,"sharedKey");var m,E=0|t._crypto_box_curve25519xchacha20poly1305_beforenmbytes();_.length!==E&&f(s,"invalid sharedKey length"),m=l(_),s.push(m);var k=new u(0|o),S=k.address;if(s.push(S),!(0|t._crypto_box_curve25519xchacha20poly1305_open_detached_afternm(S,c,p,o,0,d,m))){var T=h(k,n);return g(s),T}b(s,"incorrect secret key for the given ciphertext")}function ke(e,r,a,_,n){var s=[];i(n),e=x(s,e,"ciphertext");var c,o=t._crypto_box_curve25519xchacha20poly1305_macbytes(),p=e.length;p<o&&f(s,"ciphertext is too short"),c=l(e),s.push(c),r=x(s,r,"nonce");var y,d=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==d&&f(s,"invalid nonce length"),y=l(r),s.push(y),a=x(s,a,"publicKey");var v,m=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();a.length!==m&&f(s,"invalid publicKey length"),v=l(a),s.push(v),_=x(s,_,"privateKey");var E,k=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();_.length!==k&&f(s,"invalid privateKey length"),E=l(_),s.push(E);var S=new u(p-t._crypto_box_curve25519xchacha20poly1305_macbytes()|0),T=S.address;if(s.push(T),!(0|t._crypto_box_curve25519xchacha20poly1305_open_easy(T,c,p,0,y,v,E))){var w=h(S,n);return g(s),w}b(s,"incorrect key pair for the given ciphertext")}function Se(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"ciphertext")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_box_curve25519xchacha20poly1305_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=l(r),n.push(o),a=x(n,a,"sharedKey");var y,d=0|t._crypto_box_curve25519xchacha20poly1305_beforenmbytes();a.length!==d&&f(n,"invalid sharedKey length"),y=l(a),n.push(y);var v=new u(c-t._crypto_box_curve25519xchacha20poly1305_macbytes()|0),m=v.address;if(n.push(m),!(0|t._crypto_box_curve25519xchacha20poly1305_open_easy_afternm(m,s,c,0,o,y))){var E=h(v,_);return g(n),E}b(n,"incorrect secret key for the given ciphertext")}function Te(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"publicKey");var c,o=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();r.length!==o&&f(_,"invalid publicKey length"),c=l(r),_.push(c);var p=new u(s+t._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),y=p.address;_.push(y),t._crypto_box_curve25519xchacha20poly1305_seal(y,n,s,0,c);var d=h(p,a);return g(_),d}function we(e,r,a,_){var n=[];i(_),e=x(n,e,"ciphertext");var s,c=t._crypto_box_curve25519xchacha20poly1305_sealbytes(),o=e.length;o<c&&f(n,"ciphertext is too short"),s=l(e),n.push(s),r=x(n,r,"publicKey");var p,y=0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes();r.length!==y&&f(n,"invalid publicKey length"),p=l(r),n.push(p),a=x(n,a,"secretKey");var d,v=0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes();a.length!==v&&f(n,"invalid secretKey length"),d=l(a),n.push(d);var b=new u(o-t._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),m=b.address;n.push(m),t._crypto_box_curve25519xchacha20poly1305_seal_open(m,s,o,0,p,d);var E=h(b,_);return g(n),E}function Ye(e,r){var a=[];i(r),e=x(a,e,"seed");var _,n=0|t._crypto_box_curve25519xchacha20poly1305_seedbytes();e.length!==n&&f(a,"invalid seed length"),_=l(e),a.push(_);var s=new u(0|t._crypto_box_curve25519xchacha20poly1305_publickeybytes()),c=s.address;a.push(c);var o=new u(0|t._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),p=o.address;if(a.push(p),!(0|t._crypto_box_curve25519xchacha20poly1305_seed_keypair(c,p,_))){var y={publicKey:h(s,r),privateKey:h(o,r),keyType:"x25519"};return g(a),y}b(a,"invalid usage")}function Be(e,r,a,_,n){var s=[];i(n);var c=l(e=x(s,e,"message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_box_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=l(r),s.push(p),a=x(s,a,"publicKey");var d,v=0|t._crypto_box_publickeybytes();a.length!==v&&f(s,"invalid publicKey length"),d=l(a),s.push(d),_=x(s,_,"privateKey");var m,E=0|t._crypto_box_secretkeybytes();_.length!==E&&f(s,"invalid privateKey length"),m=l(_),s.push(m);var k=new u(0|o),S=k.address;s.push(S);var T=new u(0|t._crypto_box_macbytes()),w=T.address;if(s.push(w),!(0|t._crypto_box_detached(S,w,c,o,0,p,d,m))){var Y=h({ciphertext:k,mac:T},n);return g(s),Y}b(s,"invalid usage")}function Ae(e,r,a,_,n){var s=[];i(n);var c=l(e=x(s,e,"message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_box_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=l(r),s.push(p),a=x(s,a,"publicKey");var d,v=0|t._crypto_box_publickeybytes();a.length!==v&&f(s,"invalid publicKey length"),d=l(a),s.push(d),_=x(s,_,"privateKey");var m,E=0|t._crypto_box_secretkeybytes();_.length!==E&&f(s,"invalid privateKey length"),m=l(_),s.push(m);var k=new u(o+t._crypto_box_macbytes()|0),S=k.address;if(s.push(S),!(0|t._crypto_box_easy(S,c,o,0,p,d,m))){var T=h(k,n);return g(s),T}b(s,"invalid usage")}function Me(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_box_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=l(r),n.push(o),a=x(n,a,"sharedKey");var y,d=0|t._crypto_box_beforenmbytes();a.length!==d&&f(n,"invalid sharedKey length"),y=l(a),n.push(y);var v=new u(c+t._crypto_box_macbytes()|0),m=v.address;if(n.push(m),!(0|t._crypto_box_easy_afternm(m,s,c,0,o,y))){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function Ie(e){var r=[];i(e);var a=new u(0|t._crypto_box_publickeybytes()),_=a.address;r.push(_);var n=new u(0|t._crypto_box_secretkeybytes()),s=n.address;if(r.push(s),!(0|t._crypto_box_keypair(_,s))){var c={publicKey:h(a,e),privateKey:h(n,e),keyType:"x25519"};return g(r),c}b(r,"internal error")}function Ke(e,r,a,_,n,s){var c=[];i(s);var o=l(e=x(c,e,"ciphertext")),p=e.length;c.push(o),r=x(c,r,"mac");var y,d=0|t._crypto_box_macbytes();r.length!==d&&f(c,"invalid mac length"),y=l(r),c.push(y),a=x(c,a,"nonce");var v,m=0|t._crypto_box_noncebytes();a.length!==m&&f(c,"invalid nonce length"),v=l(a),c.push(v),_=x(c,_,"publicKey");var E,k=0|t._crypto_box_publickeybytes();_.length!==k&&f(c,"invalid publicKey length"),E=l(_),c.push(E),n=x(c,n,"privateKey");var S,T=0|t._crypto_box_secretkeybytes();n.length!==T&&f(c,"invalid privateKey length"),S=l(n),c.push(S);var w=new u(0|p),Y=w.address;if(c.push(Y),!(0|t._crypto_box_open_detached(Y,o,y,p,0,v,E,S))){var B=h(w,s);return g(c),B}b(c,"incorrect key pair for the given ciphertext")}function Ne(e,r,a,_,n){var s=[];i(n),e=x(s,e,"ciphertext");var c,o=t._crypto_box_macbytes(),p=e.length;p<o&&f(s,"ciphertext is too short"),c=l(e),s.push(c),r=x(s,r,"nonce");var y,d=0|t._crypto_box_noncebytes();r.length!==d&&f(s,"invalid nonce length"),y=l(r),s.push(y),a=x(s,a,"publicKey");var v,m=0|t._crypto_box_publickeybytes();a.length!==m&&f(s,"invalid publicKey length"),v=l(a),s.push(v),_=x(s,_,"privateKey");var E,k=0|t._crypto_box_secretkeybytes();_.length!==k&&f(s,"invalid privateKey length"),E=l(_),s.push(E);var S=new u(p-t._crypto_box_macbytes()|0),T=S.address;if(s.push(T),!(0|t._crypto_box_open_easy(T,c,p,0,y,v,E))){var w=h(S,n);return g(s),w}b(s,"incorrect key pair for the given ciphertext")}function Le(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"ciphertext")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_box_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=l(r),n.push(o),a=x(n,a,"sharedKey");var y,d=0|t._crypto_box_beforenmbytes();a.length!==d&&f(n,"invalid sharedKey length"),y=l(a),n.push(y);var v=new u(c-t._crypto_box_macbytes()|0),m=v.address;if(n.push(m),!(0|t._crypto_box_open_easy_afternm(m,s,c,0,o,y))){var E=h(v,_);return g(n),E}b(n,"incorrect secret key for the given ciphertext")}function Oe(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"publicKey");var c,o=0|t._crypto_box_publickeybytes();r.length!==o&&f(_,"invalid publicKey length"),c=l(r),_.push(c);var p=new u(s+t._crypto_box_sealbytes()|0),y=p.address;if(_.push(y),!(0|t._crypto_box_seal(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function Ue(e,r,a,_){var n=[];i(_),e=x(n,e,"ciphertext");var s,c=t._crypto_box_sealbytes(),o=e.length;o<c&&f(n,"ciphertext is too short"),s=l(e),n.push(s),r=x(n,r,"publicKey");var p,y=0|t._crypto_box_publickeybytes();r.length!==y&&f(n,"invalid publicKey length"),p=l(r),n.push(p),a=x(n,a,"privateKey");var d,v=0|t._crypto_box_secretkeybytes();a.length!==v&&f(n,"invalid privateKey length"),d=l(a),n.push(d);var m=new u(o-t._crypto_box_sealbytes()|0),E=m.address;if(n.push(E),!(0|t._crypto_box_seal_open(E,s,o,0,p,d))){var k=h(m,_);return g(n),k}b(n,"incorrect key pair for the given ciphertext")}function Pe(e,r){var a=[];i(r),e=x(a,e,"seed");var _,n=0|t._crypto_box_seedbytes();e.length!==n&&f(a,"invalid seed length"),_=l(e),a.push(_);var s=new u(0|t._crypto_box_publickeybytes()),c=s.address;a.push(c);var o=new u(0|t._crypto_box_secretkeybytes()),p=o.address;if(a.push(p),!(0|t._crypto_box_seed_keypair(c,p,_))){var y={publicKey:h(s,r),privateKey:h(o,r),keyType:"x25519"};return g(a),y}b(a,"invalid usage")}function Ce(e,r,a){var _=[];i(a),e=x(_,e,"p");var n,s=0|t._crypto_core_ed25519_bytes();e.length!==s&&f(_,"invalid p length"),n=l(e),_.push(n),r=x(_,r,"q");var c,o=0|t._crypto_core_ed25519_bytes();r.length!==o&&f(_,"invalid q length"),c=l(r),_.push(c);var p=new u(0|t._crypto_core_ed25519_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_core_ed25519_add(y,n,c))){var d=h(p,a);return g(_),d}b(_,"input is an invalid element")}function Re(e,r){var a=[];i(r);var _=l(e=x(a,e,"r"));e.length,a.push(_);var n=new u(0|t._crypto_core_ed25519_bytes()),s=n.address;if(a.push(s),!(0|t._crypto_core_ed25519_from_hash(s,_))){var c=h(n,r);return g(a),c}b(a,"invalid usage")}function Xe(e,r){var a=[];i(r);var _=l(e=x(a,e,"r"));e.length,a.push(_);var n=new u(0|t._crypto_core_ed25519_bytes()),s=n.address;if(a.push(s),!(0|t._crypto_core_ed25519_from_uniform(s,_))){var c=h(n,r);return g(a),c}b(a,"invalid usage")}function De(e,r){var a=[];i(r),e=x(a,e,"repr");var _,n=0|t._crypto_core_ed25519_bytes();e.length!==n&&f(a,"invalid repr length"),_=l(e),a.push(_);var s=1==(0|t._crypto_core_ed25519_is_valid_point(_));return g(a),s}function Ge(e){var r=[];i(e);var a=new u(0|t._crypto_core_ed25519_bytes()),_=a.address;r.push(_),t._crypto_core_ed25519_random(_);var n=h(a,e);return g(r),n}function Fe(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ed25519_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=l(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ed25519_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=l(r),_.push(c);var p=new u(0|t._crypto_core_ed25519_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ed25519_scalar_add(y,n,c);var d=h(p,a);return g(_),d}function Ve(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ed25519_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=l(e),a.push(_);var s=new u(0|t._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ed25519_scalar_complement(c,_);var o=h(s,r);return g(a),o}function qe(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ed25519_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=l(e),a.push(_);var s=new u(0|t._crypto_core_ed25519_scalarbytes()),c=s.address;if(a.push(c),!(0|t._crypto_core_ed25519_scalar_invert(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid reciprocate")}function ze(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ed25519_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=l(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ed25519_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=l(r),_.push(c);var p=new u(0|t._crypto_core_ed25519_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ed25519_scalar_mul(y,n,c);var d=h(p,a);return g(_),d}function We(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ed25519_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=l(e),a.push(_);var s=new u(0|t._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ed25519_scalar_negate(c,_);var o=h(s,r);return g(a),o}function He(e){var r=[];i(e);var a=new u(0|t._crypto_core_ed25519_scalarbytes()),_=a.address;r.push(_),t._crypto_core_ed25519_scalar_random(_);var n=h(a,e);return g(r),n}function je(e,r){var a=[];i(r),e=x(a,e,"sample");var _,n=0|t._crypto_core_ed25519_nonreducedscalarbytes();e.length!==n&&f(a,"invalid sample length"),_=l(e),a.push(_);var s=new u(0|t._crypto_core_ed25519_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ed25519_scalar_reduce(c,_);var o=h(s,r);return g(a),o}function Je(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ed25519_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=l(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ed25519_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=l(r),_.push(c);var p=new u(0|t._crypto_core_ed25519_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ed25519_scalar_sub(y,n,c);var d=h(p,a);return g(_),d}function Qe(e,r,a){var _=[];i(a),e=x(_,e,"p");var n,s=0|t._crypto_core_ed25519_bytes();e.length!==s&&f(_,"invalid p length"),n=l(e),_.push(n),r=x(_,r,"q");var c,o=0|t._crypto_core_ed25519_bytes();r.length!==o&&f(_,"invalid q length"),c=l(r),_.push(c);var p=new u(0|t._crypto_core_ed25519_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_core_ed25519_sub(y,n,c))){var d=h(p,a);return g(_),d}b(_,"input is an invalid element")}function Ze(e,r,a,_){var n=[];i(_),e=x(n,e,"input");var s,c=0|t._crypto_core_hchacha20_inputbytes();e.length!==c&&f(n,"invalid input length"),s=l(e),n.push(s),r=x(n,r,"privateKey");var o,p=0|t._crypto_core_hchacha20_keybytes();r.length!==p&&f(n,"invalid privateKey length"),o=l(r),n.push(o);var y=null;null!=a&&(y=l(a=x(n,a,"constant")),a.length,n.push(y));var d=new u(0|t._crypto_core_hchacha20_outputbytes()),v=d.address;if(n.push(v),!(0|t._crypto_core_hchacha20(v,s,o,y))){var m=h(d,_);return g(n),m}b(n,"invalid usage")}function $e(e,r,a,_){var n=[];i(_),e=x(n,e,"input");var s,c=0|t._crypto_core_hsalsa20_inputbytes();e.length!==c&&f(n,"invalid input length"),s=l(e),n.push(s),r=x(n,r,"privateKey");var o,p=0|t._crypto_core_hsalsa20_keybytes();r.length!==p&&f(n,"invalid privateKey length"),o=l(r),n.push(o);var y=null;null!=a&&(y=l(a=x(n,a,"constant")),a.length,n.push(y));var d=new u(0|t._crypto_core_hsalsa20_outputbytes()),v=d.address;if(n.push(v),!(0|t._crypto_core_hsalsa20(v,s,o,y))){var m=h(d,_);return g(n),m}b(n,"invalid usage")}function er(e,r,a){var _=[];i(a),e=x(_,e,"p");var n,s=0|t._crypto_core_ristretto255_bytes();e.length!==s&&f(_,"invalid p length"),n=l(e),_.push(n),r=x(_,r,"q");var c,o=0|t._crypto_core_ristretto255_bytes();r.length!==o&&f(_,"invalid q length"),c=l(r),_.push(c);var p=new u(0|t._crypto_core_ristretto255_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_core_ristretto255_add(y,n,c))){var d=h(p,a);return g(_),d}b(_,"input is an invalid element")}function rr(e,r){var a=[];i(r);var _=l(e=x(a,e,"r"));e.length,a.push(_);var n=new u(0|t._crypto_core_ristretto255_bytes()),s=n.address;if(a.push(s),!(0|t._crypto_core_ristretto255_from_hash(s,_))){var c=h(n,r);return g(a),c}b(a,"invalid usage")}function tr(e,r){var a=[];i(r),e=x(a,e,"repr");var _,n=0|t._crypto_core_ristretto255_bytes();e.length!==n&&f(a,"invalid repr length"),_=l(e),a.push(_);var s=1==(0|t._crypto_core_ristretto255_is_valid_point(_));return g(a),s}function ar(e){var r=[];i(e);var a=new u(0|t._crypto_core_ristretto255_bytes()),_=a.address;r.push(_),t._crypto_core_ristretto255_random(_);var n=h(a,e);return g(r),n}function _r(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=l(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ristretto255_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=l(r),_.push(c);var p=new u(0|t._crypto_core_ristretto255_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ristretto255_scalar_add(y,n,c);var d=h(p,a);return g(_),d}function nr(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=l(e),a.push(_);var s=new u(0|t._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ristretto255_scalar_complement(c,_);var o=h(s,r);return g(a),o}function sr(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=l(e),a.push(_);var s=new u(0|t._crypto_core_ristretto255_scalarbytes()),c=s.address;if(a.push(c),!(0|t._crypto_core_ristretto255_scalar_invert(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid reciprocate")}function cr(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=l(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ristretto255_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=l(r),_.push(c);var p=new u(0|t._crypto_core_ristretto255_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ristretto255_scalar_mul(y,n,c);var d=h(p,a);return g(_),d}function or(e,r){var a=[];i(r),e=x(a,e,"s");var _,n=0|t._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(a,"invalid s length"),_=l(e),a.push(_);var s=new u(0|t._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ristretto255_scalar_negate(c,_);var o=h(s,r);return g(a),o}function pr(e){var r=[];i(e);var a=new u(0|t._crypto_core_ristretto255_scalarbytes()),_=a.address;r.push(_),t._crypto_core_ristretto255_scalar_random(_);var n=h(a,e);return g(r),n}function hr(e,r){var a=[];i(r),e=x(a,e,"sample");var _,n=0|t._crypto_core_ristretto255_nonreducedscalarbytes();e.length!==n&&f(a,"invalid sample length"),_=l(e),a.push(_);var s=new u(0|t._crypto_core_ristretto255_scalarbytes()),c=s.address;a.push(c),t._crypto_core_ristretto255_scalar_reduce(c,_);var o=h(s,r);return g(a),o}function yr(e,r,a){var _=[];i(a),e=x(_,e,"x");var n,s=0|t._crypto_core_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid x length"),n=l(e),_.push(n),r=x(_,r,"y");var c,o=0|t._crypto_core_ristretto255_scalarbytes();r.length!==o&&f(_,"invalid y length"),c=l(r),_.push(c);var p=new u(0|t._crypto_core_ristretto255_scalarbytes()),y=p.address;_.push(y),t._crypto_core_ristretto255_scalar_sub(y,n,c);var d=h(p,a);return g(_),d}function ir(e,r,a){var _=[];i(a),e=x(_,e,"p");var n,s=0|t._crypto_core_ristretto255_bytes();e.length!==s&&f(_,"invalid p length"),n=l(e),_.push(n),r=x(_,r,"q");var c,o=0|t._crypto_core_ristretto255_bytes();r.length!==o&&f(_,"invalid q length"),c=l(r),_.push(c);var p=new u(0|t._crypto_core_ristretto255_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_core_ristretto255_sub(y,n,c))){var d=h(p,a);return g(_),d}b(_,"input is an invalid element")}function ur(e,r,a,_){var n=[];i(_),m(n,e,"hash_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(n,"hash_length must be an unsigned integer");var s=l(r=x(n,r,"message")),c=r.length;n.push(s);var o=null,p=0;null!=a&&(o=l(a=x(n,a,"key")),p=a.length,n.push(o));var y=new u(e|=0),d=y.address;if(n.push(d),!(0|t._crypto_generichash(d,e,s,c,0,o,p))){var v=h(y,_);return g(n),v}b(n,"invalid usage")}function lr(e,r,a,_,n){var s=[];i(n),m(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&f(s,"subkey_len must be an unsigned integer");var c=null,o=0;null!=r&&(c=l(r=x(s,r,"key")),o=r.length,s.push(c));var p=null,y=0;null!=a&&(a=x(s,a,"id"),y=0|t._crypto_generichash_blake2b_saltbytes(),a.length!==y&&f(s,"invalid id length"),p=l(a),s.push(p));var d=null,v=0;null!=_&&(_=x(s,_,"ctx"),v=0|t._crypto_generichash_blake2b_personalbytes(),_.length!==v&&f(s,"invalid ctx length"),d=l(_),s.push(d));var E=new u(0|e),k=E.address;if(s.push(k),!(0|t._crypto_generichash_blake2b_salt_personal(k,e,null,0,0,c,o,p,d))){var S=h(E,n);return g(s),S}b(s,"invalid usage")}function dr(e,r,a){var _=[];i(a),m(_,e,"state_address"),m(_,r,"hash_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"hash_length must be an unsigned integer");var n=new u(r|=0),s=n.address;if(_.push(s),!(0|t._crypto_generichash_final(e,s,r))){var c=(t._free(e),h(n,a));return g(_),c}b(_,"invalid usage")}function vr(e,r,a){var _=[];i(a);var n=null,s=0;null!=e&&(n=l(e=x(_,e,"key")),s=e.length,_.push(n)),m(_,r,"hash_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"hash_length must be an unsigned integer");var c=new u(357).address;if(!(0|t._crypto_generichash_init(c,n,s,r))){var o=c;return g(_),o}b(_,"invalid usage")}function gr(e){var r=[];i(e);var a=new u(0|t._crypto_generichash_keybytes()),_=a.address;r.push(_),t._crypto_generichash_keygen(_);var n=h(a,e);return g(r),n}function br(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_generichash_update(e,n,s)&&b(_,"invalid usage"),g(_)}function fr(e,r){var a=[];i(r);var _=l(e=x(a,e,"message")),n=e.length;a.push(_);var s=new u(0|t._crypto_hash_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_hash(c,_,n,0))){var o=h(s,r);return g(a),o}b(a,"invalid usage")}function mr(e,r){var a=[];i(r);var _=l(e=x(a,e,"message")),n=e.length;a.push(_);var s=new u(0|t._crypto_hash_sha256_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_hash_sha256(c,_,n,0))){var o=h(s,r);return g(a),o}b(a,"invalid usage")}function xr(e,r){var a=[];i(r),m(a,e,"state_address");var _=new u(0|t._crypto_hash_sha256_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_hash_sha256_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function Er(e){var r=[];i(e);var a=new u(104).address;if(!(0|t._crypto_hash_sha256_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function kr(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_hash_sha256_update(e,n,s)&&b(_,"invalid usage"),g(_)}function Sr(e,r){var a=[];i(r);var _=l(e=x(a,e,"message")),n=e.length;a.push(_);var s=new u(0|t._crypto_hash_sha512_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_hash_sha512(c,_,n,0))){var o=h(s,r);return g(a),o}b(a,"invalid usage")}function Tr(e,r){var a=[];i(r),m(a,e,"state_address");var _=new u(0|t._crypto_hash_sha512_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_hash_sha512_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function wr(e){var r=[];i(e);var a=new u(208).address;if(!(0|t._crypto_hash_sha512_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function Yr(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_hash_sha512_update(e,n,s)&&b(_,"invalid usage"),g(_)}function Br(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_bytes();e.length!==s&&f(_,"invalid input length"),n=l(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_ipcrypt_bytes()),y=p.address;_.push(y),t._crypto_ipcrypt_decrypt(y,n,c);var d=h(p,a);return g(_),d}function Ar(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_bytes();e.length!==s&&f(_,"invalid input length"),n=l(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_ipcrypt_bytes()),y=p.address;_.push(y),t._crypto_ipcrypt_encrypt(y,n,c);var d=h(p,a);return g(_),d}function Mr(e){var r=[];i(e);var a=new u(0|t._crypto_ipcrypt_keybytes()),_=a.address;r.push(_),t._crypto_ipcrypt_keygen(_);var n=h(a,e);return g(r),n}function Ir(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_nd_outputbytes();e.length!==s&&f(_,"invalid input length"),n=l(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_nd_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_ipcrypt_nd_inputbytes()),y=p.address;_.push(y),t._crypto_ipcrypt_nd_decrypt(y,n,c);var d=h(p,a);return g(_),d}function Kr(e,r,a,_){var n=[];i(_),e=x(n,e,"input");var s,c=0|t._crypto_ipcrypt_nd_inputbytes();e.length!==c&&f(n,"invalid input length"),s=l(e),n.push(s),r=x(n,r,"tweak");var o,p=0|t._crypto_ipcrypt_nd_tweakbytes();r.length!==p&&f(n,"invalid tweak length"),o=l(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_ipcrypt_nd_keybytes();a.length!==d&&f(n,"invalid key length"),y=l(a),n.push(y);var v=new u(0|t._crypto_ipcrypt_nd_outputbytes()),b=v.address;n.push(b),t._crypto_ipcrypt_nd_encrypt(b,s,o,y);var m=h(v,_);return g(n),m}function Nr(e){var r=[];i(e);var a=new u(0|t._crypto_ipcrypt_nd_keybytes()),_=a.address;r.push(_),t._crypto_ipcrypt_nd_keygen(_);var n=h(a,e);return g(r),n}function Lr(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_ndx_outputbytes();e.length!==s&&f(_,"invalid input length"),n=l(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_ndx_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_ipcrypt_ndx_inputbytes()),y=p.address;_.push(y),t._crypto_ipcrypt_ndx_decrypt(y,n,c);var d=h(p,a);return g(_),d}function Or(e,r,a,_){var n=[];i(_),e=x(n,e,"input");var s,c=0|t._crypto_ipcrypt_ndx_inputbytes();e.length!==c&&f(n,"invalid input length"),s=l(e),n.push(s),r=x(n,r,"tweak");var o,p=0|t._crypto_ipcrypt_ndx_tweakbytes();r.length!==p&&f(n,"invalid tweak length"),o=l(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_ipcrypt_ndx_keybytes();a.length!==d&&f(n,"invalid key length"),y=l(a),n.push(y);var v=new u(0|t._crypto_ipcrypt_ndx_outputbytes()),b=v.address;n.push(b),t._crypto_ipcrypt_ndx_encrypt(b,s,o,y);var m=h(v,_);return g(n),m}function Ur(e){var r=[];i(e);var a=new u(0|t._crypto_ipcrypt_ndx_keybytes()),_=a.address;r.push(_),t._crypto_ipcrypt_ndx_keygen(_);var n=h(a,e);return g(r),n}function Pr(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_pfx_bytes();e.length!==s&&f(_,"invalid input length"),n=l(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_pfx_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_ipcrypt_pfx_bytes()),y=p.address;_.push(y),t._crypto_ipcrypt_pfx_decrypt(y,n,c);var d=h(p,a);return g(_),d}function Cr(e,r,a){var _=[];i(a),e=x(_,e,"input");var n,s=0|t._crypto_ipcrypt_pfx_bytes();e.length!==s&&f(_,"invalid input length"),n=l(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_ipcrypt_pfx_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_ipcrypt_pfx_bytes()),y=p.address;_.push(y),t._crypto_ipcrypt_pfx_encrypt(y,n,c);var d=h(p,a);return g(_),d}function Rr(e){var r=[];i(e);var a=new u(0|t._crypto_ipcrypt_pfx_keybytes()),_=a.address;r.push(_),t._crypto_ipcrypt_pfx_keygen(_);var n=h(a,e);return g(r),n}function Xr(e,r,a,n,s){var c=[];i(s),m(c,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&f(c,"subkey_len must be an unsigned integer"),m(c,r,"subkey_id");var o,p=0;if("bigint"==typeof r&&r>=BigInt(0)){const e=r>>BigInt(32);e>BigInt(4294967295)&&f(c,"subkey_id cannot be more than 64 bits"),p=Number(e),o=Number(r&BigInt(4294967295))}else"number"==typeof r&&(0|r)===r&&r>=0?o=r:f(c,"subkey_id must be an unsigned integer or bigint");"string"!=typeof a&&f(c,"ctx must be a string"),(a=_(a+"\0")).length-1!==t._crypto_kdf_contextbytes()&&f(c,"invalid ctx length");var y=l(a);a.length,c.push(y),n=x(c,n,"key");var d,v=0|t._crypto_kdf_keybytes();n.length!==v&&f(c,"invalid key length"),d=l(n),c.push(d);var b=new u(0|e),E=b.address;c.push(E),t._crypto_kdf_derive_from_key(E,e,o,p,y,d);var k=h(b,s);return g(c),k}function Dr(e){var r=[];i(e);var a=new u(0|t._crypto_kdf_keybytes()),_=a.address;r.push(_),t._crypto_kdf_keygen(_);var n=h(a,e);return g(r),n}function Gr(e,r,a,_){var n=[];i(_),e=x(n,e,"clientPublicKey");var s,c=0|t._crypto_kx_publickeybytes();e.length!==c&&f(n,"invalid clientPublicKey length"),s=l(e),n.push(s),r=x(n,r,"clientSecretKey");var o,p=0|t._crypto_kx_secretkeybytes();r.length!==p&&f(n,"invalid clientSecretKey length"),o=l(r),n.push(o),a=x(n,a,"serverPublicKey");var y,d=0|t._crypto_kx_publickeybytes();a.length!==d&&f(n,"invalid serverPublicKey length"),y=l(a),n.push(y);var v=new u(0|t._crypto_kx_sessionkeybytes()),m=v.address;n.push(m);var E=new u(0|t._crypto_kx_sessionkeybytes()),k=E.address;if(n.push(k),!(0|t._crypto_kx_client_session_keys(m,k,s,o,y))){var S=h({sharedRx:v,sharedTx:E},_);return g(n),S}b(n,"invalid usage")}function Fr(e){var r=[];i(e);var a=new u(0|t._crypto_kx_publickeybytes()),_=a.address;r.push(_);var n=new u(0|t._crypto_kx_secretkeybytes()),s=n.address;if(r.push(s),!(0|t._crypto_kx_keypair(_,s))){var c={publicKey:h(a,e),privateKey:h(n,e),keyType:"x25519"};return g(r),c}b(r,"internal error")}function Vr(e,r){var a=[];i(r),e=x(a,e,"seed");var _,n=0|t._crypto_kx_seedbytes();e.length!==n&&f(a,"invalid seed length"),_=l(e),a.push(_);var s=new u(0|t._crypto_kx_publickeybytes()),c=s.address;a.push(c);var o=new u(0|t._crypto_kx_secretkeybytes()),p=o.address;if(a.push(p),!(0|t._crypto_kx_seed_keypair(c,p,_))){var y={publicKey:h(s,r),privateKey:h(o,r),keyType:"x25519"};return g(a),y}b(a,"internal error")}function qr(e,r,a,_){var n=[];i(_),e=x(n,e,"serverPublicKey");var s,c=0|t._crypto_kx_publickeybytes();e.length!==c&&f(n,"invalid serverPublicKey length"),s=l(e),n.push(s),r=x(n,r,"serverSecretKey");var o,p=0|t._crypto_kx_secretkeybytes();r.length!==p&&f(n,"invalid serverSecretKey length"),o=l(r),n.push(o),a=x(n,a,"clientPublicKey");var y,d=0|t._crypto_kx_publickeybytes();a.length!==d&&f(n,"invalid clientPublicKey length"),y=l(a),n.push(y);var v=new u(0|t._crypto_kx_sessionkeybytes()),m=v.address;n.push(m);var E=new u(0|t._crypto_kx_sessionkeybytes()),k=E.address;if(n.push(k),!(0|t._crypto_kx_server_session_keys(m,k,s,o,y))){var S=h({sharedRx:v,sharedTx:E},_);return g(n),S}b(n,"invalid usage")}function zr(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_onetimeauth_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_onetimeauth_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_onetimeauth(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function Wr(e,r){var a=[];i(r),m(a,e,"state_address");var _=new u(0|t._crypto_onetimeauth_bytes()),n=_.address;if(a.push(n),!(0|t._crypto_onetimeauth_final(e,n))){var s=(t._free(e),h(_,r));return g(a),s}b(a,"invalid usage")}function Hr(e,r){var a=[];i(r);var _=null;null!=e&&(_=l(e=x(a,e,"key")),e.length,a.push(_));var n=new u(144).address;if(!(0|t._crypto_onetimeauth_init(n,_))){var s=n;return g(a),s}b(a,"invalid usage")}function jr(e){var r=[];i(e);var a=new u(0|t._crypto_onetimeauth_keybytes()),_=a.address;r.push(_),t._crypto_onetimeauth_keygen(_);var n=h(a,e);return g(r),n}function Jr(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_onetimeauth_update(e,n,s)&&b(_,"invalid usage"),g(_)}function Qr(e,r,a){var _=[];e=x(_,e,"hash");var n,s=0|t._crypto_onetimeauth_bytes();e.length!==s&&f(_,"invalid hash length"),n=l(e),_.push(n);var c=l(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"key");var p,h=0|t._crypto_onetimeauth_keybytes();a.length!==h&&f(_,"invalid key length"),p=l(a),_.push(p);var y=!(0|t._crypto_onetimeauth_verify(n,c,o,0,p));return g(_),y}function Zr(e,r,a,_,n,s,c){var o=[];i(c),m(o,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&f(o,"keyLength must be an unsigned integer");var p=l(r=x(o,r,"password")),y=r.length;o.push(p),a=x(o,a,"salt");var d,v=0|t._crypto_pwhash_saltbytes();a.length!==v&&f(o,"invalid salt length"),d=l(a),o.push(d),m(o,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&f(o,"opsLimit must be an unsigned integer"),m(o,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&f(o,"memLimit must be an unsigned integer"),m(o,s,"algorithm"),("number"!=typeof s||(0|s)!==s||s<0)&&f(o,"algorithm must be an unsigned integer");var E=new u(0|e),k=E.address;if(o.push(k),!(0|t._crypto_pwhash(k,e,0,p,y,0,d,_,0,n,s))){var S=h(E,c);return g(o),S}b(o,"invalid usage")}function $r(e,r,a,_,n,s){var c=[];i(s),m(c,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&f(c,"keyLength must be an unsigned integer");var o=l(r=x(c,r,"password")),p=r.length;c.push(o),a=x(c,a,"salt");var y,d=0|t._crypto_pwhash_scryptsalsa208sha256_saltbytes();a.length!==d&&f(c,"invalid salt length"),y=l(a),c.push(y),m(c,_,"opsLimit"),("number"!=typeof _||(0|_)!==_||_<0)&&f(c,"opsLimit must be an unsigned integer"),m(c,n,"memLimit"),("number"!=typeof n||(0|n)!==n||n<0)&&f(c,"memLimit must be an unsigned integer");var v=new u(0|e),E=v.address;if(c.push(E),!(0|t._crypto_pwhash_scryptsalsa208sha256(E,e,0,o,p,0,y,_,0,n))){var k=h(v,s);return g(c),k}b(c,"invalid usage")}function et(e,r,a,_,n,s,c){var o=[];i(c);var p=l(e=x(o,e,"password")),y=e.length;o.push(p);var d=l(r=x(o,r,"salt")),v=r.length;o.push(d),m(o,a,"opsLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(o,"opsLimit must be an unsigned integer"),m(o,_,"r"),("number"!=typeof _||(0|_)!==_||_<0)&&f(o,"r must be an unsigned integer"),m(o,n,"p"),("number"!=typeof n||(0|n)!==n||n<0)&&f(o,"p must be an unsigned integer"),m(o,s,"keyLength"),("number"!=typeof s||(0|s)!==s||s<0)&&f(o,"keyLength must be an unsigned integer");var E=new u(0|s),k=E.address;if(o.push(k),!(0|t._crypto_pwhash_scryptsalsa208sha256_ll(p,y,d,v,a,0,_,n,k,s))){var S=h(E,c);return g(o),S}b(o,"invalid usage")}function rt(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"password")),c=e.length;n.push(s),m(n,r,"opsLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&f(n,"opsLimit must be an unsigned integer"),m(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(n,"memLimit must be an unsigned integer");var o=new u(0|t._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(n.push(o),!(0|t._crypto_pwhash_scryptsalsa208sha256_str(o,s,c,0,r,0,a))){var p=t.UTF8ToString(o);return g(n),p}b(n,"invalid usage")}function tt(e,r,a){var n=[];i(a),"string"!=typeof e&&f(n,"hashed_password must be a string");var s=l(e=_(e+"\0"));e.length,n.push(s);var c=l(r=x(n,r,"password")),o=r.length;n.push(c);var p=!(0|t._crypto_pwhash_scryptsalsa208sha256_str_verify(s,c,o,0));return g(n),p}function at(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"password")),c=e.length;n.push(s),m(n,r,"opsLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&f(n,"opsLimit must be an unsigned integer"),m(n,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(n,"memLimit must be an unsigned integer");var o=new u(0|t._crypto_pwhash_strbytes()).address;if(n.push(o),!(0|t._crypto_pwhash_str(o,s,c,0,r,0,a))){var p=t.UTF8ToString(o);return g(n),p}b(n,"invalid usage")}function _t(e,r,a,n){var s=[];i(n),"string"!=typeof e&&f(s,"hashed_password must be a string");var c=l(e=_(e+"\0"));e.length,s.push(c),m(s,r,"opsLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&f(s,"opsLimit must be an unsigned integer"),m(s,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&f(s,"memLimit must be an unsigned integer");var o=!!(0|t._crypto_pwhash_str_needs_rehash(c,r,0,a));return g(s),o}function nt(e,r,a){var n=[];i(a),"string"!=typeof e&&f(n,"hashed_password must be a string");var s=l(e=_(e+"\0"));e.length,n.push(s);var c=l(r=x(n,r,"password")),o=r.length;n.push(c);var p=!(0|t._crypto_pwhash_str_verify(s,c,o,0));return g(n),p}function st(e,r,a){var _=[];i(a),e=x(_,e,"privateKey");var n,s=0|t._crypto_scalarmult_scalarbytes();e.length!==s&&f(_,"invalid privateKey length"),n=l(e),_.push(n),r=x(_,r,"publicKey");var c,o=0|t._crypto_scalarmult_bytes();r.length!==o&&f(_,"invalid publicKey length"),c=l(r),_.push(c);var p=new u(0|t._crypto_scalarmult_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_scalarmult(y,n,c))){var d=h(p,a);return g(_),d}b(_,"weak public key")}function ct(e,r){var a=[];i(r),e=x(a,e,"privateKey");var _,n=0|t._crypto_scalarmult_scalarbytes();e.length!==n&&f(a,"invalid privateKey length"),_=l(e),a.push(_);var s=new u(0|t._crypto_scalarmult_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_scalarmult_base(c,_))){var o=h(s,r);return g(a),o}b(a,"unknown error")}function ot(e,r,a){var _=[];i(a),e=x(_,e,"n");var n,s=0|t._crypto_scalarmult_ed25519_scalarbytes();e.length!==s&&f(_,"invalid n length"),n=l(e),_.push(n),r=x(_,r,"p");var c,o=0|t._crypto_scalarmult_ed25519_bytes();r.length!==o&&f(_,"invalid p length"),c=l(r),_.push(c);var p=new u(0|t._crypto_scalarmult_ed25519_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_scalarmult_ed25519(y,n,c))){var d=h(p,a);return g(_),d}b(_,"invalid point or scalar is 0")}function pt(e,r){var a=[];i(r),e=x(a,e,"scalar");var _,n=0|t._crypto_scalarmult_ed25519_scalarbytes();e.length!==n&&f(a,"invalid scalar length"),_=l(e),a.push(_);var s=new u(0|t._crypto_scalarmult_ed25519_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_scalarmult_ed25519_base(c,_))){var o=h(s,r);return g(a),o}b(a,"scalar is 0")}function ht(e,r){var a=[];i(r),e=x(a,e,"scalar");var _,n=0|t._crypto_scalarmult_ed25519_scalarbytes();e.length!==n&&f(a,"invalid scalar length"),_=l(e),a.push(_);var s=new u(0|t._crypto_scalarmult_ed25519_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_scalarmult_ed25519_base_noclamp(c,_))){var o=h(s,r);return g(a),o}b(a,"scalar is 0")}function yt(e,r,a){var _=[];i(a),e=x(_,e,"n");var n,s=0|t._crypto_scalarmult_ed25519_scalarbytes();e.length!==s&&f(_,"invalid n length"),n=l(e),_.push(n),r=x(_,r,"p");var c,o=0|t._crypto_scalarmult_ed25519_bytes();r.length!==o&&f(_,"invalid p length"),c=l(r),_.push(c);var p=new u(0|t._crypto_scalarmult_ed25519_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_scalarmult_ed25519_noclamp(y,n,c))){var d=h(p,a);return g(_),d}b(_,"invalid point or scalar is 0")}function it(e,r,a){var _=[];i(a),e=x(_,e,"scalar");var n,s=0|t._crypto_scalarmult_ristretto255_scalarbytes();e.length!==s&&f(_,"invalid scalar length"),n=l(e),_.push(n),r=x(_,r,"element");var c,o=0|t._crypto_scalarmult_ristretto255_bytes();r.length!==o&&f(_,"invalid element length"),c=l(r),_.push(c);var p=new u(0|t._crypto_scalarmult_ristretto255_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_scalarmult_ristretto255(y,n,c))){var d=h(p,a);return g(_),d}b(_,"result is identity element")}function ut(e,r){var a=[];i(r),e=x(a,e,"scalar");var _,n=0|t._crypto_core_ristretto255_scalarbytes();e.length!==n&&f(a,"invalid scalar length"),_=l(e),a.push(_);var s=new u(0|t._crypto_core_ristretto255_bytes()),c=s.address;if(a.push(c),!(0|t._crypto_scalarmult_ristretto255_base(c,_))){var o=h(s,r);return g(a),o}b(a,"scalar is 0")}function lt(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_secretbox_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=l(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_secretbox_keybytes();a.length!==d&&f(n,"invalid key length"),y=l(a),n.push(y);var v=new u(0|c),m=v.address;n.push(m);var E=new u(0|t._crypto_secretbox_macbytes()),k=E.address;if(n.push(k),!(0|t._crypto_secretbox_detached(m,k,s,c,0,o,y))){var S=h({mac:E,cipher:v},_);return g(n),S}b(n,"invalid usage")}function dt(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_secretbox_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=l(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_secretbox_keybytes();a.length!==d&&f(n,"invalid key length"),y=l(a),n.push(y);var v=new u(c+t._crypto_secretbox_macbytes()|0),m=v.address;if(n.push(m),!(0|t._crypto_secretbox_easy(m,s,c,0,o,y))){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function vt(e){var r=[];i(e);var a=new u(0|t._crypto_secretbox_keybytes()),_=a.address;r.push(_),t._crypto_secretbox_keygen(_);var n=h(a,e);return g(r),n}function gt(e,r,a,_,n){var s=[];i(n);var c=l(e=x(s,e,"ciphertext")),o=e.length;s.push(c),r=x(s,r,"mac");var p,y=0|t._crypto_secretbox_macbytes();r.length!==y&&f(s,"invalid mac length"),p=l(r),s.push(p),a=x(s,a,"nonce");var d,v=0|t._crypto_secretbox_noncebytes();a.length!==v&&f(s,"invalid nonce length"),d=l(a),s.push(d),_=x(s,_,"key");var m,E=0|t._crypto_secretbox_keybytes();_.length!==E&&f(s,"invalid key length"),m=l(_),s.push(m);var k=new u(0|o),S=k.address;if(s.push(S),!(0|t._crypto_secretbox_open_detached(S,c,p,o,0,d,m))){var T=h(k,n);return g(s),T}b(s,"wrong secret key for the given ciphertext")}function bt(e,r,a,_){var n=[];i(_),e=x(n,e,"ciphertext");var s,c=t._crypto_secretbox_macbytes(),o=e.length;o<c&&f(n,"ciphertext is too short"),s=l(e),n.push(s),r=x(n,r,"nonce");var p,y=0|t._crypto_secretbox_noncebytes();r.length!==y&&f(n,"invalid nonce length"),p=l(r),n.push(p),a=x(n,a,"key");var d,v=0|t._crypto_secretbox_keybytes();a.length!==v&&f(n,"invalid key length"),d=l(a),n.push(d);var m=new u(o-t._crypto_secretbox_macbytes()|0),E=m.address;if(n.push(E),!(0|t._crypto_secretbox_open_easy(E,s,o,0,p,d))){var k=h(m,_);return g(n),k}b(n,"wrong secret key for the given ciphertext")}function ft(e,r,a){var _=[];i(a),e=x(_,e,"header");var n,s=0|t._crypto_secretstream_xchacha20poly1305_headerbytes();e.length!==s&&f(_,"invalid header length"),n=l(e),_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_secretstream_xchacha20poly1305_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(52).address;if(!(0|t._crypto_secretstream_xchacha20poly1305_init_pull(p,n,c))){var h=p;return g(_),h}b(_,"invalid usage")}function mt(e,r){var a=[];i(r),e=x(a,e,"key");var _,n=0|t._crypto_secretstream_xchacha20poly1305_keybytes();e.length!==n&&f(a,"invalid key length"),_=l(e),a.push(_);var s=new u(52).address,c=new u(0|t._crypto_secretstream_xchacha20poly1305_headerbytes()),o=c.address;if(a.push(o),!(0|t._crypto_secretstream_xchacha20poly1305_init_push(s,o,_))){var p={state:s,header:h(c,r)};return g(a),p}b(a,"invalid usage")}function xt(e){var r=[];i(e);var a=new u(0|t._crypto_secretstream_xchacha20poly1305_keybytes()),_=a.address;r.push(_),t._crypto_secretstream_xchacha20poly1305_keygen(_);var n=h(a,e);return g(r),n}function Et(e,r,a,_){var n=[];i(_),m(n,e,"state_address"),r=x(n,r,"cipher");var s,c=t._crypto_secretstream_xchacha20poly1305_abytes(),o=r.length;o<c&&f(n,"cipher is too short"),s=l(r),n.push(s);var p=null,y=0;null!=a&&(p=l(a=x(n,a,"ad")),y=a.length,n.push(p));var v=new u(o-t._crypto_secretstream_xchacha20poly1305_abytes()|0),b=v.address;n.push(b);var E,k=(E=d(1),n.push(E),(k=0===t._crypto_secretstream_xchacha20poly1305_pull(e,b,0,E,s,o,0,p,y)&&{tag:t.HEAPU8[E],message:v})&&{message:h(k.message,_),tag:k.tag});return g(n),k}function kt(e,r,a,_,n){var s=[];i(n),m(s,e,"state_address");var c=l(r=x(s,r,"message_chunk")),o=r.length;s.push(c);var p=null,y=0;null!=a&&(p=l(a=x(s,a,"ad")),y=a.length,s.push(p)),m(s,_,"tag"),("number"!=typeof _||(0|_)!==_||_<0)&&f(s,"tag must be an unsigned integer");var d=new u(o+t._crypto_secretstream_xchacha20poly1305_abytes()|0),v=d.address;if(s.push(v),!(0|t._crypto_secretstream_xchacha20poly1305_push(e,v,0,c,o,0,p,y,0,_))){var E=h(d,n);return g(s),E}b(s,"invalid usage")}function St(e,r){var a=[];return i(r),m(a,e,"state_address"),t._crypto_secretstream_xchacha20poly1305_rekey(e),g(a),!0}function Tt(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_shorthash_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_shorthash_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_shorthash(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function wt(e){var r=[];i(e);var a=new u(0|t._crypto_shorthash_keybytes()),_=a.address;r.push(_),t._crypto_shorthash_keygen(_);var n=h(a,e);return g(r),n}function Yt(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"key");var c,o=0|t._crypto_shorthash_siphashx24_keybytes();r.length!==o&&f(_,"invalid key length"),c=l(r),_.push(c);var p=new u(0|t._crypto_shorthash_siphashx24_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_shorthash_siphashx24(y,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function Bt(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"privateKey");var c,o=0|t._crypto_sign_secretkeybytes();r.length!==o&&f(_,"invalid privateKey length"),c=l(r),_.push(c);var p=new u(e.length+t._crypto_sign_bytes()|0),y=p.address;if(_.push(y),!(0|t._crypto_sign(y,null,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function At(e,r,a){var _=[];i(a);var n=l(e=x(_,e,"message")),s=e.length;_.push(n),r=x(_,r,"privateKey");var c,o=0|t._crypto_sign_secretkeybytes();r.length!==o&&f(_,"invalid privateKey length"),c=l(r),_.push(c);var p=new u(0|t._crypto_sign_bytes()),y=p.address;if(_.push(y),!(0|t._crypto_sign_detached(y,null,n,s,0,c))){var d=h(p,a);return g(_),d}b(_,"invalid usage")}function Mt(e,r){var a=[];i(r),e=x(a,e,"edPk");var _,n=0|t._crypto_sign_publickeybytes();e.length!==n&&f(a,"invalid edPk length"),_=l(e),a.push(_);var s=new u(0|t._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),!(0|t._crypto_sign_ed25519_pk_to_curve25519(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid key")}function It(e,r){var a=[];i(r),e=x(a,e,"edSk");var _,n=0|t._crypto_sign_secretkeybytes();e.length!==n&&f(a,"invalid edSk length"),_=l(e),a.push(_);var s=new u(0|t._crypto_scalarmult_scalarbytes()),c=s.address;if(a.push(c),!(0|t._crypto_sign_ed25519_sk_to_curve25519(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid key")}function Kt(e,r){var a=[];i(r),e=x(a,e,"privateKey");var _,n=0|t._crypto_sign_secretkeybytes();e.length!==n&&f(a,"invalid privateKey length"),_=l(e),a.push(_);var s=new u(0|t._crypto_sign_publickeybytes()),c=s.address;if(a.push(c),!(0|t._crypto_sign_ed25519_sk_to_pk(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid key")}function Nt(e,r){var a=[];i(r),e=x(a,e,"privateKey");var _,n=0|t._crypto_sign_secretkeybytes();e.length!==n&&f(a,"invalid privateKey length"),_=l(e),a.push(_);var s=new u(0|t._crypto_sign_seedbytes()),c=s.address;if(a.push(c),!(0|t._crypto_sign_ed25519_sk_to_seed(c,_))){var o=h(s,r);return g(a),o}b(a,"invalid key")}function Lt(e,r,a){var _=[];i(a),m(_,e,"state_address"),r=x(_,r,"privateKey");var n,s=0|t._crypto_sign_secretkeybytes();r.length!==s&&f(_,"invalid privateKey length"),n=l(r),_.push(n);var c=new u(0|t._crypto_sign_bytes()),o=c.address;if(_.push(o),!(0|t._crypto_sign_final_create(e,o,null,n))){var p=(t._free(e),h(c,a));return g(_),p}b(_,"invalid usage")}function Ot(e,r,a,_){var n=[];i(_),m(n,e,"state_address"),r=x(n,r,"signature");var s,c=0|t._crypto_sign_bytes();r.length!==c&&f(n,"invalid signature length"),s=l(r),n.push(s),a=x(n,a,"publicKey");var o,p=0|t._crypto_sign_publickeybytes();a.length!==p&&f(n,"invalid publicKey length"),o=l(a),n.push(o);var h=!(0|t._crypto_sign_final_verify(e,s,o));return g(n),h}function Ut(e){var r=[];i(e);var a=new u(208).address;if(!(0|t._crypto_sign_init(a))){var _=a;return g(r),_}b(r,"internal error")}function Pt(e){var r=[];i(e);var a=new u(0|t._crypto_sign_publickeybytes()),_=a.address;r.push(_);var n=new u(0|t._crypto_sign_secretkeybytes()),s=n.address;if(r.push(s),!(0|t._crypto_sign_keypair(_,s))){var c={publicKey:h(a,e),privateKey:h(n,e),keyType:"ed25519"};return g(r),c}b(r,"internal error")}function Ct(e,r,a){var _=[];i(a),e=x(_,e,"signedMessage");var n,s=t._crypto_sign_bytes(),c=e.length;c<s&&f(_,"signedMessage is too short"),n=l(e),_.push(n),r=x(_,r,"publicKey");var o,p=0|t._crypto_sign_publickeybytes();r.length!==p&&f(_,"invalid publicKey length"),o=l(r),_.push(o);var y=new u(c-t._crypto_sign_bytes()|0),d=y.address;if(_.push(d),!(0|t._crypto_sign_open(d,null,n,c,0,o))){var v=h(y,a);return g(_),v}b(_,"incorrect signature for the given public key")}function Rt(e,r){var a=[];i(r),e=x(a,e,"seed");var _,n=0|t._crypto_sign_seedbytes();e.length!==n&&f(a,"invalid seed length"),_=l(e),a.push(_);var s=new u(0|t._crypto_sign_publickeybytes()),c=s.address;a.push(c);var o=new u(0|t._crypto_sign_secretkeybytes()),p=o.address;if(a.push(p),!(0|t._crypto_sign_seed_keypair(c,p,_))){var y={publicKey:h(s,r),privateKey:h(o,r),keyType:"ed25519"};return g(a),y}b(a,"invalid usage")}function Xt(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_sign_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function Dt(e,r,a){var _=[];e=x(_,e,"signature");var n,s=0|t._crypto_sign_bytes();e.length!==s&&f(_,"invalid signature length"),n=l(e),_.push(n);var c=l(r=x(_,r,"message")),o=r.length;_.push(c),a=x(_,a,"publicKey");var p,h=0|t._crypto_sign_publickeybytes();a.length!==h&&f(_,"invalid publicKey length"),p=l(a),_.push(p);var y=!(0|t._crypto_sign_verify_detached(n,c,o,0,p));return g(_),y}function Gt(e,r,a,_){var n=[];i(_),m(n,e,"outLength"),("number"!=typeof e||(0|e)!==e||e<0)&&f(n,"outLength must be an unsigned integer"),r=x(n,r,"key");var s,c=0|t._crypto_stream_chacha20_keybytes();r.length!==c&&f(n,"invalid key length"),s=l(r),n.push(s),a=x(n,a,"nonce");var o,p=0|t._crypto_stream_chacha20_noncebytes();a.length!==p&&f(n,"invalid nonce length"),o=l(a),n.push(o);var y=new u(0|e),d=y.address;n.push(d),t._crypto_stream_chacha20(d,e,0,o,s);var v=h(y,_);return g(n),v}function Ft(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"input_message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_stream_chacha20_ietf_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=l(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_stream_chacha20_ietf_keybytes();a.length!==d&&f(n,"invalid key length"),y=l(a),n.push(y);var v=new u(0|c),m=v.address;if(n.push(m),0===t._crypto_stream_chacha20_ietf_xor(m,s,c,0,o,y)){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function Vt(e,r,a,_,n){var s=[];i(n);var c=l(e=x(s,e,"input_message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_stream_chacha20_ietf_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=l(r),s.push(p),m(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&f(s,"nonce_increment must be an unsigned integer"),_=x(s,_,"key");var d,v=0|t._crypto_stream_chacha20_ietf_keybytes();_.length!==v&&f(s,"invalid key length"),d=l(_),s.push(d);var E=new u(0|o),k=E.address;if(s.push(k),0===t._crypto_stream_chacha20_ietf_xor_ic(k,c,o,0,p,a,d)){var S=h(E,n);return g(s),S}b(s,"invalid usage")}function qt(e){var r=[];i(e);var a=new u(0|t._crypto_stream_chacha20_keybytes()),_=a.address;r.push(_),t._crypto_stream_chacha20_keygen(_);var n=h(a,e);return g(r),n}function zt(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"input_message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_stream_chacha20_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=l(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_stream_chacha20_keybytes();a.length!==d&&f(n,"invalid key length"),y=l(a),n.push(y);var v=new u(0|c),m=v.address;if(n.push(m),0===t._crypto_stream_chacha20_xor(m,s,c,0,o,y)){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function Wt(e,r,a,_,n){var s=[];i(n);var c=l(e=x(s,e,"input_message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_stream_chacha20_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=l(r),s.push(p),m(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&f(s,"nonce_increment must be an unsigned integer"),_=x(s,_,"key");var d,v=0|t._crypto_stream_chacha20_keybytes();_.length!==v&&f(s,"invalid key length"),d=l(_),s.push(d);var E=new u(0|o),k=E.address;if(s.push(k),0===t._crypto_stream_chacha20_xor_ic(k,c,o,0,p,a,0,d)){var S=h(E,n);return g(s),S}b(s,"invalid usage")}function Ht(e){var r=[];i(e);var a=new u(0|t._crypto_stream_keybytes()),_=a.address;r.push(_),t._crypto_stream_keygen(_);var n=h(a,e);return g(r),n}function jt(e){var r=[];i(e);var a=new u(0|t._crypto_stream_xchacha20_keybytes()),_=a.address;r.push(_),t._crypto_stream_xchacha20_keygen(_);var n=h(a,e);return g(r),n}function Jt(e,r,a,_){var n=[];i(_);var s=l(e=x(n,e,"input_message")),c=e.length;n.push(s),r=x(n,r,"nonce");var o,p=0|t._crypto_stream_xchacha20_noncebytes();r.length!==p&&f(n,"invalid nonce length"),o=l(r),n.push(o),a=x(n,a,"key");var y,d=0|t._crypto_stream_xchacha20_keybytes();a.length!==d&&f(n,"invalid key length"),y=l(a),n.push(y);var v=new u(0|c),m=v.address;if(n.push(m),0===t._crypto_stream_xchacha20_xor(m,s,c,0,o,y)){var E=h(v,_);return g(n),E}b(n,"invalid usage")}function Qt(e,r,a,_,n){var s=[];i(n);var c=l(e=x(s,e,"input_message")),o=e.length;s.push(c),r=x(s,r,"nonce");var p,y=0|t._crypto_stream_xchacha20_noncebytes();r.length!==y&&f(s,"invalid nonce length"),p=l(r),s.push(p),m(s,a,"nonce_increment"),("number"!=typeof a||(0|a)!==a||a<0)&&f(s,"nonce_increment must be an unsigned integer"),_=x(s,_,"key");var d,v=0|t._crypto_stream_xchacha20_keybytes();_.length!==v&&f(s,"invalid key length"),d=l(_),s.push(d);var E=new u(0|o),k=E.address;if(s.push(k),0===t._crypto_stream_xchacha20_xor_ic(k,c,o,0,p,a,0,d)){var S=h(E,n);return g(s),S}b(s,"invalid usage")}function Zt(e,r,a){var _=[];i(a),m(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"out_length must be an unsigned integer");var n=l(r=x(_,r,"message")),s=r.length;_.push(n);var c=new u(e|=0),o=c.address;if(_.push(o),!(0|t._crypto_xof_shake128(o,e,n,s,0))){var p=h(c,a);return g(_),p}b(_,"invalid usage")}function $t(e){var r=[];i(e);var a=new u(256).address;if(!(0|t._crypto_xof_shake128_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function ea(e,r){var a=[];i(r),m(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"domain must be an unsigned integer");var _=new u(256).address;if(!(0|t._crypto_xof_shake128_init_with_domain(_,e))){var n=_;return g(a),n}b(a,"invalid usage")}function ra(e,r,a){var _=[];i(a),m(_,e,"state_address"),m(_,r,"out_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"out_length must be an unsigned integer");var n=new u(r|=0),s=n.address;if(_.push(s),!(0|t._crypto_xof_shake128_squeeze(e,s,r))){var c=h(n,a);return g(_),c}b(_,"invalid usage")}function ta(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_xof_shake128_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function aa(e,r,a){var _=[];i(a),m(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"out_length must be an unsigned integer");var n=l(r=x(_,r,"message")),s=r.length;_.push(n);var c=new u(e|=0),o=c.address;if(_.push(o),!(0|t._crypto_xof_shake256(o,e,n,s,0))){var p=h(c,a);return g(_),p}b(_,"invalid usage")}function _a(e){var r=[];i(e);var a=new u(256).address;if(!(0|t._crypto_xof_shake256_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function na(e,r){var a=[];i(r),m(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"domain must be an unsigned integer");var _=new u(256).address;if(!(0|t._crypto_xof_shake256_init_with_domain(_,e))){var n=_;return g(a),n}b(a,"invalid usage")}function sa(e,r,a){var _=[];i(a),m(_,e,"state_address"),m(_,r,"out_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"out_length must be an unsigned integer");var n=new u(r|=0),s=n.address;if(_.push(s),!(0|t._crypto_xof_shake256_squeeze(e,s,r))){var c=h(n,a);return g(_),c}b(_,"invalid usage")}function ca(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_xof_shake256_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function oa(e,r,a){var _=[];i(a),m(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"out_length must be an unsigned integer");var n=l(r=x(_,r,"message")),s=r.length;_.push(n);var c=new u(e|=0),o=c.address;if(_.push(o),!(0|t._crypto_xof_turboshake128(o,e,n,s,0))){var p=h(c,a);return g(_),p}b(_,"invalid usage")}function pa(e){var r=[];i(e);var a=new u(256).address;if(!(0|t._crypto_xof_turboshake128_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function ha(e,r){var a=[];i(r),m(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"domain must be an unsigned integer");var _=new u(256).address;if(!(0|t._crypto_xof_turboshake128_init_with_domain(_,e))){var n=_;return g(a),n}b(a,"invalid usage")}function ya(e,r,a){var _=[];i(a),m(_,e,"state_address"),m(_,r,"out_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"out_length must be an unsigned integer");var n=new u(r|=0),s=n.address;if(_.push(s),!(0|t._crypto_xof_turboshake128_squeeze(e,s,r))){var c=h(n,a);return g(_),c}b(_,"invalid usage")}function ia(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_xof_turboshake128_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function ua(e,r,a){var _=[];i(a),m(_,e,"out_length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"out_length must be an unsigned integer");var n=l(r=x(_,r,"message")),s=r.length;_.push(n);var c=new u(e|=0),o=c.address;if(_.push(o),!(0|t._crypto_xof_turboshake256(o,e,n,s,0))){var p=h(c,a);return g(_),p}b(_,"invalid usage")}function la(e){var r=[];i(e);var a=new u(256).address;if(!(0|t._crypto_xof_turboshake256_init(a))){var _=a;return g(r),_}b(r,"invalid usage")}function da(e,r){var a=[];i(r),m(a,e,"domain"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"domain must be an unsigned integer");var _=new u(256).address;if(!(0|t._crypto_xof_turboshake256_init_with_domain(_,e))){var n=_;return g(a),n}b(a,"invalid usage")}function va(e,r,a){var _=[];i(a),m(_,e,"state_address"),m(_,r,"out_length"),("number"!=typeof r||(0|r)!==r||r<0)&&f(_,"out_length must be an unsigned integer");var n=new u(r|=0),s=n.address;if(_.push(s),!(0|t._crypto_xof_turboshake256_squeeze(e,s,r))){var c=h(n,a);return g(_),c}b(_,"invalid usage")}function ga(e,r,a){var _=[];i(a),m(_,e,"state_address");var n=l(r=x(_,r,"message_chunk")),s=r.length;_.push(n),0|t._crypto_xof_turboshake256_update(e,n,s,0)&&b(_,"invalid usage"),g(_)}function ba(e,r){var a=[];i(r),m(a,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"length must be an unsigned integer");var _=new u(0|e),n=_.address;a.push(n),t._randombytes_buf(n,e);var s=h(_,r);return g(a),s}function fa(e,r,a){var _=[];i(a),m(_,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&f(_,"length must be an unsigned integer"),r=x(_,r,"seed");var n,s=0|t._randombytes_seedbytes();r.length!==s&&f(_,"invalid seed length"),n=l(r),_.push(n);var c=new u(0|e),o=c.address;_.push(o),t._randombytes_buf_deterministic(o,e,n);var p=h(c,a);return g(_),p}function ma(e){i(e),t._randombytes_close()}function xa(e){i(e);var r=t._randombytes_random()>>>0;return g([]),r}function Ea(e,r){var a=[];i(r);for(var _=t._malloc(24),n=0;n<6;n++)t.setValue(_+4*n,t.Runtime.addFunction(e[["implementation_name","random","stir","uniform","buf","close"][n]]),"i32");0|t._randombytes_set_implementation(_)&&b(a,"unsupported implementation"),g(a)}function ka(e){i(e),t._randombytes_stir()}function Sa(e,r){var a=[];i(r),m(a,e,"upper_bound"),("number"!=typeof e||(0|e)!==e||e<0)&&f(a,"upper_bound must be an unsigned integer");var _=t._randombytes_uniform(e)>>>0;return g(a),_}function Ta(e){var r,a=[];16!==(e=x(a,e,"bin")).length&&f(a,"invalid bin length"),r=l(e),a.push(r);var _=new u(46).address;if(a.push(_),0!==t._sodium_bin2ip(_,46,r)){var n=t.UTF8ToString(_);return g(a),n}b(a,"conversion failed")}function wa(e,r){var a=[];i(r),"string"!=typeof e&&f(a,"ip must be a string");var n=l(e=_(e+"\0")),s=e.length-1;a.push(n);var c=new u(16),o=c.address;if(a.push(o),!(0|t._sodium_ip2bin(o,n,s))){var p=h(c,r);return g(a),p}b(a,"invalid IP address")}function Ya(){var e=t._sodium_version_string(),r=t.UTF8ToString(e);return g([]),r}return u.prototype.to_Uint8Array=function(){var e=new Uint8Array(this.length);return e.set(t.HEAPU8.subarray(this.address,this.address+this.length)),e},e.add=function(e,r){if(!(e instanceof Uint8Array&&r instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be added");var t=e.length,a=0,_=0;if(r.length!==e.length)throw new TypeError("Arguments must have the same length");for(_=0;_<t;_++)a>>=8,a+=e[_]+r[_],e[_]=255&a},e.base64_variants=c,e.compare=function(e,r){if(!(e instanceof Uint8Array&&r instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==r.length)throw new TypeError("Only instances of identical length can be compared");for(var t=0,a=1,_=e.length;_-- >0;)t|=r[_]-e[_]>>8&a,a&=(r[_]^e[_])-1>>8;return t+t+a-1},e.from_base64=function(e,r){r=o(r);var a,_=[],n=new u(3*(e=x(_,e,"input")).length/4),s=l(e),c=d(4),p=d(4);return _.push(s),_.push(n.address),_.push(c),_.push(p),0!==t._sodium_base642bin(n.address,n.length,s,e.length,0,c,p,r)&&b(_,"invalid input"),t.getValue(p,"i32")-s!==e.length&&b(_,"incomplete input"),n.length=t.getValue(c,"i32"),a=n.to_Uint8Array(),g(_),a},e.from_hex=function(e){var r,a=[],_=new u((e=x(a,e,"input")).length/2),n=l(e),s=d(4);return a.push(n),a.push(_.address),a.push(s),0!==t._sodium_hex2bin(_.address,_.length,n,e.length,0,0,s)&&b(a,"invalid input"),t.getValue(s,"i32")-n!==e.length&&b(a,"incomplete input"),r=_.to_Uint8Array(),g(a),r},e.from_string=_,e.increment=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be incremented");for(var r=256,t=0,a=e.length;t<a;t++)r>>=8,r+=e[t],e[t]=255&r},e.is_zero=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be checked");for(var r=0,t=0,a=e.length;t<a;t++)r|=e[t];return 0===r},e.libsodium=r,e.memcmp=function(e,r){if(!(e instanceof Uint8Array&&r instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==r.length)throw new TypeError("Only instances of identical length can be compared");for(var t=0,a=0,_=e.length;a<_;a++)t|=e[a]^r[a];return 0===t},e.memzero=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be wiped");for(var r=0,t=e.length;r<t;r++)e[r]=0},e.output_formats=function(){return["uint8array","text","hex","base64"]},e.pad=function(e,r){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((r|=0)<=0)throw new Error("block size must be > 0");var a,_=[],n=d(4),s=1,c=0,o=0|e.length,p=new u(o+r);_.push(n),_.push(p.address);for(var h=p.address,y=p.address+o+r;h<y;h++)t.HEAPU8[h]=e[c],c+=s=1&~((65535&((o-=s)>>>48|o>>>32|o>>>16|o))-1>>16);return 0!==t._sodium_pad(n,p.address,e.length,r,p.length)&&b(_,"internal error"),p.length=t.getValue(n,"i32"),a=p.to_Uint8Array(),g(_),a},e.unpad=function(e,r){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((r|=0)<=0)throw new Error("block size must be > 0");var a=[],_=l(e),n=d(4);return a.push(_),a.push(n),0!==t._sodium_unpad(n,_,e.length,r)&&b(a,"unsupported/invalid padding"),e=(e=new Uint8Array(e)).subarray(0,t.getValue(n,"i32")),g(a),e},e.ready=a,e.symbols=function(){return Object.keys(e).sort()},e.to_base64=p,e.to_hex=s,e.to_string=n,e}var t="object"==typeof e.sodium&&"function"==typeof e.sodium.onload?e.sodium.onload:null;"function"==typeof define&&define.amd?define(["exports","libsodium"],r):"object"==typeof exports&&"string"!=typeof exports.nodeName?r(exports,require("libsodium")):e.sodium=r(e.commonJsStrict={},e.libsodium),t&&e.sodium.ready.then(function(){t(e.sodium)})}(this);