From 92de0c18a1aa4aef070dd0ad6842a45eac47f8e8 Mon Sep 17 00:00:00 2001 From: Cesar Date: Tue, 12 Nov 2024 16:54:32 +0000 Subject: [PATCH] e2e poc --- .github/workflows/pull-request.yml | 10 + .gitignore | 3 +- e2e/mig/6.19.5/assets/StarknetStars.png | Bin 0 -> 2063 bytes e2e/mig/6.19.5/assets/appicon.png | Bin 0 -> 5065 bytes e2e/mig/6.19.5/assets/barlow/LICENSE | 93 + .../barlow/barlow-latin-300-normal.woff | Bin 0 -> 18420 bytes .../barlow/barlow-latin-300-normal.woff2 | Bin 0 -> 20992 bytes .../barlow/barlow-latin-400-normal.woff | Bin 0 -> 18464 bytes .../barlow/barlow-latin-400-normal.woff2 | Bin 0 -> 21144 bytes .../barlow/barlow-latin-500-normal.woff | Bin 0 -> 18416 bytes .../barlow/barlow-latin-500-normal.woff2 | Bin 0 -> 20960 bytes .../barlow/barlow-latin-600-normal.woff | Bin 0 -> 18748 bytes .../barlow/barlow-latin-600-normal.woff2 | Bin 0 -> 21796 bytes .../barlow/barlow-latin-700-normal.woff | Bin 0 -> 18644 bytes .../barlow/barlow-latin-700-normal.woff2 | Bin 0 -> 21724 bytes e2e/mig/6.19.5/assets/default-tokens.json | 93 + e2e/mig/6.19.5/assets/influence.png | Bin 0 -> 778484 bytes e2e/mig/6.19.5/assets/known-dapps.json | 148 + e2e/mig/6.19.5/assets/ledger.riv | Bin 0 -> 56712 bytes .../assets/notification-failure-icon@3x.png | Bin 0 -> 1745 bytes .../assets/notification-success-icon@3x.png | Bin 0 -> 1677 bytes .../6.19.5/assets/onboarding-background.jpg | Bin 0 -> 163642 bytes e2e/mig/6.19.5/assets/vSTRK.json | 8 + .../b73c77132bfe64dc0abbd3d1b74bd3ab.txt | 32113 ++++++++++++++++ e2e/mig/6.19.5/favicon.ico | Bin 0 -> 167177 bytes e2e/mig/6.19.5/index.html | 1 + e2e/mig/6.19.5/inject.js | 3 + e2e/mig/6.19.5/inpage.js | 2137 + e2e/mig/6.19.5/main.js | 4 + e2e/mig/6.19.5/manifest.json | 69 + e2e/node_modules/.bin/playwright | 17 + e2e/node_modules/.bin/uuid | 17 + e2e/node_modules/@playwright/test | 1 + e2e/node_modules/@scure/base | 1 + e2e/node_modules/@scure/bip39 | 1 + e2e/node_modules/@types/axios | 1 + e2e/node_modules/@types/node | 1 + e2e/node_modules/@types/uuid | 1 + e2e/node_modules/dotenv | 1 + e2e/node_modules/lodash-es | 1 + e2e/node_modules/object-hash | 1 + e2e/node_modules/react | 1 + e2e/node_modules/react-dom | 1 + e2e/node_modules/starknet | 1 + e2e/node_modules/swr | 1 + e2e/node_modules/uuid | 1 + e2e/node_modules/zod | 1 + e2e/package.json | 29 + e2e/playwright.config.ts | 35 + e2e/src/config.ts | 87 + e2e/src/fixtures.ts | 11 + e2e/src/languages/ILanguage.ts | 3 + e2e/src/languages/en/index.ts | 162 + e2e/src/languages/index.ts | 8 + e2e/src/page-objects/Account.ts | 930 + e2e/src/page-objects/Activity.ts | 74 + e2e/src/page-objects/AddressBook.ts | 83 + e2e/src/page-objects/Dapps.ts | 147 + e2e/src/page-objects/DeveloperSettings.ts | 72 + e2e/src/page-objects/ExtensionPage.ts | 486 + e2e/src/page-objects/Messages.ts | 17 + e2e/src/page-objects/Navigation.ts | 140 + e2e/src/page-objects/Network.ts | 91 + e2e/src/page-objects/Nfts.ts | 21 + e2e/src/page-objects/Preferences.ts | 40 + e2e/src/page-objects/Settings.ts | 142 + e2e/src/page-objects/Swap.ts | 95 + e2e/src/page-objects/TokenDetails.ts | 94 + e2e/src/page-objects/Wallet.ts | 152 + e2e/src/specs/dapps.spec.ts | 46 + e2e/src/test.ts | 183 + e2e/src/utils/Clipboard.ts | 46 + e2e/src/utils/assets.ts | 334 + e2e/src/utils/common.ts | 30 + e2e/src/utils/downloadGitHubRelease.ts | 64 + e2e/src/utils/getBranchVersion.sh | 24 + e2e/src/utils/getBranchVersion.ts | 22 + e2e/src/utils/global.teardown.ts | 16 + e2e/src/utils/index.ts | 19 + e2e/src/utils/unzip.sh | 58 + e2e/src/utils/unzip.ts | 36 + e2e/tsconfig.json | 22 + e2e/until-failure | 9 + package.json | 2 +- pnpm-lock.yaml | 194 + pnpm-workspace.yaml | 3 + test-results/.last-run.json | 6 + 87 files changed, 38762 insertions(+), 2 deletions(-) create mode 100644 e2e/mig/6.19.5/assets/StarknetStars.png create mode 100644 e2e/mig/6.19.5/assets/appicon.png create mode 100644 e2e/mig/6.19.5/assets/barlow/LICENSE create mode 100644 e2e/mig/6.19.5/assets/barlow/barlow-latin-300-normal.woff create mode 100644 e2e/mig/6.19.5/assets/barlow/barlow-latin-300-normal.woff2 create mode 100644 e2e/mig/6.19.5/assets/barlow/barlow-latin-400-normal.woff create mode 100644 e2e/mig/6.19.5/assets/barlow/barlow-latin-400-normal.woff2 create mode 100644 e2e/mig/6.19.5/assets/barlow/barlow-latin-500-normal.woff create mode 100644 e2e/mig/6.19.5/assets/barlow/barlow-latin-500-normal.woff2 create mode 100644 e2e/mig/6.19.5/assets/barlow/barlow-latin-600-normal.woff create mode 100644 e2e/mig/6.19.5/assets/barlow/barlow-latin-600-normal.woff2 create mode 100644 e2e/mig/6.19.5/assets/barlow/barlow-latin-700-normal.woff create mode 100644 e2e/mig/6.19.5/assets/barlow/barlow-latin-700-normal.woff2 create mode 100644 e2e/mig/6.19.5/assets/default-tokens.json create mode 100644 e2e/mig/6.19.5/assets/influence.png create mode 100644 e2e/mig/6.19.5/assets/known-dapps.json create mode 100644 e2e/mig/6.19.5/assets/ledger.riv create mode 100644 e2e/mig/6.19.5/assets/notification-failure-icon@3x.png create mode 100644 e2e/mig/6.19.5/assets/notification-success-icon@3x.png create mode 100644 e2e/mig/6.19.5/assets/onboarding-background.jpg create mode 100644 e2e/mig/6.19.5/assets/vSTRK.json create mode 100644 e2e/mig/6.19.5/b73c77132bfe64dc0abbd3d1b74bd3ab.txt create mode 100644 e2e/mig/6.19.5/favicon.ico create mode 100644 e2e/mig/6.19.5/index.html create mode 100644 e2e/mig/6.19.5/inject.js create mode 100644 e2e/mig/6.19.5/inpage.js create mode 100644 e2e/mig/6.19.5/main.js create mode 100644 e2e/mig/6.19.5/manifest.json create mode 100755 e2e/node_modules/.bin/playwright create mode 100755 e2e/node_modules/.bin/uuid create mode 120000 e2e/node_modules/@playwright/test create mode 120000 e2e/node_modules/@scure/base create mode 120000 e2e/node_modules/@scure/bip39 create mode 120000 e2e/node_modules/@types/axios create mode 120000 e2e/node_modules/@types/node create mode 120000 e2e/node_modules/@types/uuid create mode 120000 e2e/node_modules/dotenv create mode 120000 e2e/node_modules/lodash-es create mode 120000 e2e/node_modules/object-hash create mode 120000 e2e/node_modules/react create mode 120000 e2e/node_modules/react-dom create mode 120000 e2e/node_modules/starknet create mode 120000 e2e/node_modules/swr create mode 120000 e2e/node_modules/uuid create mode 120000 e2e/node_modules/zod create mode 100644 e2e/package.json create mode 100644 e2e/playwright.config.ts create mode 100644 e2e/src/config.ts create mode 100644 e2e/src/fixtures.ts create mode 100644 e2e/src/languages/ILanguage.ts create mode 100644 e2e/src/languages/en/index.ts create mode 100644 e2e/src/languages/index.ts create mode 100644 e2e/src/page-objects/Account.ts create mode 100644 e2e/src/page-objects/Activity.ts create mode 100644 e2e/src/page-objects/AddressBook.ts create mode 100644 e2e/src/page-objects/Dapps.ts create mode 100644 e2e/src/page-objects/DeveloperSettings.ts create mode 100644 e2e/src/page-objects/ExtensionPage.ts create mode 100644 e2e/src/page-objects/Messages.ts create mode 100644 e2e/src/page-objects/Navigation.ts create mode 100644 e2e/src/page-objects/Network.ts create mode 100644 e2e/src/page-objects/Nfts.ts create mode 100644 e2e/src/page-objects/Preferences.ts create mode 100644 e2e/src/page-objects/Settings.ts create mode 100644 e2e/src/page-objects/Swap.ts create mode 100644 e2e/src/page-objects/TokenDetails.ts create mode 100644 e2e/src/page-objects/Wallet.ts create mode 100644 e2e/src/specs/dapps.spec.ts create mode 100644 e2e/src/test.ts create mode 100644 e2e/src/utils/Clipboard.ts create mode 100644 e2e/src/utils/assets.ts create mode 100644 e2e/src/utils/common.ts create mode 100644 e2e/src/utils/downloadGitHubRelease.ts create mode 100755 e2e/src/utils/getBranchVersion.sh create mode 100644 e2e/src/utils/getBranchVersion.ts create mode 100644 e2e/src/utils/global.teardown.ts create mode 100644 e2e/src/utils/index.ts create mode 100755 e2e/src/utils/unzip.sh create mode 100644 e2e/src/utils/unzip.ts create mode 100644 e2e/tsconfig.json create mode 100755 e2e/until-failure create mode 100644 pnpm-workspace.yaml create mode 100644 test-results/.last-run.json diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index b06c9ab..0debe20 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -9,6 +9,13 @@ on: jobs: build: runs-on: ubuntu-latest + env: + ARGENT_X_ENVIRONMENT: "hydrogen" + E2E_REPO: ${{ secrets.E2E_REPO }} + E2E_REPO_TOKEN: ${{ secrets.E2E_REPO_TOKEN }} + E2E_REPO_OWNER: ${{ secrets.E2E_REPO_OWNER }} + E2E_REPO_RELEASE_NAME: ${{ secrets.E2E_REPO_RELEASE_NAME }} + steps: - name: Checkout code uses: actions/checkout@v4 @@ -38,3 +45,6 @@ jobs: run: pnpm install - name: Build demo-dapp-starknet run: pnpm run build + - name: Run e2e tests + run: pnpm run start & xvfb-run --auto-servernum pnpm test + diff --git a/.gitignore b/.gitignore index b3b4187..ca76d86 100644 --- a/.gitignore +++ b/.gitignore @@ -44,4 +44,5 @@ next-env.d.ts .playwright-* playwright-report* -.eslintcache \ No newline at end of file +.eslintcache +mig \ No newline at end of file diff --git a/e2e/mig/6.19.5/assets/StarknetStars.png b/e2e/mig/6.19.5/assets/StarknetStars.png new file mode 100644 index 0000000000000000000000000000000000000000..c962963bd8a70156683d6e5e91c5711adfbbce48 GIT binary patch literal 2063 zcmaJ=cTm$=7yU&@2w>zW?{k-1qJ~=gqu#=boGB;&dJ+BrgO20L<3L(iH$e zI9?tAh49u2mvVXDCKzes6%7Ewl1Bjoa`I$(Bq-YT{5ha{Nbwu*z#nYkXaN9qslt1H zU;q#(wzafyy9HWd4&$dhq-h(`nzRwTb}@4xS=tWyL3>^_4e{)0&!VK|>t#rmCy{(B zANw`Pv}BL}5uriHeuGyAz*;~uAlMt_tB;<5!7W^2(R z_uIRaGwF1pt{5bh-aj{=0K9Vn$Jt-q9p7?N+abSV{Xny z7hfO-cK5%Zuc3Tfu@TwZA`&titR3pNNjC*>>xENvM~srfwSicL*vTsK3F3q0{J6lX z7tGEnpB*g*d^=eJLpqb9ePR9c4;QLZ0c~^ipsUV32@I#XzxURhgj7*j|r>KA6@82mW#XNt@?X1H&p9lD7yB~uqCa@ zcY6H`S;0%G!gCv8&oSJh1urzd_D}ma<4Zbp6A1!!K{oNBWCyz{#FGW@l)~a1ABWvS zA)9gz&iS0(e}!zkY9?Ko$Kgm~oR9F1&{vx)yday z!AKD0qJ2%l`9@LZghqE%x0_^TY$-Ka z4Sf)0Pd;J$Q?_rER9vSf+^J&0!+&lL^J@mE-Y##sxQBoqqMXCxpF;8XFo zx}(O983k%(U-@NvF#rdOG>v?mO3aM_1Ep^b7r@Z2C3^4DaOZ6DnecCF0u+G~pAmt8x=3ABxbf?eau10R+CboXfV`efjBsFExWs@B`XX;qASJWQg9`=#vhV zqk;V|G{9|=R%gOJB3K8}8}D9J@7`MLvLD7_4X9f2_%jMpM7ae?+5u&(r2G9b+D*y=-<0vF9Pm)(Y9Ssw6N5E;GVmS!|~tCjH5OgZHJ=G8#t>^ zTI8&T8OIE%CKEKb?%8;g>=;o-l)-aV+s(Dn(D0Bw_I}K8SxJ2QY;DIgc7!`@zHE1F zZ4EJIdz;&{WLs9}{@K%FwM1gXsbsU|4}-V(_5P`(LXT5DF6*B?Q&au)Fa-jEICDk~ zG~}yq(wBlcY^$8)Q0w!kJ6G(@7>=f$3}fcEW^;zCFH0paUJ8yQMBCM6UH4@fC2{4C zrHCv3(tWMu+?N?@DPZ`>8*I8@&>@@{JFCs018Sw((>D^;MNVl%Wq9>cl0zuamuC# z*(>$AoC_p5u@ThO+cN4TyI4>V3dN@>tG$KHNuHO|=lZGhBhtvc$vu3)oO|Wp|L#G= zU`wG3Tw42YkN56ggn>%Vr46Ggh9TYZcuDYg1yQ?S`T#8)c2&LQ zOy$Z4{(*_7p*|JkKc;66+OxP#+ozW?CwcOa)+1U?z~@CSGN6hqQ1j) zCEm@1W__-zu|Et~&dz(*3v$p?tXLLRXFWZ%dIf(wwq_o4qR4nNkpwCIs{RRskzs8~ z5b7e)Xl2d86U(QCa@g|y;irYjyx)Wvwii|B;)O=*eR5%E*F`IJu0sR!tWbQ>dRcdi z?&K1P3FgwFCDR3Q@lm|$oDvM`T8RY%7h_H6ku!zm?_j2F&{l4cpPnydiTVX+2K>&cT-9c+t z03iM=1kfn{4<0)UfTqKr2fA;OQ~HN;*41_&DDT)l#RrIBD<>-esxr5* z{g41i9=Ef$a*u^(hkPQox7G^GyIJg)SRI9(tE27l5Q{^eEXRG!SHg6KAa5KOx@I*Z zo{>uR-SvbZMSO=^BnBa6D+mKtFOudJ_4e+1sBz@e&~k{00_X6j-@kcKO+bo~(v9ei z0<(vY()h0b_rOVI0D=Zt|4>@_xAftl(XoP9Zt@P^+O6$$F%S~-`+9n_&i$qv9_%0F z10wqX=t`xms_lF^Ns@_o_=`i^T2FCv;g&L)ZF*<`;)aebb=uaPJ)gTh2>=F$H<$$X zy2;IzSjqb<*mB}aPG@Af5P@&%Qg_j__?FZavNpot3#2cjA)3UAFkd(*hHy#5P$Em&@5h|ksbl%MSpE$R4PG`qNK=VdYe#!4t_ z!CT({-Hb-GC@(B~Koc$oUX2JTgUgRLs|aIRgZ{<xS{l9DT#X0|xxW-0B?-j^Fp7ZL0lt z5`Yn;HPfc2p0{{NL1UMhAJ2-h{BV=096a*Zs&v9)#)fM_^|qehY|Q54FK_pu!O%T~ zIx>}_8n*=ha{G18tfgGxReEw#rjnRrT90~Fp>Kcplxb)(=n@{FLJ7j{HWb^viLFtR z{U*n9#Iv+oHC!91{W9a#zWu&j?#(>}Fo}X#OBIbDvTncI+$b!XX>(V<@vEJPn+sSI z_^?#19k}mtz7XMa@~T^LBOa3)w3J}9K2@;y`x$E~M3XpJO+=hF4RmyhSV$7h7*rDi^LFL_C#g037v(8vbS20Vo?BA;Bd zrq5JQrogL4Dw>17;c9G{cC!g^1oc_+`EjkC>`;Ue{+Zqm^g;9Jc|cyA zEM1$KS)4n%qz4A6Xd;ZPQ(QwgwI=nv;35`P6VCYUEk{5Z+bq`e%)pdn#h9%|S#J zSfgkB*Q(d5-*>&7#9yxXV1A1e*P;?^oJB)}a3K?YY9RY$k*2>b-mz3uU~N@tf4-`c zSV><@u$1b{w$3Jx1DYEY%5m>yetmjbZJEb*xSm05{!A)}%~Bwx8_3xm{Wh9^xL-T< z^25Cj9Y$IkHhiT64ST7HKRDBpxFf$l1PL+J zlQ$?&fU)g+)rtaxyi{~wPxKHQX}+O*N1iBAX&MDS`!}L&#nCFG6*_G%xLD>z(6wEk z`rB17Zynb)H=5gp3?bBSjcLP6lo`KZ-%7YU(SFinAuDAu7`OAu+DlJ%y|bGVJOn03 z9rO`35WKyYYJF?4a9#2#zgsb3AVRv4es5Z$ZKc4n_&I51D{%$~_9O|jo_HS6ySB9Q zD)Q5r8W_Y-F@#cuS!N#>Pi?JvY7u+Lta4o^00SfVxsJk5Qezql;WfcD^N$O`0@4Taf@5I}#>s@cvE)f?xjF@Y>r+=h-K2)i3` z?b1>In*!Hvg2ggb|7g zR10I&IeR0{>oDRM5p0FwQ!u^G>OWLVNbVN^& z{Z&#v$h(sEK*%K+Zeo#pxq)r#R{Zr{RY=|TW$aDv*d@CIQh}^f>A;+RVgS-l^9kC;UP_!}B@^i)% z@Xu>EiR*-MygZRwDIf-R@3&N$w4-UV#QPDu!nnsGt*Q$XJR+LYWb^^@F4ID;Tg1rQ zhYA>#B+N!O@$DyMw*cVt&Qd=RHm^a%rOskVU*~=CH$>CVB6yIwub)BJ?KT7IV@#q? zzfjHY6$zljspPx9`%wup}X?6Zw(IfFEBsnaOx=OTk`D)8_$eK0aLS0JTj zWv=uA%rBo4^`aSBO9S1tu`;1!1m5U-ki6YlHdt}X!a!ue;4c7yd!YwoZRLG$7W*aZE zQgMUS@vh9U&HD&N)@5rU%pSPQe!RMs+JTyLm(FxhNBB{(lN|#f+lLc~0Yo0;eWFLr z(<5Z+B-S0M8F5Vp4t#$Tc`Yb05QJ=ABF$s_QfDL`!HAB+yXGQ^i`vcat(P(Wl45cc zy*J4Wk;DMtftR#K$ z)s(vSsnf)$u5byW7VWhj68)fO#@8w6bB7tcF^ zgt7IrG3*n)_zOqjfJcreEIoEcggd?WHK67EO!+nWP~E283$X4Li7X`)`|WPH)xS4f zXWGt6;{xzxdljUs_L-V*`0XAw2^t#A%1w>Ws5Kx4OI~~I(@$q4tzRCdP&fs>Swdd+ zp~fA!t_wiybp`2Dh)PZCy4?D51@|b&GMI!O&}g}IcSdMg7PQ9<=P}^qLz>L`vk8WD z9>2JaPjDBl+=EeZTfoT$153rp5WrJE8`3&e?eG%6x21-cj>YdQ*=`f zKlbBJ*yG}+>GYnw9ZZUCqQPxwK37!X#KNgJ>r1mmO()|;!kQ;**1ibmcMCDLEx*Lh zT3&rCJ(TurcvCgn@^Aq3wE32J)K>PC)d?AZWkxKaesjE0f??Nz`Y6+DvK+%{?mBfeFb?#v*DEK$9#Pu<v~yyX#oYrg+dIFa8b2DKtM>_3{ z_S@*umcox=6Xy@dy$lUUG2+;-AGP9DbW4hQDKhqn$1^^KzZDS`dh##O9qEzg!0}gj z3L}D5mIbfPbfYxjBf~?Te-^4=b8Cf6v_uM%f@s5uU%B939G%#INm7d`n_gPGZt;dp zP$&}^u&$wATfC_<5T^Z^GczJvbvyDY`Ng4Hs2iq#@DoS=9#AkrFWu9)7&k@}nP)4vU+YzN1OTEI|V%SsNY=XrP9y$yN!DNmdK zl2huZJOuDBi_#}j*Vc*Zjj-o#Jo^tGN&Hm__En0{^eJiwOOTwA*eA%}W6nGqgXPV2 z$$0)GPy3c0fw{W~9$c7R>$}uJ{b4)p8@e3F55<$6U(!KX4o0!fpaC^teO$2a?dWj% zUIVev3tdIM%#XV8)a5cTQ53qOP-lFnTx~GPf;sAw)dDfZ+|+Rc37X7SmEivIa=SvA zyxHw7(UEPP?|r?H)L46Hd1G*Qgk<|p42*l9n|;8C8t8WpS-BRCrnt0K`0xU?9H{n{ z_o-$p>CMAFYf1aa!<+r;poA15PaF(piC+GW?XpVHYVM=c#z@n?Q|>T#YxQ|M_8EfJ zh_ki*IeW$q{CQn0{tQVSO@7GDzN$&Ieg3`Z#6>1Xy7JOLOE5-l)v3*Mg825tO1|J5Ul9LCAc5EaE4U6uV*X&I=ShUv zQcCkdjLYc?Dc0z@!VBYsJifq@FL)&7vfok?_HgTS!Iyhf#e$}N^<=?Ub)@e1iLB9& zGSc$$-yd+d-c=?v`>RJPk{&mYuDYF%8OdIoO^uU|;j{mNx&NZWq^I2#u*~PZtK}v( zA>Y+b_m@)c=YlSZI;->aJ!7Hf)ktnM(|F6Jq79EYb!az-4tw!V)tWP;Da9{%LbOj*ag_${t`U|JmOl5gL9e-j$@QB_zl zkP8dUVV+rKcoRVzG-|#3yf%|0j`K#I# zn@okzuRI9j1#9FOW)*uQgdZfoA$nBV9=6d_Q(GR}AvHnDc+ z%7^?U{(&C~0NF|>Co8IKKq5b!*$-l%V4w)Z737tFxC#IO zA_xFLIAVd<_$RKcDg*#PG5qic005{$6GVA|yfQr#0052hV<-Cq0~L#sH)C5vhab-5 zN3RqB0Cplz63aF>bpGLB5q@+a{|^Y}Hl9E0!D0XaOpyS9_S9{uDVT++;g21E;g1g6 ze?VlaMX>lGf4GewncxQ`V0WOb7Pc-PKitR9{1QKVVL8}f3bwH~{?QW>`Qea$fHOsT zNM~#4@w2Xo#{bz80IS3M*%{iJ{%}9`fUTcB))7wdNjTU$y8r;9KYG9!Kl90w&sRZs ztdaHtfdeZ7zKxP)`E5g!_;8e^(X$_INC zqM`-|R3^sKw8M&$HP*u_vsbvo3KBWm!^DWI?Dnqm?r5m1nYQ@$w1=uE@Sg~fXaN9^ zwaOHb8skZ{;N{bm(Z-=C`}HQ<^(I}PCfoaFR<+LB%gpqN%jd=_b<^{+8BKM8LioSf0YQV!2srzSgbFG{#?GQuUI4NoozB&mn zPh0G|xH!dh%czaJV(1F-E9{Xy-zS1RPxu#UTgIEN0k;7>+b=%I3>0O-JLz7n?kV}_ z@(;9bDQ*=0d4CmVKm5pGzi4_@v!*{qOWF|V~nNAu!i5t`VZJ)yYi;x0#Kh?-LpB5 zWqh+DvU4tzamxO|$wssV6;4)QoR1Keu!|CJ1*{=nJR_Fqaf?+1Wu1+&Mr-o#)Kws@ ziBZ{Y^P>cX$^yC2uJH+O@N&y1T5rn%0?UDgb^yvvP@y)>X6g!VmlC2j=mXd0tD^5X zJhMkc19r+1qOcjUNAsNrs<1O;ggFs}B@%?%=KZZr)d`A+xOZa2CaH}rt1GX>?JMc5 zak+@iT+}D~!6pc7b@%5rE@;N>&Ecy-)oq1v>}K9BakXm1f2 z@YMAVa7%ptVf)mBvJZR3%xBbh&g3oNdn^5#lbYg zeJRG#Tu6nq^GGR{h~o`^Ncb`mQZQ7>r(6yy|osYXf4yx7JUg! zU(srPs82lO*eAozo8Pjv9>`}5FjMPoWKNWKXs$D8uZ<2nsDV{7R|7es;|6i-n4xH{ zf(9>XuHxiCEF-xs9ZN1Mghb?@)+mE7aI+}I2ewG8?2+o(!`Hb7Xzk47gK7V?=vZ+2 zipu@E&j0f!X+`?}y}SKz{ni}^Lj5V0NwsbKY@QxlLiAYI z#nLlf{$=H{cQNg*;2beag=*;*2yAfo!s+bybc z`02;^bbc#)v8LKcsMhIF^t^{#(TlcHUrr(WL%7o2(2TTdUvao zw|m3%`M367nR=GeFKSB4%0EU{ikVDj)d2$x8pMnLW^;v&8>_ioK{1N2$gwSwwCbFzqp{m|t_oV)k#qo~HkKoFWX3CFr%8xe5WhJuH%*Dr&sDe^4X>$ZM&f$Bs^4$O@E1)Sk z@-nu#W@f2X%wSdok&8khHzmdP=zrNNGW!As$Eb^-2+hjUE2X53nNLb%Q*@QSf*H&bpa%T&1#Ik{;K;D}EzKL-miYOd1XYuEM8~ekDYhD7D5M!2@^VzR z_RDe)#^H86ikE+$K`z-p#ipL7S1!b+U`*t=An{<}148@ycXn?eJy0;+S$M$lpko7v z`;m9TZ%90Tak@fX7Tqv;aCQLeK~?`z?>}F029fs(dTO@lz20e`2yN|V>pYX*SR;_l z$3HRb);*@Y_%4Ku>cfcY2bJkVkulD`l}--kd;?nnU>hRagwWO`KYsZ&g3sdvhce-T zhxQ{nkl?@$_taLzmTU%7z&|j%An;(|0mBD}_V({0-cWou#e@v^81FjXcz6KwApQlF ze~RSHUUnsv@apY>p;>2s}5PNIo9&PWm}%#+F3poGirn4XYbeEsk~wH z;O^+3Ud+Csdvl-P0=W);M*J3@;Dy2OU9SF&eZ+pz=9ldbtj=%0zUv_J2Du!ksAgb8 z#0X}@2!%=uqHLjdZ(#q`2ET!Rb!=|!|6oftU-yCcznll^T3@8DF}|S+&a>+i&+f6IO*Xyql2)i8CpPZm9H<&z zR*$vhXpjnAMFfHAjpnze$+tyVtN)^~nZ|yBn{l!uHn-)%ilvG(w~@P2qA*W{;gDD>s0rh3+41??s=}eX`thT$; z_&Pdu6#0L^xn`O7aF{3yv%I+Gi1%!mC~~8?xMq0wXy!&slC;+5Y4?N* zQIcRQz364g+{7TO%|X~tpX7^9bn&APkpj&`+Lkp)u#4Il1ye$%I-WL%>EomWhBL4r zNk$N&6T(0skS?K{1zw|G_A{zZ4%LF5PI&THc_!;UOw8dBEc(mer`Z$!f?zT*KZG@*CdATbt{C`8*5T1 zlIByyzU!~y~>J%sPe$!B&kAD zrG=@26a_MMBc!n%ccaz6^CKv$f|Qok}OKp!m=byTK%pYBMbfBNYF(DLsim{Y<*PI!!%V@ zkpoLsQ5BbMTv(DJj%HQV)y{5M7DUJ0Tv`?Qd|>Zk*n~}0R?qQq*?c5@CR z`uSErl@HMOHvryat-%Y-V0~$+d#Y1C#U;BKNcf*4Of53Rgquz1{z~{fizMY?@^Z}W z?hPX|a}1x~e&u?goA*SEeQY{Emc8Pa_;THOPupjyfu#5yuZKSbO}Nwx#Fns}q#7j= ztfUghQ4HDHzFzaNUXBdO-lz&wdf0m>UgW0TJva|IC7SDsE!rTFgkEH~&>fQpwDFtj zh5q^)w@!T36{P)6@PxqDwWZsgSmb0=?UY%$@d4aW3fp(Wv)vtgql-6io5K?P2P#H~sxNI(wQA*onyRjr$=EUF zR!261ubXGQqdxm{5|TpF*i4!P=5euiN`IK=I1#Nj?9ad8_7g#2*FXk6KWzjFP@lcB9sb zTvQ-3ZAgME-U>pIgG&mZ7sOTq64-|T{5mv|8!sgknRX{tBrJ*85=c^?di9BY+`a9u z$W;6tvze`}F|rA3V(9&)H-r}y3CZCOd&xC4O8c=B6F|#$V(`XnAEq)~lqku9LCnk6w<{?%LhXPt{G)1vh>+yXr!sScE?nq>7 zXy@l(_qCJP+8VeqIZsa3a1gJ!!s11d&cOj(7wo`Q?|vQib)WA0ZWboi5HBp*%TE3x zm;ZEp5F|pLA>6Ah-;*Onn!Oj`5mtea%2JsuLKZYoiezPPGXn``T{+i4sU>aZo+=W` zKY9)|oJ+6LubXM|0bEkpTGU<*enziNaZVyF@=^``*(_+4TxhXs{ulz07&5N(SX>`- z&yUw}Q5WccVOVkpU8BG;2osB=y&zAE2R(UcK)^nnV#loB0jX}2Vq}4+Q;q{WWDdMc z@8}resxDq{h@jE-Fc;{5Kr`qWam(*#LFgY*i_Os;fLSqGiX;!m9JS7IHqsqb@pwFt z{N>D+nn;46^rG;qy48A&+jNmLf@mr{_Pp8@hRvbs8y-(Td^kI+-_~bRPN340`bwi$ z@Z!b`nX-#MTQgK{XS@8Qntq-X7f4pSkCgiragJ}U?js*o zPYX~kF?doWh!88zZH7j3d&O@{$Lqa?S|l%=_O%5Hn>SGPN{d<{VnOs*$iJ*Ejs@V& z4EHc@j7|~smp^g4B0v30b%D>+OZTm2#F{8&TqY*6I@0{M-Qxc9Wy3vaGE;VYHHf~# z<52@OTcBJ}U$1Y_bhq7X-o4JFYko)lv4f;j{-w(JmC^(B&;r%13PW+Fkp``=$5%X& zVrgqK^Ldxh)kY@z5<6qxr>e%;9Ox@1f)(a6GP%GLXBk@M{E$HbZ?i-p5;-g6Qv^$e zK{%6(`FCaAoTcFfrcmx*3!r3PXc#$!d91f#C_)DzHIq;Kpi}kn2rxR5msq~Rai8-z zdtcUVCyW%1tk`lL1*XgBkm^Z$+brV;Qd&vN(issVcM;`ik}?k|zAtsnQuTxB z0Eag9`03mMbD8Eu%wH>B7L?0nouoY3A~ELf z%l_FiCGv7|dU2yV46P0aBYhvc{r6UHA5b+rPkjYnFnI6q^uO8s4@Nq^4*CoaXgI<& z?$a6HRsZLmwoCu>PQz)P_CMY!O%V29lI|CBc!Is8u98v)!xaTu2_t)fN{g8Pxl)eQxyUw)mLuRJUR zB*I=6%oKjezDLnFC_#tuE@Z24c0P+5$`MAcjYR!|b`oYF2~Bc7O+RF%zE_>D*^R1H zrZ%j#-~cHzuc&2Tje+RCH5C@~i`c5U3;7!jt!$@(?IF75dxd^BT>P47eB)fJ3;FW3 z(S>=|cN8OqQ&sn0<+-Lbj1BzQYkV1+Cd9GbL!H!!P4D6o_v>`6M5DQ&xT&gxUO`A0 zJSjKVJyR?opVP};BYsfm_b1c`{KMxw@Z<2abHP$Ukq%7{RnyQA)W)S_`K*oCY^6WH zFD@=dnlawdJZ}!BaLLoYV5dfHb-tThXBlOR{f!b@-@xNXKab9gJiSp>)*UyKW%#^_ z>YR6~m<+ZPSL;j<+=lGPE6LqqE+A{&QwiQTWx9RGPhQZ9ztagz;t$z-ki7Cm&zLyE zYm~>b7!Z>$uXN(`c6Mq565G>y&6mRijQ5)_b2fc;dX82<4`j|x(!NS~)g9e}?un!H z8zHic#g$_xuD1EhzqdRjn5dKe0?<0eLIq_>)t0Kzg2;tqP+4hs#Q7l~fbtHV*Qd9c z=n~=ooGon+cQNsBbAOR}QYP-PhLDekgQGy zWwHnVfIMqlIWgt2y=y}rQgYoH(Ef6}x$Xvr7NLFAmx|x{fneuFI7?Lnl^?WYhYNbXt;Y3ZR z65{^wY_V(#Ct2hK(Y!maB*0t63t8a>K~V2t-@^@BmD>bUP8k&nU$jp=>`1H$Wqrvz z-d1lu<*MIUuyJHWpBOrb<}=c41W}+;ONR4f1eud`&sqc_UYAxpZVn&ujyT_q>JFr5 z2T1c)lj4)G2R{6)eCCF3Lh+Y#lm^PDH~>L~A@+;9==Wpq>^jeLjCaTaL-hWfw0e zZLrXMbF74mFgP;!aX{be0X4@c%sIA$XLjQx;JMw)xiOIb1>W&nnsfR222PU{ng9V) zKJ`m9OG+fd(Dj*L3n03oOI3u379Y203tT>`3z-^PeDp6+H-k;!EXt1P>ARbBBk#8N%bqa3 zal!sKGz=OAg2;#&n!yiIjV3n zE`G*t^N(ALA}e-ifh+6}+GduFth4O?eCa{Oub_60nzegqD@P6}3yNTeFa;B&u zxf4b(+LWxL_h5tE(s=?H;~dF+x7mZebPx zFFp5Dy5yAQ=g|FRm0N9B_ec%vf*h@fNdN$m5P2#w+bsIT{TAly1|ADcvG# zd_CtgxlK1$ytwcD`dM*ag2gFL*V)}#rnHpZ4Se(=F$jao5^p^W1B*3F_D7*m|L(mN zkH?N1j4=P4k_O12g|s(colVIdLlPQ(#%z6kZM}W<_I^E04#MqQte7M6cTrual|oZh z?rK$pLQe_j6*C2jI>QGVQ-O{{m_4?0gw9?}xTyKp1Z~7(zb{7q{6so@;$0M)(OjK* zXX+SAtk-S1m6N+Y-5uyaIY68bOqb>doUpRu?Tasv&)kf z^7fo-hOgh24bXguh?jkMBZ4Za5EEy2^GclfpT7;r657<4soKXw@XMPS%u4yyBqj_-O|m7)BGp6%dj{7Et%qZJZd?$RjqSgGJGWqrg=iliX%nT( z46riqN0=zk_395?2qK&FQ%RoBK=~9$__h6%+aBv})6zRg&!MT`QJ-YfY9=~G zOd;hHyFp8fi5%jTtxO$5Db@Kc@RPscv0?S0esx<{@~6-bP&y(ebE>Y2OJu7V+j3}O zgfm%)8zoYC18~$n`Jij?k=8H;K{RPse{R2j!$`gO=+UNr=?XBd!%PL84;mMX(=&+0?%QH z0nc8WnWt>%?_%Y2@7!qTf{2tF?Y2{rSW_=FyLadYnmyngX(CEacKO{zXLp``2BregUl=1 zY_C>H>Q|&J7wdzDFbA2`poqILM?9qQE5==9mpPzIUape(`V7&?#dg0wJ~xr7^_@Fu ztPx^Z_?61hHZgA_AR1AsR4r=QnFm(Ie;t73`Czdo;5$t;U9uj-JRw; zfG_`Y{svM1$$H`U3(bhcPH`EwufN##TmJku8LV|RGrJivK#bDeR?JCIe6I+65-no54_3{eV#(I%nuv!S(=~nN#fZ5gvb~fn z*&=Cu4Wf8_#5(6B@YsstdPfFqh3((>KhO?N6rvexlZw1U^Ib9>e#@P6&X7dw;>06| zyI$MRjo^18r$eJfSz_ zAFpuWQ`W-3%Qo?PBVp%d*xU@L_Aabk7g;PS8|rBmsf3#cq1wthiMYdVg-sc=Om)(#Z*@0PKn!2ey*gh)N zqP-x|Z^4Js3t9;uYGrQKCw8fCF$}|$Y9OCUCD%_?p)M;yN-ac7ds@*@VbBc*LB%Dw zdh76I?Bj{;{W|13_*_qx28cj*#Yy8Lc#d`@#6xPa)(adwW6&>~6<>5h2k4k)e@?aw zf$Lv#2Z9F=O3qteMIuxWp<^ylA;w6I?}N{|CiF&d=f(&m7R&n1aP1uP-LdF9`#Rq= z*9xW{%y~Y@>~fFggOpB#i;|Tm6h|U3c3>3hJw1CAZPW1>@Bo2KyM5YGBKX47d(fpmhe6M7ha2tPLVcC zz?j1jI_2E>sZ2DhdE}5NuA%?sE~J|LH*6!nOwTboyvDW~T(Ei{P3#xQj@IOWC;9C( zsj*j)`d9)5b?*#AnJ?DejtM){H!AQD?^=v1vsQ=mM?SM2v^q&+)m*%Ms@!e zv6aWxV}a*P9&%Y{YQI!<)58?*_SC7t*WJ}y&e5JOATkTFyDG})q4GX6V6*E99bNqK z8VD_^@?&OOQ@*A^yjZI*Q8%^gDB(AIZ2f+m{v& zF395Vj==@uRCW+TW+gp}E5EH*FFdXIHm2EaJ||s;OtlycUtd)kE@~=YzaCZeO_D`PNsZ?XqVDIbE;QuFq8c zF8*#?ZN6q#>lpnO>|!^4hh4hQznkbG$3q5oHhz9G-_5n0P%!!u@?p=8MIp)dk2_`z z=3V*#bP`kb!d|C|n`du+m5$fXk2~v${80Xhtcva<-CFenVM9 z8PQh75S-(;$E?Q#t!KP6T)e-CuIr<=>4P`Dqvy7STVtM?MC5LsRbHZm+0!N59M97i z*V&O*9d6U&nepyO+>`AJv9tBQuAXwXSIWB#D7`8Z_7+W4j+ALFIB?_}s_QN6?4Eic z$9Q%R{-JEP7AGsp^F6;uh6rBWh>Li~IC1vH`bt1Dv3t{{!6C$pL)W}-w4WTj)XhCO zS_Xv#+!#KVrlAfi_a+Ok5v7a>S(0nn2j5LvY<er?DoNHu!BaYmIdE*K24qBNlJAEDr<$5lVWwB*iLLa|cs(t{P&lFmCWcz~ zAjPx|vB|@7&9*(=^cZZQJ$Mw1{*{aFch%{jyT<^U>!4&OQuR~jBzCP#Kn2r!M-y#5 zbTlgC$=!9Q**g;tTj=X@3Y#C|njbnSXHL_Hiy-W<3IVQs&>e*Xh3`<#8-&Lh# zhChI{hU7@3YjH~$ge6UVuW#koP0>?vW$6Q)d1fW2VZ85D4BK&&hSSvQUfsJ1=VBp0 z=gwm>_Qm64I^Flqkk>JCBewXPd+T|2*Q@4r{b{KL!3sKzEZKX)WDr}M_gtw#ZVCBJ z;>1$}yV6{i=V$TLQVgGa==iyFD-W;U=Y+z_JSK%lLVDE&z{?Hh@m*-J9(b6CT3e~( z1~R)Gh4dUi?_*dg&Ym&l*XUqHhnHS4>oMsO)xz{9Y|VR?jdO?bwUonmt}5Pl!z7g< zeBk>sNN~-c&C}ZAu^Sv&P+wm#ge?s0>8{(tcW0MM!a=#EsQJiuC`R<;_sdAi9Ll|0 zSoP7{Trjnd;s!4Ih?KzwVp|X0S$Wji@amB%%CV|DqCT6uf)~O(G&BO(S>8sL_$Wqa zU1w+`l5U;BVbW@1^D91PE>kX_8b=?(8F!K4ZcpJEx-t6w{$)Qs#0kMHTS{cunw@1K z_CeFubf~=>%M_Ps=JiY5S|D6xqads+8ZO@{xc)|f zZE2^tw#lNdS(!Johsky|2|FcBMZ~lF`5WB7d)U^yq&SA<2HM?*JB07=6wH+3oC;(& z=SqRa{OCdh+4!0Zm0E+)zQY=;4h4)WnW4k3fn{^?-TY5%EQX>DEuXb+L;@yPo=KI*jd^m%LeRc)? zqsu2xGM_C7gT{H(@NcaCcwom0Qg6GpMBZ-QO5jF?i&KgwPCekp{qvGEJz)%iKk{36sqL&A%7VV9%Bp1? z>N0I)Gq5qWwmYjN*QF&g?!a`c^jw6X5#7u;TWl*^-!d_ZL{_P3@}P}@S9lI?0Z7}+ z(%0dyTq7J{;Tha)A3R(afePUNYCtCR=?lN&Tdin#!<_JEli-x=87kuS=a0}ssoa| zK1x!=+s>+us2ZqI)JR-PLu?^$u#KYttP_9MJCq&ULy1T{4LBA??xB?!M!WqLxitY{ zShRUs_RFhnI_CLXT4v_?Z(8AY?}bfcv!7viiGAA1LBHj4-F2OZw@GGgx0&j|c>UBRV;U;3Vry$&fVeYSN1I<2L3ICp>m$0J#*x}6UGY1S# zdjP@(z7S~9ZzgoVzMXtEy1FE~n%sjE=*glL2&VL8*foV#YlJpZ)Cf~bC|6STRbv^+ zU|`8)MN(Wyvc^#3+a(V=boZex-3#q>^Q?UZs>C$XpnXVexzGgP~OTehY@}pc6*Ma0?|#mv0yZsPXx^RDYnb>iSJGb9S>n?!aM@!<(Qpm%EPto|%>OE3^gO%4P0?ofQFAxmsM6y`IzdA7RKvXw%` zMx`$yFpY-)%!6Hhl*?Q4SKjMSRbek-)M!}*4W+m+B&ha+NX zlack2>@`wq$69xqWZjI>MvT%S$HUYQ5Br)p~JkNkaSOUx6 z9wY~PzZ*bEf;u_qq&Lk|B6`D`f@a&ad1SNMN9Mk?1QLqqNe&}7~y@Ljmk$`&c)h+k}|8aQa zx{*&_ivQQy&(fR_8dy&`NKciaUDQwqAvKmB+$03k`MV2*PxN_5 zp4g=L+b{g#ed3`ZN!%ZF4xfGQ_UDwT&EySkV5a_p2J?=!+9~E*z9=N5~0S327G3Z_(%PxN(;!;4bM?gPYup}#MaMKmD8|AzP%<6 zasEAXRdR7lTYtVGFVFO73Q~@-E5lnVz=s=6c6^bRqFL+bnz-^~pvj19DPni|rle;ZL9F}+HW}KW_r(>XP*(oFkRT2b|ZiDsWiFtS`zn+!e+yN_thIObXlB1A=ZWJ>`&0a!K21F7jTWN5{ z#@%BOV$EXyE^K+`i7ymJ8X}SmExZ>&>dNR2MBs@?CW|))W#$34l#Me-LB50g(oYCR z#k3*mV@0dvzRg{|Aq zn4@TLD4HIze&P(>iztzG+fyFBzoE@bX>Z_jF`$3 z5wkDA7XfL9`P$HNYr(ocZ9+tF&LVOJHkHRRZPe{o&V`lezXHrIBw>#>WUqI1sEnh zuQ><1?9H8i0r47Em@w;KQr`mP3;9+xZ3r4_S6+ivfJ2I7faPV+1)q=}&_K~*p6Z-p z9bn~(hJr9iP#hw?HUktQ?*9sH7UTBDb3Aff0L+S>=boXo7MeldUfq{ zTD7mHnpD1#{yQ*~Sw>d1##G8Zw z?S)luJz2y!Cn%_6)EZ{)ZYVxt2gL9V&RDQf-!Mhbv_qt>|O3^`%~ zDU`!v9};OW&jF@PF5HWWoK%%A6**AvV?0P2mTMRuB9dNGVtHQzbKh<9?|Y-G!yDD| zM%~QZ)Wfcr@@p}F0eexbHzFZ%J{Sk!_I-TAL6(v1l?~s+BkdY7mf$GmP2-aC9jb31 zYtV01Ww?{4z_wE$IT(&_g?>w$!%J``>jN9=jAkw30|i{UD2km9m7R(LC1aC>Gd*tH z+$N1^w4j>8J)`=d#w#`vj;}hkgNsz(5x{Bug}6t(52N&T=zv~*U*yH)TFcf9Y-Na1 zeZf78Hsw(L19$?5Xx+Hcythmy6-r8Ugf}j~a%|j=#0KijJI{MWN-TBh`*|RD;(4Q` zwa-4r8Wu3kWlnqqpKkLRrYNfdl#sJx8QC;BB9i3*wtf7B(H1fiJNrkVnfzrIk8dqA z1kOE2@>Fxq%Ta~7EQ!$ponmbAuDj2qP`Jetl9a~fl(bPWXcU)$hC%gx0Mb>IJYk}A zMlOm3ap@$u@;2$^B?Y8vo=hxRGI8aQ_jTYxD3Qt}Sfzw0ms;5<6f!y?ws-w6u`GYgau1D83dK4&f^bwZYf21o$4H}7Zt*cLZtjr^y49nq4W|{Qi z_hZ@gWn1+$58A-f;mT@uOSWwgs`%JkTUV|ArBKT6 ziv1P8vtnKII>)Ku^xeO;-uISmv{Eejb{H7hrlF|8|5U!2jklSE^iApuaE&{&D1zke z`E7?Q5aMenPwh7S&ZaOa%2w23Y;jhnSc)V=NltAsS53N{YmwI29^T&Xi!u&MtrJ9( zimdRJZ~UgHy<3lXyt;U___n#$KxaSJ!f@Vu0<0YLW*5F6S5v_}s7+S=! zufnLn&1>lijy#f^mxms&GO+Eg2kQ~{)x%ZJ~?Qo!f;1Gwa!LnimdUj!S%vl~VM<6U?a#!4E zAad>bg1Bbn1?=U)p7l72T8ETyM z+OcO3icO}g7pf$;sDSNhu&x#>0^q2SIAujrsSnOHGjrgnOeipu=W?p8 zl4NU*8ob4{9@$5V1Q+6y9Gsa?;{#!=nP{r*6jol^;WjWr!>f*$vRRB2Vn=a=x;vZW0`s^4eiTP;}&*o*TD_yKO(bQ29(ujH>AArpeqrL|JsDj zM|ZcIIk2!2U`&e2(8Af-n&_O{Sc()ELqzpm_Lw9@;4qiWQ$k;8w3>9IHpF&+3)v4h zv1NCmGJmL*HSaP#JaFbpdk5CUU==momBC>YW%rQZ@So{HYqiYio6yYcv8iU+Gpl4# z0-+wy9!BKB{HvgZpE~D6rwAX~QvrgdyMvMWR}u-5_$d@u{2T9Ndjx-USb_PMP$l&& z)+`z$>ZG>)zf>Bn*UG~+zNP3hrxaSt9L%#51brgLgOQg`>0U^Kp}% z&}DdXq<%9pppmCX)7wY{Nk|1?Br0q)4d^c||Dh4pa1y|?6|=k%9!+H)9^p5E_l%lL z#!eGjYpbfC-4-vJRHJceZQ%1l3^4*a;QqnLh%r+dK%-JW;f(1s*Tm{|skKyN%%NsO z(qL*@!BJtLYHRU#>^T^+Xyr&L$bn(=FLqsht@M&@tG)g=SbcCO-x$VWQ1JB0rtjd3 zCOux}EF5NFNp`mcQWQxB$J1r0H#8OBk%OexR$J6C;-$JgM+Jd$DPW*vv^YTeyY!F3sYfAaH?0=ktvk88oV`q&5Y2V z+3k$jTFk5in1*G<7yzF1)kfWNe;TPO z3fkxASjB|&vkA1=jV+)TvW^nvgl!d?=TUYcgH7LF4`LAXinmtiU7mR3Sbj1T=+$H= ze|mfR2b^_rxZD1os1vOrIQ#<~d=nRg@1C9TPe{a*O}Y=ZJ42R0H|g_^w|k?@7kU%l z#>0bBb`nSJq~xf^C9U>k=If#BtiioQmKwwB6S+e#ZQU;f7Xv$0Cno+jQIf}_yYdi- zd{grUbeexsU0Hu8;32d+F9#L!N=-EzzVFw~v^ecga4|J!XAf;{?BIvn)r+|@8G30m zf1QS3G}V$#c`nba+#Qx@@$AS~UX7yKq;V8SwuYnVZKF=0fux6Z(`G-q5{ev_D>0^N zPtMdQLe_HmF-oA(Hp87y>eVgz)YpqB#S%^oX5!^!dVdTg{!LrIf01mrU*+*WzuIh` znA&QCwpnObtJs_5L5*=EA>K_I%kbQG^1Z74B+Qjs}yDnOLHcCTQ)+I8D*- z5fuK~-F!tha|sM*=gB$RUZAm|NCn-Tl{wnGOt~=?P%IX)UNc!d&nAN#W!=-y8(^H) z{d0l3SDsIILyzk6FW@p*p|tkV|&-t$jIBx^r5To?iU zU*h(I7*?CVxhV=#vCGyCShkARH5sy@sr~07?ddHBTVfknGJj38b}fsQvt^CJ86AbY z!I(ReH-@n}d@AldryS8EZ^p*6##7Iy)E4V|%RdnJn01ivAZne6UX~pOWCW+1fhz55 z<~O*KM`aG3=4dN4l_{cP(Qm53ESM70QJ_X||HKNUv2$QR|Fd3Xz=cbK{MoAWEx^W&fc$*s0Gll& zupK+nWtH54Eecv}5-M7Y?|@~#xaR+u_(@AU6@um;SjKK8RXB6usuVhp=UUpPtDM2b zYm&2RcMLm;v#0fUJv=+q25Y%xIB-Cg@!=JB1|7xtftK^>A6EdKxI_irao;@SkpvA7 zHS;%`4EubhYf;V!x)B@(eaDLv=NL*;M+IAO;ID-Qg1{EZB_Ri>a4%vLdbxOb>GGDO zpn-sdbyK_`J9Y{}?OLfVqN6D$X!!&)NE2#zrxzF<;Y7=cL)9lfiDd#S$O6kXF~%U*`M>}LPHCUIvvDQPC}Qh^Vs5gQms@J+}icl^$@@1Qfae-pen zv3$YcJixwuIL3AkTDxoW+$+O+_6c&?$DXFbHrcc7R(N7`YQuV1)(L6*E9n%!jBVKs zxys9I*~#sSrx@mOL#^)tl;9Pyo?lomZQ_$aK#%z;UG@fz;yA0bu&uPMjBnH!UJCZ9 zT!xioNL*A1z(yuNh&z(G`+osC2gUe0rxSbuO)ej1^M|V7^`-Z zmnmqcC}Rcr)T$8mjFh(8mV_73V8UNz^it%--cq%Zg^ce%`%@cQ~Ht7JSYpL0H<5+&-bY zy+Uy-#h;d$Z-Y1Wot^J*T1ZMs&3ZCfMp9UJqTY?N)`GB9;8@}k$Ea$b6T0aSgf7;R z6gMp(h0joT67p&k=RC$KT#RM}VjiP`{G@j!tQS9Vj4(|IyWX(|T>q3^;R{bic5g;m zugy0;l^^{TVs?QPH;p2VsgHF;7LeLQR1K=|O^}Bo-ch$Qk<{jqJ@|vNwvv$d;1g@1 zR>Lek5r&Zop&2GGz_kmI7$iNVxV}%Q8PtQ!BT9SV3~?()NZ&Dg3G6*WR*SE%0|j}# zy?EL!!2pcg>u+pt+BEkHu~=Eafb!o=l-x+}B~Ma?sB+Y0`hR*LeT!k3O3X~=B5Pw^tiZABpNTKTH|NLlm%~Ch63!W(FUUd`p`6fFm@C{9Rk48BQ0yl56DNx+#698>@vQh= z(xqHdWofFkP&z8TlsQ?KlfRBp7^SsxQ%$ME)kW%g^@*0$>S`^t3EEEWsP;e)>G|~@ z`h)*^MvzD%vOG#f+eeQ^KN^gY%_wcOH@X`Wj5)?8 zQ4|FScUq)Mhr2_AH@HKGyF+XlkriYaSzV@x%eOm6zCECoM;fSWYy;w?vs_0nsVvvi zO)|?3jOY7}MV%)4+0AmZ{%n@JC3xoF{hMVb-2b@amlyTFJkFo|?)=hyGCyFOUDml# zzw3q>Q@@z`9L{;r_a2i^0!%T^ER!r2(F&&=v(A-N<2mLJQqaV_q!lP?ZRmUxHOo4t z(@ZkOf^@3$;4HoSQ2yf8Jm3J3|@H z2!_#vY;wruDI*!p7#T8(Jn|`!5rq^nmSV;+fr*S~1CuyF37;vYjGoM;7rmLxRHiY7 zKJ=v@{rSjA25_DWGM0%o28JxjXvCL$Z;;`WhUpbB+ z{`j(-%?zP~;xQu-bLKFM`OISh)0Ln^2Ju!&N>++em8NuMC{tN1SGn&(FO zWx2WLbuo=C6^*6EIYy0@|B4`korYl`h+a?<_sEA-#-%D88{hyxVTHy?79}=v>;QZ{ z?0BV~=51y&BRQnz)xPa#8oS+K2TNC+fz4tfiap$guyq%XdjG)2dEJ%k*g zw83BLoBh>o&NDa~r^EqIC{XC@eOMZ91aK$A4y{0iUJ#m*<8I{8UJ(5yhy@Tfd|o1N z0C)pXHh|awVFSb)0NDUy1BeY!ojqyYK8hOA1FO-e`*NS3Z>OKn$$47@Pb!wadC4&# zZ|;ur|FK%g=j5u@U4rlN)wEBdE%cxtL{Dmr-S(ec-c@(W2_&8oJ*z}>59bfQMiWK?f^Lr2#@q0jQjftuBO2W`v=+0tIqmX(#2Od#RI%H+y}3HrGUlZjpM|DBH~ z-U^l`bei_p4>Fbq3irg5t4VYdFDF z)TtO!q?i`pJ~mdoFk?_=1vYeIFj1z=>~G8%8$OuR`u8MRwq*y%=_K7u%4uB=6iA^` zpfKoVz8vXx=`7&?%p?Cpe%|D<6mChBz>TpqIOtYYx<>TW```GVy3%_|Y9a-m^20lF zfDRmz7Y;!RO1Hi(Q*TkLtDbyprcA96OMRK9&Wi)*7Ayp@@e{tYo59Ps}%l^lGxFyMFL|==on*47;Wcb5BeKq_+RJ)vv0q zyw@||L@-;$1{r*!K8-bvS-7W>{TW0tWTawAM3lj2I@qo$2YlW(zrUe%Do_)o2_&Hk z3H6ziU%sd<7K``B2DjCyGlmWP%rs)5)w}d6{@0q$%@!}@inddsng~@Pkz`}UzLx(^ zT!kVXSqUh4k2cMf!&HikR_wP&8u>|xNXr&UnF@7p53wkgM5jY`{T_8byZo7UuN_^HYyx&P>*R^!}5n}nZ^e@h^0s{X3{b|y_29tZrR$%&Ii1w9LV zdP1n*|KGCpboJMk6c7w(qy^a;ko*INkm*GBl4sE~3kcP>Wv?lqv6mc$wM5))2~-jk z)s`vi-ExbzNm1?pscN+YLV?;GrM(!6%F^XjwZQxt3^4;R0HDmIM9Q}`=|GeAIne9J z0VqF^v|kS0g%C+c`a%lz6Rw!l7vg%`FnvU@E?c}{Fb+X5 z$FY(u(b9z2Lbg-34{DJ_NQkXRC6q!)jxKM;bC>0}=nHkE;4dvs93W-3)G(a`!gqo`lYQQMe zJoBIySOm4$3YZUk0CUq#sE>UD^_kD0e)1C(3Na-$A8g}?;R=NPBaRIqsQ`p-2=t=} zQAd3rsalqQ%^?aRu<52mhM^)&z39kXW*+Gk0S4QP{j#@>{5RjR#hY=_+_VmyCS(pfrwPWWpK+auVMo8H*1q%$j<4Qi#pkL z9ruO~yvd}MRg1#vPyo_S?K4tjL;Bbjq~TaehEG=YEEruy)|BX9UD)H&!B=m_xTEoX z+CISQk+9dr5+Fh^Q9y6yww5!M1vjt8Ds4gh>C@veuZM>y?x(?WW`wkz*GG&-YkPf% zK58SJ-Jka)2EU?hHF&a+eWIkS#J!GDJ$yZGzMF zqBqqOo|I)4o#7&q!Z2 zdl^+pkYyGSFRPX;3=&2+!VeQB?kQ>w3I(WFyd6V~OE1S_s`-d6_3b?Q!gHZRS?G_*FL-`Mim{d3-dbACAhS6}d<_&;LwZ`dCd1=P z_Ci)S+5^gAK%}st(jrfng*6-zRvuNLKrR9wYfvIAfsvceqSP^J9j9S1E)gj~W`ik; zUP{+;N@J=TGFt(|S^8~(vWQAqoFSQ6I>>1Q6fr4@vN=iDDTmUSs_4X^Ov=0RR8H1% zN+F0z%q|I`NY>M#a;UVC%7V>KvK%?m%R@;{fQyS%B*KyGlOZQ46sDt;I+;qRQtLDt zC!}SRRJKGi3wjCvItG2V-Yn~*GHx_qH#_Se~ZVzr*!Ufix17whldin63N9q5Oo$SA02prom0 zEYo0Sma?v0QOyi>_KbR#bCh<;IfA2II>Jx^Z`h_nk^bWX5bKh_07&0$dnblt%;#>w z;MQ8}%p>@C+=4N4Sl^$jA@09jdeSsHl^*oI*Has!XUoopsz-1 z)o6uI7)$n{us>nCYw##>yX2a zJK>aBm>bC6M26eFUJsy{k^*&V`9+`@(Fd;deG|DgTZfT>xfo+)vAU$0+O!R!{Xy%- zVz6twx5KgbrybFrbDcuo;H#I5Y`%9;@zEFFi+8j?`^|8X*!#04+xyMZ{t`$xj8RUz zkD5BWPUxwm*T;FvMTiB;O@LL^352nE;`L5kfeTFeTi!Bg@TGr01o3K4knG zvn1U!aYJ>-T73w%1QizfR4c7|tai6O_S$E^2ORLADF>la0RqKZdgzpoIO>?=rk!xo zLjcPqCs<`jTgC(s;cYt1+De$XjT?s^#17XO2kb?qVo;mFXGJY9so+dLlo!69@9Y$dMp*PHP~x zx_PCtFKv{6Y>gkY@06Y2x@wW=y1yzn9|UWqsy_dvU%PmFZj``p()<^*(V@WT06IQ@AmNE%=35C z|F5yD?zrX$A9}`3pZdsW{_$I=Zd>Us-+RgLf&TQJM?4ympZw~4$R4)J+fIAj8Rt-u zkUM5(YcH7Zo964b0+ zt2UhyzS3dTkYOVh>M^cRmw(;$hBv+Dx*J|+!?T}9d!=2U4$|-6A`Ak`*HZ_iHXC-$ zSz@^GN75Up%x0HofFW^iC>rl}+RC5tj9&P!6EID*j{l<1T;BsrXGqVNs4ssywzk>0 z4`ZZfcN7-Sz2M=4k?bq2iG=7&uLaQ$){tO5jSU4vi#C)%b11tv3tO{5gkZDi);2E{ z3kq&ez;H^zIyO{ilU5W&KUmIv+}9MW+jOtQk?srZm6#%Ow`8^ip|yc2u^Ha{qnv{=G*An_|O; z3LMFp*bZ$I!G8)cM*1NxU{pAT>h&S>E;`VO2k+AspfH9U5%-Q5?UddJl@hh?wZnLp z4I^aw%n9%37Btb5?gQL|uYeK7dP4{3gUVtvq+PB%N>434N+_+*E=_J6$bcQbIv)e+L z7`#G%Y6Zk_d68l>Cg0+8S8dVe>{Z%ZL_;!K4P(n4mA0qI>G zWDsP|JeIayR_{IkgsBgioS^XF4Y#y)5mCCOLh~Xr^7T$IZ~KthGUr~LE@3ujE-~AK z>yV6q9dI&2N2t!-fInNA-jYLBj#8AUA-=Z0qNqQuS)0V=k zxl1TA#M-uFernNY+UA&=(vhW7#nT*t%%?NM4syly!ahtbB#R97735-V%^$nlkG)}p zj8fM_SrBG~fJZ_?MJT8W2WEwa*Mti-;lX3!Z-^mAn36gzZ973pK8K8KO4lKEk>~fy zH|mx>f3KE03U*ysOHR+Rc@F=O&78Vhapaqho7_fZ(Ydu6rgi`fgH2kLI4#+|eI!?sqg`@d%<0O|?FMmYl^rSd-5W2V z)l^OU=u!*#$n{(s1?aJ+mm{5z;JTrRjsR@@Ri<-GhH`#fIzWXX?-`C$_`8W^TYK&fm0k*zt;9<+Z_{nn5NUxpDTD5y znlZ~m$|Gabmr)Fj&|z$9eUplccu04?%oMOb|T0~HGMsP;?kgE1Hc1f3&v0DK@g(lX5y(U zQHdUPX$1#Qwt}X#?K&1_FvNg?o=z>rr|up;<04K|@vzA871uCt#X?YOP}5g0)2*vb z?@;+NZ_A(?ncjWVO|{;;*RE~i_qz`s`e3yK@W@lW$NqJgX&+CEEwSWwHX6E!eA9|r z&qRhD5gXrZDX37&bl;8V$fmSp@prR3KPiSDjOD>O?AY z048uqD2y6Fa7^g72_6^QPmiZgPqnGDZ!Vg1mB(#`~(1B z4fttf|MJuB-){@X_kSvL@7A!k$!9( zA(ch(L1L+>&~O#!PTDy!m9ix4~A$ zEbLL11r(e!+z!Dvt(mM9sE3bBYylcaAr zdbOHJ7Rg2=S)+By89QDOYXzRcuVHcl4>Me?GdAR6&g8Y}pBVJ38NFK1ByqL6DdK|6 z@xGZN!K#WWHEXNJtfV?cRkGT4Qm<_q%PF^@%EbyVEgECQ?V486a`6zn_?SG#Rx7NS zt(IY&3UaS-gul{Z$FA|}LbJHCt2GQcWt5q^Hp3AgQ#UQ^o<>!a?d6j$WXT3gO{$~ z28fX??8X%?dB=NCn=1ljsHa{??^!AT6>){z`d=W$}?}Ca~|cckOzivArq0};Ld4F(wW7Gu*%>X zN;!^xbA@^ije}pz-r&;JfFITulRz}e^v>izK!_80iv4Q+glsxRgi$m7%>0lGvhcu> zw(ch|@i%L96Fjc{8Z=5YLvu;>swYkQjEJ@A#W_!w0G@{K)+SA319jaKy=UjP-et#@RdVJVY8Jmq-Z)pmYzB%jGN} z;ZE3_q`JuQ&G$q5@eKKiJ}HxVkkcK~%p+?u(@wkA1$Ue~Y<7s*30JJ`r5R;fA8TF{ z4+O{0BI73yUPh&>krf@GF^CW+s9yK!gGN(l_8Yi9W_!%dr|Sl#%IPVgP?OKaJRNs= zx1oE9nL?0y7Sgix-gT0bqlehG7apDi$_T!hpKIYrQFg-h7emTuvV8yOVSx7HQ!5>>#0UYYJ-~Uxk&le1Pbu@)14Kj7soPr)U| zpa@$R7;QtAX^gn&4N0r9)-M3t9W5c|0rTjgujk$s}q&XR~QERCktNHsZS;zyBSWUIuBeR-hyKm z{I}h!6I#K{W)+Lva&&IAw_`r!DGz1CaDboGe}dv}B(1J8*E2xGV&e@C|Mv&Pmwslc zZuf~}>ELERxd71Zwpn{0jO8a_$As}xUn@h*;O%pQMaQI2Sb}zr?+POlY4(0tCC8-r zL>$?|p4`b2`;JN%2r_9+3vTe3;a4R=VdRj<7no0&x*kXrEsGv~=QaoxouUzvz0Ae# zYTUp7^=Nu}^)MpM^lg>Tq7%P@VtKE^YQc{ku=DPYz@Dv4afMT$@nl@AKKz3M!;S6; z3qP$4EE5sMWye)nZv#3dr56^baI$^2d^piv9glYE%N{VarDjPcsa?T^XCOI>8m{<* zaC`DmFQdDKebswc2S80dcxi|@yUFj90;nw_j2^~;SJZTH!=BnS<{R>gn*dfEaWH(5 zY!??ZBaKEpR^N3jY|-`f^xZ~esn{tlC_1j9nNInjk^mY!lMc{YeL+x|@1&zLom|F# z!l!7e_fqYG>{vgL^cGCjSql(Dv!@p8Qe(-8Br_TC5?z)NkqOpD}$6mwVYYaaRMAH-K-^iP!FU{CV==;;-!w*zO@d~1e9N$g_xz~1~(LlF6cY{ zUH5Cd5xt@*s}QkEd|MZFT8ViRF4WYmDY&p}BEit84__3!ji-z1;pzg}j|qkI-uu#C z_EsbgC#u0>_z{k#rM)FUjad@!2CN?D?H+dBHt7JIIIp0lg)9Oc#UMI5h8lw}V<1G_ zs*=E1WXyDVZ6O3Uk66HFrM&~ByN6RbdkFu5uCc8PN390=o!~JjDxVdA-ZOEqmuLpQ z`2STr{xppt6R+yh;OAZ6I*_~aWXjR<(~IsgYj;GJ-44{eW$dT4I)`9ilD2W~P&1M@d0lzY|avjSf(`hlr6S z2prEgyp_(N5k5%bP=2MXXvIoJ4q_%fL{AdbgNRn3h>6u9D??9syl z$7MqSHxEbWDQLb0CCbRRK;9D-Xtx4HIA%%fv7{K6mVw3;-Q^7N4p+x6_`-Fe++3o) zoS=A#0%qaqOioz~o}C8ezT%PG0hSc6*8#_Z^Z0JFGat&Lpg|XyA?^s#HCtQIA-bg} z#Ow!7PA27W?kzv{+Yh#1wM&ESWPybP#h`C+r58K3erW{AUup+Ep|PXN+=18uMXqu& z$4S9%;}ry9o&STgzwv@_#s?UVC<&^;7KW86%!aRXRoN`#fS9kx!k3;DE5;r$#; z?}2X8g2Oxa-P`G-fS*{r_=~c!LcQqWB`(Tw-?GoQ)_D+12p5+buNS{GSIHAFmS46* zd~5r96&aBI<{e(6P2b0ffb#&D0sC|Ou}`2p|LnVee?y2jHu0 zU7EnuJq-XGfD4A7sa*zhn(mP)?8Ogl(y7I zqs{fD7!9J3R)Y5ux^3CtR1o~!Nmxd@O_eMi_<@tbT+UX|4&9*Syug;`eV86juNf?- znIw&OGG6#i%V2x8r`ou-eDf$c=Zi&?Y= zWY5JM@R|3#yb_kj2+)DUW8!ayi*-yXltPQ)Bv0?7xl(fki7Z+~$&j42LdZkoiN5@w zDP0D0O9_{8&_idcu{ibGEhW%g8;Q2mg#;nfKNe}K3UmOlzlWJ#hHz!a;;}CCo!NeX zm$3p+({tNN12n}*Jxxhy4fVxQP$ufHs|<(hEB!x}kM~otvA$jFlr%UO zS}_e;-sPbP$wvL(40=ZTMka+OrW)?_q5$dYrQ?6q4-ye(mjTel-qG$a(9BW@E>67^ zS7VQ*`6zUX@9|Vjg9q<=@F~8_g$Q7dkR-`*Jc_R;gsE|V5hM=O?Z%=0;&z+Ooo=#Q z$+^qx?J-+Q5+yFn8&kBkmeXQwZRN4nwivCvwKWzJ$JLziEBzRTg-A}O?Oh^cNnqZ# z4x>86U{qba+w5uk!?iYJSiAfv^*qptUbxP7d)TsWrtDB(06Ost7aMEn?y9;DfL?SsS%_LA;fTYjf8r&t0gw&AYw9EHuI@^+x}s8P zegc4<=7ybxPg%lcWeyiCzvK)6Spb~TH(zcyni9_Jy6(|x8UP6*NXSjDYqT!gc`ZXd zT_@fvYiKA7H|ijpI~v0qiLbZtu4s2LhM#w+rQLnn*;U~$YjGwy8N010PNDL8HjCZy zf;~NAFHyxW=$@i1Ynzh_1=Vuw9i_E%sy)TR&X_95DdR>8RW3t(sHVMtaiSu-$GMm# z&Ee{BxxGkI?h^#_pHtQubwPdkg4RAGX;zmHeF1=Fenl6`T;?H^!;O}N^W#mKPs`dG zW96-lWuKNiK6Z*S67}-zo+OKJrpoF0H1Wk&6rh(|#WY?P-6bLKmiW>%Muh}beAI{H z=pJuQP9o=kckOZ9C#G^qUJ#VtIM?rwx$leR(0DwVNbq)q!O*T57?~=h_|8cYfYUyT zfGl3ZTTu*qs|*Ec2?|h<&|Ap;2kHTGJxpF2kvn5S0F;m>$VNdELX4c|@~LXok7QaH zLkifCfYD>{lUU#xbgC-vS#@O*@LpG8Jo>gcPv>p+215OnEeioqnC(ud&M6&{E*Bik zT+`+Z@!oGJHq`?#>aQv?XxtjZ=q^gDD-i69wdOY0SxVe4t@|G_dj;4|J>2Kbv}MzTi(rRa4ubd1w4)ZkkD z&JasXf38%ywNI{WG3uKVd%QZ0>ekb>S1leb;klCtcs(utq)NUhPb?%u%_xS4J` z9W6FEGkDdxYO>glliR$^bUdBEQwvB`5ycZja@=56^~Yz6lTp=9+pN8s!y~d3Tl^M- z-e=iT6Nyzn=(Xte0qd3~r^qD}21fU8SM=&+IJEVVz*^4eDq7mp^IubAS%_MpqsSk!+Ja)K%ZpCscgaO#enO?_ zX_(E*dd%e2!!Kage!M(f+K$ygQkI4*Asa$RmktrYk0UILl*W)|budFpZ`n!T4*- zla;ZD@)H4n2}gt7lwf#4I)>F9_5R!pbZ=QRxB*QkbJfOTwRyRbSnYTnpLnOFYihO_ zLg$!at)(ipwX!IUb2MkT7e+Zyy3F};D$@3H5l!J7!( zb!#k1&<;R8r*M1FVtIL-%@brRw)(9Gz1R9+O?i3EHm^mWTvE2Dw4-iP8+s4{z9W0z zOPG~PbGSu4#QMr_htzS|;32k}ej9GqMP4nwm~L%07@8B)pR1Hk<=NWT6GEMa@4eX^ za;dx`7ahm%HRhrHueLi9r)xbzm8UWIo%%hY-XK&>28;B1w{>YQK8qvdOuC8;hG5ZB z{kA_-Tc#=SV-<^|I&)yf+aKHB#5EtSTr+mmS0>zaqHXI;w2Pw?~UCgVSgM_5~> zJ5ASz0&$znObbyE^J>yW6V`>hM%Lmi~sm!O<|#(e8zi z4PhV@i-i1vG6!mhFdIU9iQ84|4usr}vJle$4?>4U}#!o6lcV?B;WNUJ)Pt0;kYKH1WCz zP=K03G0l-AJ94Y;CgPnDPku3a?@P-Wnd&ooFq>9D70)}kj6Ik`LrA+Yx7-3noN;T% z$W|=m^LQrRu^&+CrO*MU1AMAs^NWbv^pb%pB3JK@VIXL}=>-&^n_tKXxw_}IFa?Mm z`;qC$pr8Eq`&Uh9;>qJEKsOv0(}*P5xq>Xm(hdzpLZu2Im#UX;q%$y1N{rUPPeM+D z=dV}kc3jLm`6X8Xn9veT(0Mq|juUVc@ylJ|3S?DG=$hJ4%$~EQN`iz{Cu1{mv$E*IdtSXK4ey zwSn4!o`%Mu-kLxy&C}>r#UswBGamJM%A@n~$|D~6v$IrzZkIQV@zUq2(s44`gi+#S z4)$^-$rF0ZUIAeqMSsLyeXwq{aoleSd+qj+m&$GO@gzb*-3@cBRfVdEwyJrFr*>k$ z*?cz3V|>4`&hGIx1@ay!gph!csCdw8*0<(WUs2mx1!Z-~nHmHe3P>3ki8%ccoq-7l zf)3zy9J_H?6dx|tD(&z62J;}40r134@QE3u%VLv6Z#*ZW5+oz@)hAE}c3XjyFgQ7- z%yfmM)()gO+Dd&hpjan5^b+-tc}#kPuV|-RMz~u22BRh*n~{hP6I?cI4LJZHNyVji z2lHg!R`&(ZRkqJ@L00SX_*%Tl+pR_AT`hCU6AfWV=lw@9`#ctFX~1>}$LZ}}j&g-` zRJd1X*nQHa(`nuMlam_t!hIftUhUO9Yu+XMb_vSB_y8z8kE;g#>vsXj{$@f<6INfm zV+mZJUoJISD&##EyhhuaK)FlXa>rtNx-%}*86&dJy~d*N%Cs(L_c(R!5av>Rxw}kgUEJzT7_?b=bpl_j2rV?JPwI<{;8vFX2)lmo{?4 z%bKXjNfTF8Ik#f);p5GVue~^U(XNKLrMZ31l6_mv&rWB3N7i8X`C9$?Tc)j_M7Dj( zZ!&0|g&$m1m#|1*DUu9V;z?3apE!AMS44CQ`)gD{BD}sokK|*%LceMSZr8~g&Ct&s zrG9@a=Hi(cl?GMOC@lOjzsX<>T6Z{kxUQ%*WH9SOg)?F*|AH!n@azv=>c6NxD+@%&I##2fi-s%A`lF z@oWlMO}e1&komNcd3Uk8au*(Gq%i+$MioY{{%vmPoCD)ti)DVNi?{3_tL50*c%i;u z6W?u8;QIXttWR2VfG>EI?UV{q|NFmGd?qzjC>#0PYFE7ej#H{q{(0+$#=1~iUS={} z%D33cyPN04L8HmPs$M&oFpbsPXF#w`n!)o4ppJ z!DpE?cT(I=(*={;VX=4}^Q2y%`k|`r42xWKi_Bc(*wq=03saA44+mS}{|cW}VSdq|})LMxSSnfb;}}X%K#;&3Z^F`}k&) zP_}O-oJ&?+W>#<_Uuk%eCwbqXpsq~EfoCH@B{~<<8Q8JkQ+vDxVFpFtIDF`hAAIPE zx%~e@I;Q~WXdCR9;n8KKlSB(~5jB(KV~*WH8Q59?8e!15P=+b}kWl=}C*@+<-Whd4 zTCRe|4=&4NiAIlec++APdu+r{$%gP_2%qP%`lA4B!FcK4ssqounNxg$^YF_u*`_lI z{!{upM$LOl(CvRVl(T@tKOu}`Jo+0N@!ms3l*O_KmvQn2Yl`x-d4Vl?`Tae{GTGW8 zlz|-tpa8;D2yGDFf-nPQuNx85vUa@lq06;%P9EEJ@Fkh_#OZcc=E9wPm+RMyZ5dfD zH%6thqo-P#^u#5`ws=W(A18ldWi}{C6W46Y=QLD@;r=IJR&Y5df3VJ;n!*cBa5!6o z>`Zf#^KMU*+FLMRpB7g9!oI1I?A_tuV>my0c(zcw?+mXzpJfkD3*SQs(Gwb0>jF&#yU6_F4q-vmbjdY zd-7&bvTbLCtEKoS6J+h@*7%7?2~ zlvu?I;6BNbqBl@s0=WxeHL)_dx*`r2=0La({w#=S7a$~(y(n%#}H4CN=^?lAq3gSKbJ&lsBp?s;Q?OyyDytELDlVO$JUF4?GGbpXTY zaodkpM+JD3D=)wTTq!Zh8SKUJG8kjh8<*jTet@Ji5c1*6_St<$DS_z!JCAS+i$&e@ z?T>BF2Cowbz^ktA0iYfad*A$Zt>2qr&$t>OzAr*)#0@~kQ_$$Y_*>i5z0ds6${-vL z0tY(HbEQ8LyeyYJgGZbsh6ra@<;%Q`BQEDiJbbU%4*>qhUU#qphqG#)bAG4CO)%6Y zago^N(kPC&#I3b8x6`%#($v;eO9lW5as@$0J-Mr;jK};+IQHh!%1GR66B@%RFDJ+i z7AjnZvWDskkPZ>dgGf;=rL85B-IzaY`)kATKv_=X5_t2U@k*l_DjS&=M%)WnD{gP6 z!C-H7dHulL+V~B8ochySY4A``Rny{8r&l&}nDp3Zuc(jA{53L1Y{eh>lZgvWQ$rGMLw5(t0 zxcpJise8ksL=Ok`f))YqY> zAFAr}N=C*jOb1>2r$zy_t?f`eu6raXJW|5B?VOJjlmtyAziK!Nr4z}y1q9p144E#C zcgVXu;SXsa0G$xB?WUimu+qXT^|cIdJDg|yd8dfg*Z2QuUe;w$H71{D6giw~wZX{T zIV`4fsp4J3IF*)56;HS@fK9l>)Lh=qA4{6FI8JvGYWFP{>3!Yv!~1if((SPs?LoiI zRrT_z+sz_j^KFsnc2p>e-WFw_G71(=cb!bKQ7}&3GmGASNG3b^2!*+_PaJ}1UNB;bnDBZ&Y}aAc}mZ`aVqauP3HA2CR<6)!Co@Aj=sBU>yMAn1GpO#j9{Msd(jZUS);#7-b;w2Y`Ic}Zhe>WSs826MVrj?3(ewor; zQHAtV3E!hovrMkExK%2LY@s0DxxcV+8wEXBJQx5SGs1-O_Lk7928AajL;(Fb$qo zW7b#3p!h0QAxh;c?~d;RQfWXgm-@Y|j1~PDD9rMBwOWs75MBvKHjmBvn1OSXrZ}&* z9?;vFMe+g*TO+UMoH(D-Md9DB)?V&>n_;yH#?x+I{*+Ys<2Z%Nr-^N6a0)GlD)ygd zrI-HxG=<2Gk!jf!pQ}FuF2JFQiuzfntww>ZUqqV)Ny*Je$z~-L8}+fdhDerXD4+YY zqn}MPII1RdRvBn)-ZtOMa`|hzn}vlpW=Z0e)yzN98GPqjw))K9TS=C@@E;>*8r6NlNY4N3D-)@L2`ck9D{H`VT8kn8 zNXAJXa>co^%9FR|znr}FK-aqQmUDfBJWBK%Pu^Km`8dEwS2a5AVzW|cW{pL2X{=I` z-v_zECNk5vnt)!?1oWmRD18QNpj!nP=v7TiA8A_pQq$5)nwIvmt)$=OG89KNHeLjA zZme>pLCFf-dZ07jc*}vlK`y1xjVITxsoWCaqe(49^U|D&@i%U);@17=`+e^1U1xN} zl4$+yRr}B5*I_qFqFc2Vx?XFc+q4$iqP3LHXMBU)M1wb;+_vsNF&ya-Xw9%pVq{@14B-I#afO*Zn193o#B4E+oH{I{?|>5csV6PPz4 zs^2>j`FqCxg0+?XL9Ogns>Bj^FUaK=O7qh%zd_c4jK92V%bxON{Nhcw;qUOvrx4cL zqYeHgZn)s^Lx_bSwM1L~GS)h1AL>hV?rh<<9PR4>jS+8xN$`hvJd$Ar!oyq}d$}8& zC89%DFc^)s&XpZ(Lghe`w3*8lLu$}YqkCpM-E%a?W$b>k^{4pN>pBRvU#6T3;y&sJ z@FN_l?<=Ps;;LR;n>wR|)yYTBTH}(J`V`;L-kJ@Du`WY){L$e(H;^Q4=BT;5&xu~3 zE4)eoscGw}NWQ5$JBRK=Cg&$J1$9MEa;(vmAi1uR3TEdy$%!ClGDhe%OOmW)DyG;V z6&b2PSC(AQ$jL=(P6t6Qrl9qb=9y%-1Wr~0b>=|oyPhNb8Kg^UyYz}$zUPh;YOvv$&6Xt(!^W%|s`l{`*g z$ic7x?!vGXv>s9L!fw_IgFZ37ZI0Q4|iBUYR#fEbA`j2?NBdpjUVQ;#0x?ay`-pb@IxS2V3-={WXE zX}GVv8#CjLj97A}RkOx^l@gKhPMZbPG_k?PN;1$9OY2fPBua*sw|*5$Y!%i2uFZ9T znNg>jo1=~CZEg0)MpvjLi#WjDT90OrOi+q8mI~}_6A^{p0#l6XBX5|4v59SfRvLE# z;IxQPz1N}ujc-vkN8)FilD&57cz+Xg0!;zz_^6yVH7$aQ{*yUq(-31sG$)4l#fxR< zGIK?jx3O0RlyhD;M?SLTp#mzZS0uAa3drm#{c;Xfs2H`kth&EL00ElY((GrrIRXR) zj^14h(mKT+t@Hs<#Z0rjqM<=FT=wfq;Eco9m!+gf1;KNyAd*~(1q%r8R4a+vCWr2F zvuqAfC5nc&Z2uV{5aK9GX5q{UR8*YLZ4n(p!p5w3qldCN#I`LJ2Y&H@89THxEZ+n2 ze$ShZ;lkl(D+tShH%st)q<))>_A!sy8l!Ac;23>H1LvgSKsDmPs`h%ZMsS1 zbrMI3l+CK2Udby~f)ihNjb)F3nQ4$mob{6?o93`VO{*ru&7f8iDCFEQ+oA=88CqFP zZ2tOa{P_BjJaO)`yV&MEBb=ImaRvh<-ccS>8e{ACS!VtcGfZ!l5PkQ{InHY^8d{wFDG>%I{VX2qH>BkRg?7qJ2G22F$@!Um)Jrz)NbjK7 zNQCtBkI@8^wy^%EYFG#Xj6{B~YqpXVsH~OkmT7R^uEo+mV^KrTB!XR9C5_BZU~aKD}Ggc zgpSiw__wj#_Jj#N;Jr^$opb}&Ch0&C*@doh;ptROiWS0ED>#nRY4O7)w*Kw6!#;5T z_WfJQv&pD`H@w3#mR6%U)@xYT9F5&)4k|{3Z%c(5<47UBwW@B`=x!a%1|$lJ^t<>7 z@G=4yD4G-NudQ))ij(wg+L?fnA*1OlG|U3&6_xudf(cR8*)unHDZQal6cTA`{9JvydP;bGb|*Q_!yH z6oIoZ5M<5kNRITOX)y|aT6>uePPtad=w+;do2dn~PA3m{i6H}!WW*#;1mavjv8J&h zI2#;l=4fn^#eB;~-okEyn^__Z2LPBys5H~g;mR`CIRMfAkRG2@hJ_&z?hi}(E~c2A znFL{x@RH7sH-}0Gu9^5`28x!Tm(7lbvok|?7ja!4%m@&TDZk_KS;1Y)VC^qWvcKpF zUVgW`YAr97kVj_NCOXeei>OhVW*=vUV~kMpab>O*eG;1mu!kepiB^BOhB+F)on?oj zkmPfYl3;NwpNX-YvU+J(T~l`~P<@sf(P%U%k|Pm#7-Aq+KS<^i!S(*`UiPX|l`vaS zOj~>Q(bZn=Euu#Am?K_pO^tP^@Tht2mdxW_qoh*V*Vy;fSE>-E=R{aK~Liu)eoRC-TMJgndu((lhBLG=K z0)7c4o{#i)2}%0}V_*zwe*5}ZPcDi3O2`A9&Ao!7M9XR0+KX&O~0y z$E)u?ShIvCl-;0qleMz*-Cc72vL8??cEYe3Y$e+b(v7{Q@3!S)nWt?~nPVy2Bgm8O zZ!WQ$|Njqs_|1o3eg4V2Z@=;4+5L2UHSC?;FL}1#@Mz^Nro+C|N_UZB@xvE2Ys^r+ zT-wzx+cMVHp-uU2n|wFWuJYd7Z@hdOpgW%T?8!xGl}{q~8K?Pp*Jg$jon$a6#6G)f zSj1!^{{nY*r_-s)T8|0*jTSAXo93e+r&R|EAGft?(e6$r-x~IIt^H9l*QPd#A+%*uiLXHx06oyJn|Nkao^EdBvt&>$VNX_x7-%Bu&CIKcyuf*)h=W=&LR`$ ze>4AMfyJEZ!&dSMorK=JRSu*4zTpQ+$6>qmzX(c8*$4uP7<@V+J$l20m9zn+*77<^ zsV!=$FEj*jdOPRn^jWx;ksbV~F8~OG2A7tk8wYrVzYh0ky~&Ky|CoaT&`=`Xtp|J% zdkgf@6OCZMH##hx2GWPql~NyVY&rW@Fyn!L3poXLxn^k1*nDpDL&wyR_(+W4>R=v0 zz9AB4R^EI(Y-n65t)sU7=5`_~9-{P9q^@zyxvw8VIR$tIv5}Sxj|PwZ9!Gh!z0qr; zVh_<3T`lLU;23NVu%;-~4ZtRL`u+H!>D%?+YZ7HUD5x3SX#TW_{S^w#iw($pYE6SG zC0Gpso=P4N9Xe%mbCZvlJY28gfv?Ui6ysH1^TFz{X-j)cK@9-VK>Q)o3I6@gx^1d>fYNsaLbTcFq4DBN9~063Tv{YrllgF+E0GG$ z@G&LUZ@w|wz8frTQ?T~<{iteoi7cE2Y{^L#EtpUD5Pm)g5|g&tYSs^m(OTH{>OLm4(YC&0)R)fEJCqD=vBz z$havbvfV}_SFZ_M^ByU|5bH7upe99A&p!m#d^_A(X2Ehg{;YVFXYi+g2M*0kBo+mc zsDg7Kha#H|H#%N8mNrX4$MOZ%7DM*-#V~xGl@=$>WOI8F(?xy{OnUhU~U(X0E(~td5ZCu!8UelF&htD zM*B*8-WDOml!2b80R*@}=nA|TF(;1AC&QY;4YHNnj!LFpyiRTS1v=bUP-Xk&Q7>Na z*8;=~&0_7Pb)v=V)Rw%^^^-2;IeOM_4^pF8g#`XD*c}~|()f-u;lP&*In}&14J;yQ z=gu#e5I=GpWVFD9?sLb%LB!~FJ`_D)7fC#rgbWm7yWB{`s`XBf+;1IjfrD5*e6o3o zQqIA=hOGLyigXvK3nAxjYHlYi^&&;E)FKClbXV$@(ltuoMZy3peyC3LenfzQ;ROkV z6B6Eip|#)mkPYtQa96)U@9?a%Xr(9Brrx(arPh!0#G*%(Y)@JnWV20a@tJ^ldi1aj zTts0l2)q-#r8W~YH3D*scf$nci4E>>WykTy}w}?GT2?w9o z=9Vqt$;49oYc_`y;D+NTg-hSZI~P3`%EWxz2|D{p~$;&ePpS z^3b16hHgXS329AVRE`BfLoDP`I9JP>3L;n2Qcd$89WYtL^`$+fMM&DE->vY;8V>2) zXHP@j@>QyiOau)*Nb1=ne55(bMqk{!&7CDW=LV*N1q8Zu2!yq{Ad#-Vt_Qs3ILEd5 zv`TYf6IrO8HFxYk>0`~IPw37h0mUB3#m!s zXMj+{YDEh{F8~^zRJ@Z^Nq&7a4^}UL%;&rW0tiCYHrC-Y$tw9=tmbtiXM|yh(P0aE&88_`$Wm6^K-lLDKm~kwFfhM{znb`8@7lYlRj|9$SIlS+Jgb62Yz(S_!nO&KmBE1p_uhlDG3- zgmvJy8D#=r(T?A&0Z}Y!jGp_}YD9DOoi-(H?|!X)EHzMdQWIwO5S~GKbrDxK-M{$M zxkKkYC0EpZ)dhSqbbnKK%HYSQG!ihmyDZf~kZrvx47lnCU{p^ZPx2cD`$4tO@rL0& zMZ1@E*K+xqnM`9x{i#X{G{+d;=ucO(e5ANiLpmkR7M%}#bkB7}FXH7j`O)@V_@5zY z1C$gUr_OU2wV88^!ku45;>Jo9es#*y$WaD+{$(tSA$R#>et+I1Es3iX&L;7I6=*{X zs<9M9wlOrhD@FL8kP{aH%aJCClS2IHNkW&B)y$)$AZF0;B!1rW=gK)eRV%Oa=co-; zFkz!H=sGDmWzj?Wd4;>C@G^aLWSPY8X3i zC8sD~h6ev2p;n4=Ri7%I$IjPvEY%a|8J065nya|oA}13P`=eO_VLv@d5X}L||No)B zzvG*F$oPx8^!dN`48AoGe-I{s%LiK!G9)wNra=J|l4%Sfc@PCgqQWG^+1E1x0AivO z4joJZafxR>4npNPbPy)hu8lZlY$*sIM8XzUdsoze-;l|8A#7b2>Dq%!VR%4+n zjjBFZgOka-s6_dMxwNY4Be8&jRF5u>e3cF(@!#p70bCkNdTQpk%PmqN&ZTyEgmFo7 zp1#n)h%4tR_vMfw<3@UOX{l+LR8;^SgC!+k4SjbHbNrp#J(lb;RP>w znUqW+xmUdEHLp_~5qP3H>-ny`q05`Ld(0`iTlIPdMkZ!&d0V%4SXdRY`Cc)Po>=wb z;{B$0`3&;=PQcL3KUl+pLP~|bYs`ELf}5vIL^ME5xrO4!Ew;oW2QBruIerpgGV=!2 zYD`#eg=NB0&TfMrJfqQbE{2p*#+hUa4>%wLQ>KiSwm<^P|Gxq=Ri@4~nKsj9`q0Bj zMwrP=R09LAc?C2tR@dBZ@eZNFz(3b8h?HAL!EL<9G;g7~zo1)=5Fe zP$EgPCN1n7(j#};87@~`HRG%&Jn4j!E_fCR%ra40?L11Bv&Q{VOZBr~JcWy=z)nZB zaz=xSk7m8KHrZ&iRnbPL**DS05MxX+#}aFbVl(Mu@7cob10OlO;nT`+nAW508%*?7 z#7jY6``{Qg*c?*!^>nqu&gRbMo?7i&rgk;=x}!au@@DC}u}<>fK!@v$E$9fU3`iY0 zMI9vAZqNLsJ4SmJf(lA(f}}|txdT1B1??)Vo`_QkB_@V|1PU4<1i}_f0Fcx`vI-MG zh}8~ZK#2h$00JNc05Bk=00IC22$Pg~xJIpZS&C6@M7OL}oAljxb9xxvA0f?uXKT}cWE_-g3CZwm}!w^R>H)b*5xi#*WEg``9KrxcQxr*<^DEWYoY`yI&Ev? z1}AN-r*G6B#$N@`{(*ls`xW7jiwB~QVaT_yP?mqgS{q>nms(%LhS%!Q+tkZy#&stB z0aMY_Ewv^dJI1xQEdQ(bA9}i(5STLBIg2N9z|cQoz~B|*ck`DI=DVM}=MUu6ldSG4aeeGZ>xr=IL@|9fAH=m{fD0ws{gt2w#MoJT854m literal 0 HcmV?d00001 diff --git a/e2e/mig/6.19.5/assets/barlow/barlow-latin-400-normal.woff b/e2e/mig/6.19.5/assets/barlow/barlow-latin-400-normal.woff new file mode 100644 index 0000000000000000000000000000000000000000..f5a20a66103ecf43e85b199e00510e24443ff5cd GIT binary patch literal 18464 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 literal 0 HcmV?d00001 diff --git a/e2e/mig/6.19.5/assets/barlow/barlow-latin-500-normal.woff2 b/e2e/mig/6.19.5/assets/barlow/barlow-latin-500-normal.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..bd02c3d467de3f048d2f95f8f9a163624310465c GIT binary patch literal 20960 zcmV)2K+L~)Pew8T0RR9108!uo5dZ)H0J}^808x4X0RR9100000000000000000000 z0000Qfess?W*mr624Db$atMJS37i!X2nvFVD1qc~3xpg10X7081Bf&PAO(Xs2Z&7! zfmRz!r5706R4Ar(C#Y0w;$K_NM$~Qxp{fUR7I0(eb~`|n)C~sz|DTg|#8?At1JKhi z?E_s>v=jt^N($AZ?)|`Crs^nU5#5Vt&9bb#_CaG|`5pgrNtc1;&u)35Upyo4QM{rR zqSNPmFjgRFWl5Jbi;47v_cm$ix0jLfa_if_pOfZ`ud0Z_RH7*&D)8!lmAO+ z!vBBV^IPXWD5}suW=)O(X|pYu+g~h%G;g#iVspiP`2FP})X5D(5>A*<%3s~;!vXv^ zKn>>Nnn^i5ZT8?4GWR$=N&%PVs>G&tU=fc9oqqkcAdi@)?N815|7V6`qlpM822t98 zSScFQCSpu(Om4|7&%9PwzpVcL@7ivYywX;0>#VG1F&}6dO3>A==0U#WKI8WZ9K@&X zb)SI$*#VS^6*kl%(#*9A*F~Bl6#)fv`@ts4lEosHVhZH~z$|~i+(*nZ6LMd&O}B{2 z)9Ilp=}P=({$9oBq)O$|8!=wRBCp2#5*2P0B04O8nAxTS@nI|xYq4cHF7$8KaDs+p zsnhK?YgB^>g2kqO{h9{w=Tdf+6}G;vLLteHuYPuSB5YYW98W@hxCm-LemBVh#)4zXwc=WGjjx=d&RCOPeAW2xHyZ!{ZV>1OxnP5ur2tVwf@1)JtD;Da z3Jrj>4Ului(VU?)d&c@EA?ZMJ3`dmK@%&nsoiRRiK656B?y|e=g7lKqMHi&WhUfpc zUuysC%?t256OtrXML23JQHkgUzB>h;04b7FLbs6xa?A6Ys4BO7D{lFL;O+M z=&~oZV@#`cL$W2weMtjF1wv_qppgAKSAYd&-Zm~P)JP;X~aW1 zdMHH(lw}MwP7zeD0;*CEHEM*KwL$HsAf9-Fc;*@O!b|A2*U0Ep55?CT^(7>h~Ap*v02)#j2 zbTXhE#n3g^AOh6?Xpr|~gG&r7L{SJmxfQ!D{mkB6;C$K1$ui6pysAuU@<9VTSp@Q_ zpANamJ~x1GgMIC>m`D!D)+K+1b+fot9n75_Ge$z+sx_tj6=%B|1HPe2@xT30^K+N+ z+}-|xM~{svn{CuYNj41Gwgr#K@kpLb*l!IP3iBZ4M?Vudqt#0XfWN}lg!xz3lO>3KZ$ow{Q?J)A#ve~{(~Fu%79o2YTVOG zLD%OTC5}=ZURuU@6g9$q)X^6S)Cy%r?}E#b-t_4=y<=~LoI9zdHF-=OXT>r&$@{PD zTH=RUx0*3dQco*f)%VYhzsH&35F841bKR{hDx z@E91N>Q)h}`-l=vD@Lq1@e;*)aI#EUvKfprnu>#S_o z8WyQ2Bmw~g4!MEI>*V<-aY))p#B1pE1r6pLJW~*J0TvXl!m}kWW)n-4CcQefo0tLe zx-%eL>M4gtE{B!!$9`$HY_5XO=$gHa|CO5p54%I`d0NM-7zf_3=gmM}7;5nW15ruF zyE4|5=Uv5_DvmPb!`Id+13tYnIF!(T-kG;KmD=F|dmCM-OWnGqkkK!%nCH>dJL7Mu zH$L~?C!{93L9oUuKA($ZO7T2J|g-|Tg3eyuF5*sl~lPTi%Q2)e?sK5H`;YQ3}l zWUbv-PVqkM>DVr3_WY;~iFzJ`iRl^+yCf+#Ff%g^cwM6M#XoH9M7Ub|Z7i~e&A%Z@ z^RP14lFz9|?QJAbnibs?ZATfBRvdSeV{5yOUOxVz(&^teXLwqRydr>|a^$g$@tvmL zF%;X1`k^&+JEaNO;{@87D4r=ZCtIDsdHxiv$i1?ub;zuWkzE;ID$WNzLc<-MbSVQ3dhId5+Ol?G=k!TG@pWH`vDi{(7%4OmwT3*iEAwp zArF_}cljv|svw8AD39Rb6EJIJbqO~C0?EiJXhdDx%l*4j6CTrE#Ggk}FTXf(oHXaV4k}m3ft) zD|%NMs_IiU)TmXbej57FSd*k#ORZRKfr-(ieR8up8`OpA?oiKuu1BtA^cT)3eEhLQ z4~hW}E*?Gs;axenun|)WAI-QIF`X%0FDjq?Mff==K&n4@Q$N8&>$lhtA_R*DcIJbi z!FY6!pU$M&_9EVRi=fOrlz5|*w-IKfB*9s?msToOcn*~wV2b6J7~9!f?sVR`8`P9cNww1Se$P>fGtXlfNK1nr6m^BM*L5$;`(!~K`1|c}0fgk`-V2pWrx;CZpO)ks4nd8=U zWNtcAaugdB{x(wu4`$Cpq)m~jrseBhZH=|oS#N`lHrZ?oBtr8NC1*MvzugWy?Xue* zd+kFr&SSFV9ni)gdI?pG!x%!wiz7>-dBSUmnSzm+TpP`m9ZLcoh|$^+hIc*1Opz01 z8qCZDx^@O7Pt!Co=WKttk^pTSXD|d>XcaIQC@BF7vVvqlfJMl<+Ljc>I8V0Ht@fF0 zJ#2?mHSyd>Hf)Gjx$@|A3*1~aDUaxAU>xVb!hGzNwvOf@qxv2Lx*Yr!1A1pi00+q5 zl#{7qxD}o>&ks5BCvGI11*--2jKtRT=D<2SH}Q+`}b<;tIMx8ysEfxeO7v1z36{&3lLya z;6V34?$6TXD{^-h%hWqL;gPdm_`y#eyWpZT-s*Bqr*rqi>z{q}sqn|RI&042zCXFB z14-zH<<27}XYL8-lvMYowS?1%bj5jBedpHr5cL*lFiA?~$mPY7H$SXivgytGe~n%8 zx68hH>ZE60dG57;{1P7gYN~s_y6(3K;16FMaBvKK?`OT^z<$%*chnKb81XPT1i1Kw zL~L2HX2XReC(bN+@-c{%A8+sZ3Kb++hzNly#fqjCFGidMdKprsNjJg}Lk*K`yaKuM z6v_8Np?WoH)oD?xmA_*D`B%RIx82p}j!b#k`IWwW?rsA^ja-&P(cm2}7Ifbs@zgR| zio2DfC^lE_EhDJY90@~oaizD)*e+DtTAec4Z}d4o1W9Ox|7E;)bs<{11L<}N{QXad zYzySoA5(n)0_@?wD&tZg@V?R-@CYcmmH`R9H9&w<92;P;W^KTL4lkMI2W_@Oi{!mc zc)7C4A1Z;l-69AE%qkp$y=i6K>CjsY+Gko>nx&QY%`NW|BnK59;6#od)Bw`O8g}s(4VmzUgs#*jOPquU>@` z914dZQAahKG7~cc_^XJHDgLi)L7jU=I22Jwlmd#37n#`t*dg!$@ZbRZCD(FXMa7rUJsc7$99j<*v#6R?TF>SS1HRq01W`zp z%2G<}ZK`@uDFd$9v^_P@LoYrlI)6_o(rm;Bn>UNA7NU~_9AuS+E!+_6%PMlY8Z0*#2|a?K z;T=(?z&3`0^$D=OnpkU*_=;woDJR9ZAc>Q=yRle{6y zJfKx3Fn)^Ej!CdRH~vqnKcoya&&M!R(Evwl+)W8&Hdl?JYL#BAr!Tin084NUh=B8q zQrfm}qb*ZyUBjtT-|FX1004ZE{ccZqXZ}+3PFibV)T3hD$ig|vmRza6}Ly# z5ckogLrg|-at2d8wr`n%!5lfaoPX^!;u6NTyoSg=(tNu!5juodQm#HE$Gdn1iC z({`$#n$JKV8*ng38!U5Z+XV`rYOA*d{R#kke&y+urFN6QMhZ|#&1Pf(W%+4jutf2w zG+32M0vV!n^N*3RtPWGLxB&O>Gqn)^cWhN5klR;bc)r=ZN@!(pB9^WJ&|%yu*59a~ zNrJQk8=O3f6C*0)3PYTvso+h5S7Jsk;maU1pWeDlR=XX=3c0&0HuTQaNzpY-a$`R! z&*>|C_+yu;0G9rc!7&_`XfqX55gYIGF(oNTyo~1PK!4{E2o2*IHzE(SchxM z)4X#9m8_Mq7UZABYNmJ>8y1FSGfbN`onAMZFx&TEaFn3lgfDoiiXPK-fr6<}rdGE% z=+@PyI4Y$`v!qR$_P>1Zn`(Xe%@}nL{1TVIIwmgO0w)ojgSy%$GOqfRfM=B3jJf7qGqbN3?wO|6q-Pmpu7weDR(6j zF+Dk|&;^9mYs6vG`YnOfZwDrzstcrLK&u_G?5v$->L;8xOPCdfbN0819_gO^Sqqr?L40j=o`>4U?JuInDF1Y)olxYE3=)UL&sWa5qln8 zZNcoXw=UX$ZcX`saCjDgECfK82bmvWrNseOUlw3?Gni%o>)r?y03Df01ogW7IRq*t zE=R(n~i9>hb+mIHV;D9bsN?iDI&o zq;A)<=bq4u)Yws_NEFsmTeL(=8i*^iXCz7AAz~?uu9Cm1kG;}dd7S7&;nlts3d^CU zC9=HKWLI$wO!bR=?0TnT&k^p^5(#1OP$ViW|}G~Wrz;Kdi$+%ces2Zc|s!Y&@fcjj1);w zgoC+~6z8_7DE?K}7tL4^xT7r7l)Cx*!aoxJ-Nh#*82uoNVCGQEP?kLUp}CVDyE^4u7vYdd{bbdQDaUaO*KG}j&}lCP zr=XyOebDl^w6@PcDH@P8LwlJ9Oz}*VLNXFt9A01f8e%i2U)V~V-4k_I7)ZzIj*X0G zC8vi#WaAp#FgD*>{7CSa6h#2Dqgdi zlHZpzXZv&!Nlq(rDQ>Mfk`_f3<`~ODYZVE_S8j$;vJKnj#%oHy9p4Vr zQVVX#zJj=z32()^JZara(|>%M0H8m{$Zl=CKRVP9*3YdJwA50QNkjojl;>f;a1R0=>CkzK=KN~6(!3=fk~0&6 zY(NjN8$lhuJu=f^=uGT1K1sGUa^Vz=bySJz;|U}k-t>LM2#Pn}nn(@K2c#3;Hx%DH z_v`?nkGsj7L$WvW3-?hcvno!n#hD6(hme_cpI*!%P=&)j(TtMz6mTXlqnKP6g5T49 zL-k#}sAVp}l?WH(=alp`=Gc|DJfx9nW0Jq{A~K(%)I>b*U=xNVs0KP6i3xwTuNur6 zj*nv1KR_y%FiTBfdL8{MGhbmfB4km97bJQjJCu*2kp6hJ(5RYamPmsaK`3BaO)4(F zAwpCYw=G6lXWqa3Gj}b7{>QX*%ADWlwbvF)XT-HzPTN(JW0(0{RzSp4-$?;EyYPNS zOnZ6{x1h$LL{}H@SWME-FL&@|@BIsOgG&AOq}+-9oYeRiqbAz;&EEki;1(($)MVO4<@DrPvVeVDwwQcz^n|A4kl+g2tz71zpCG7 zdvR>yL>VSHUivaax(16u?fyleE_Vep^+Ap`j^qbCRe$7vfx*9&`|MOOv z@!AtjmUra|r$C1A4-X7Vfk&a}{md^X*C#urPdVjMFJ(dhO{#1#wo+&`MPSoR;Tug~ zVNAbd-^S#coSdC35<&8^AZ5h;TH<~IV{>XKCEBvsGqb3a;Ym3PA(ALDx>J^mqPL_0 z#%+Ar&i^iCS;xAHtf)x@UFEE%FTq+c?j+=KFzo?OWC$}3OO)fqe@Wz}??x|pFhLP+ z;R)C{s(MX6R73ESRR6wi zf3j&v_!>}6J7Zw^U`DvJ1;>94_ivr<+be(;!lY^=@!<(~-Sl17euoDrkemZH+R~Gp z8qe@bo(&T&?aUHrs6=LkkKW~8SBu!CphuS56#ZP$NU<-p+`R%??66ndXNbHt-~&wqwwJ~pQ|gG*NmgCLCr)4v*LEG$;!sL@G_uaPP` z*h4ZZXEm`)6a3s6=JPo=n=waH+MCWtkV=>G##(b#GN#d^bO#}jkadqNdjQO2ulcuf z)jVE}5KiSR8m{)sa}k>1Oa0&yM2y}&oo*ao`eb7FM&fi@cF5jC^lu9~qbM$N*w zHV&rufORXBrRYxnK2x%5Q6$onWfLIE8a$cu3m%}5*fMh=>4A`#tiB;mm&?y^*Eo3> zAIO1Tt7C z4C#2Uj>As%kZ`W78Hn4-jAnv!igtyro#Gt@>~VNMlthN>jYqLxirN$CAXJ{~Y^MA) zY~E`4bMyY&3BZjz5W8#bvrGqkC3|TsOuH>M{)6s~Bs`uO)*-%0W$;FgBzDV}6W-?^ zXD!U*a-yl(smrUE_;F*x5gYlYnfbFtcfIc`OAJ6r&?|DDym$HYVI4!{oj+4ao7S0y ziGv5i@!;+HzPi>*(=KK4%lD zosn<#!~MA7CzkA=4URokyT#VSCPiFJRokRtK*Ad67BW<=%s82Ok1nE4fA}Qd9@n?) z{)+?81LGF!>SDP@gUuT?tCb_QS9l&j5S2(1O;nTA(ljyp9WO%vY>aA;ersa%+fW#T zy*YX1W4R-jc-v1ztJh~O-ePTT^Gm-&2^^c9^iDo$d2*-ug~MahAyJ;+q?3oL0y76m zc(RaqvOE`7>=Ne6vQgTPHCC;6tw1e-bd_sYnQ)?59(bxETaoF+-@-uQy;*61|A$0O z9!XF2!Sa$~MJdB-qoAW^2@0l4n*;Q$Vbq zZxPjI4z*iM0`SyIbUebqla8a;J;R^q@Orj zYEv|I?TGZq5y_Qv9w>)1`43H5Ck`LZovbzf<5g|VRZLEDw!IGTsZuiz5*HfS{*{1H zP6C?%JP9sd<&WNkLg8A4P}uje`dpU5(-=NN<|!QUY)_W~(aO|^1bk8%Fd$gYG z*sHsV4%*$lAxg;I-FR`L(YaQ42TrC|g9HU)6n}Xt7_3P7p}!(P`51!1fu9Z#cX!UU zMct*>tLT4FeYW;)M-ZV(KGf!@h6)9|v1MF8XxAUeVUOl<{@jLvGG^0QwG%ECPuHY) zx@74ROYh8w=*j$` z1+Ar7%|CJxD*Z6fJ|0YGGU3}qrYaOlR}r_vMTVxx?TKR%eGEa~jneP0?xq2m6B#`;8Zni# znJ;tl`u?`{>|tZio{uOL=I@Pc!2#EyNJGt&{MOQT)4oteUmpziuX;sZ83}3- zcDI!xLgx1s#aefp!`6dS@sHM6?ABKBe_#p`8F5|TzdosQFXl^C_`G!r^NPFqPuq8@ z(P(UNyG`}Y2JfQ)6ml?nJKMRidZr#U3|d^@)H<2$-^7SEHZQX2YrL$&@2^L3 zQo*@YA4=CN5y}JrGD|D;w0K7=s{xu)7cDjas`N?ajHfEO*S(%9mTnk8+0@p%S!y^8~30>atmbSUNx8udaR zE(r06!dk5(>8QJ>d)UgIf_?~J03hp2JWKEl_*+~T{>B}&dwN4x)Ggi%q|1ZB%JRT_ z#S>RT?p~7}6P^j~pWas^=)6iyc1TVJZjnM> zdW(ydOZ}#ake5#vC8=TX|BBE>RPLUMT($-NLJ#i#-j zsJV$oV&m$O1*f7NrKO|xc%2($mHMP1{da#&Qt=(}B5k}io-7-vYaarjP%SVk{SAtH zD&W1;C3EAMf~k~Eak~>0RMiVxZP&fIw4Ykq<%QA5(PE+*p~tPRHU% z1XTu8cy5yE&wzjzLJI)oTsNV$s0RPDPnImOHuw0#wi*>~LPk53-tP_IQvg`X1!tAY zlMB?0hi@cI1~mXJ?w~{}s?|LG{}qvt%(LrYO-8;{+;R zOQmmJinPD9JDpy7)rr44@(R5_$qxLO2!H7tNF);T5?BiZ9gjnVF4qlzs#cv|x!mPk zzV#86`o~cc0w6sc&l#oxEIDIdEMZ=;=eM8B*A2vPmH1z}9Mw>cps4nO@@*kknk9qn z=@`x4YX5iy7Q%X*$CNnQOyv3{31XTPXo)36Z#MS(_&S+ZRki*lyZh3ubZXP9xbte$ zr;d2yY1f=sEZP@MK9!UQyUvH)zixLd?$4Qg@%yxFVQYb&CcB41Z;x;)@g?mdKt-fcck5X#nqFF<_Gz!DcXES5v0-JG-@j<(2DyCKq~&W40-+B8QRPuw zZHnI!8{76~J=JXr#5#QImQ=+KGeiC5sjiMr*!J)ICHHqRgGDQbZ_5d_?sl=oGUMW> zhUC_!%B^7zLal-Tu<+tYtT-r|iaD<3uD>;R`r+a=J@XmN35bM1wf}Nqb;6rqA;QjU zp)$}LWCz|V%lx2fjpFIgnF6E)@rjj6k#F=arSh&PAMu5^J#a#)9vq#!gwoPn8L#*o zv>A8nb*ByX@d96-NIp`f=}4N2in4h_0)D4OrF@we-YBGy<~7p0`69jxGeuX>8HdJ5 zvd}%tY+RPA6~{?g!pe(3ju^<#zHUbAX;Sk&53tGGViXjsKxJdIIpU@sHu=DI7bS5? zEyoT}YO|GPQS2LV8s})W+YRnQ=rer!tq4L9B4j>UWr|2GV)0m6slKMpteliUaPlqs z+;}dY8;X!}FNJ_)bWS|a&k7S9tzCaSCQF}s{jlBs!0V?}3Y_DB(|PdO^D1>YpWA7B zh>|FY=-8%Fh58aJt3x+Lzu*5Nwjw1>-KB<+Z%T=T{QBy?#s?^JQ)yh{Sl2nJKwg{+}*v@GtOXTB$VDSBKX+~f4&ehY+l2rb5Kdc%~>8uZw1 z3t-abe*_KyfGMlw{Bi-eM9HKzt^&Xlz?Js^Fy`Q)F#raXf@1V#Qv0ePTLhGj@OIs3npVO7GDvduRT6qaG! z<~d{vxpfW~3rpelzEFE#QIbS$2NRAGv<#KCRdz#-6}v7M7Fi{Se`2u?|Bpk*DpAYm zgCvLf58i;rCD5P^MF$|QX@|&wJc?Y6K=*1>&VUTPefcs8z>%M>^x>gJz4I2yunT^Q zlNZw9vBDr-j-thopqtSklZE^p7L2&Uro#CaFsfce3GUdTSegc4@?t&q? z?-1Vy`5mSvq?ZKVtwrgwSPLS6PzRyla*?i(j>^HUtG_RZTK|#u@JQ9H`g-qpK6orR z76)mazU~#}EfpXoFkqWE%zn{lx3*`x$q;%V)KBQXy%fQZ|IgHs3>Foc_$}!FAOf!z zB!lzF{EN|em@y-DZv}UKX$F8((jzIX!R7ae_H(O3T9cdb7(a$k0wD_#FsHS~%UWa1 z>C4+~Es+7>SNu?1s4Q910m%@mp|r!g<%0oz&RMPQ#P>m+UK7y$c|f5%DQRg>3z~YD zh~=G&8+knU;)SJxJ9|?FlaE0ygoRLS;(rnw8)=ibjSY8oEgIee7L9Z{(m~vAwC^KM zI~-+KpPZtXxApE4h>+1MW>9E!JFFbG7d%$YLNs@3ujPXfdg!6N#hXLv#zBwnJG1%2 zS;Y{hAXKrfu)kB_xBNY}3y(&7V`UGqOYD(d@j$;K$qQZ3 zn||v}V(u{@R7r+Sp@<)RT0(`^V8w2uRATF4CQBd*n^i6{6XFo6065`h{6quvyRuTH zFF!0rE2so#Y8#n_ybi#m9!$O#RJLoFPWOy%PCOp#iKKP{1jWiRl;$}!N2b`YwX;;% z(6vS>duM|jt$=VHgk$z!ibVjBE+;bay@(cWZmw+~Igvu&H9B*IShe&ite`&b|?hOxcfNBcsP18E(sKh>ET` z?Sn`8aErye&x>2slCFwPqll4o=~V#=!`R4cLEa-tRj7Lg#;RLJHI4InO~wy(9m(EC zrPH@*m06{3eccpVx^6Ms{vpq|^>pL$_%$t$FdmTAHn~nA!ymn_vr$gR7-tglh{{mc zDLbAhM3|MX?^LB4Q>A@p9+IIcG#bD326*{L>Xmk9t>S3tT|Te5^%rqa`ztF^z5IJ|3HEi4 zSn%2#8nHn0;gy3n`GaQyGO7Obn<}&S67IiX`7qyRNsqKOx}1+3)9J~w7ir*IdAJ#G zoC-J}o!c2n#QTV{%nD^`-?F7DS=h-+xwOMM(Jfc4TW;^5N5bxhU7!A5Z#?XJ*d5?S zI|WY&x`ZWNWnM|OKv{8+Zip}usDZG70-i!Z2o#mwT`Uqo89fxW1(sO-;sP(9uPdAx z*mjd&5_Q;IgwJ3!1^x=g$t>hZNZsxamFQum?95mt*4}6qlaAd{wFb>tfzafMPmSPD5xC|CL<%<%0#h$^SC@ z--$BR0O40}xDKT+mBRqcrQ(k(N=H8TiVlb*9WMt|YSs5&Ef76z3cH-vpi_rc^r|EC z{_7Mmivoy{`J6)f;Y*J4JcgPgtNb!I_iDP4$I#Fu74LBJzD`?{1ZO-;W+5v8kU%H| z)WGc@0&7oOV;X}-#@xZIy(U2ujo{c}F|YkcXateNT%nxFrBf_oOz75Xhd@Ao)cp|j*E z$0H6M1kDp7+}YeB0YB(LmF$gkU80iSa{&rc{dG^B%I78UU-RxCKR%ep@&|v*&%K(q zVww4itdf1l2)dER$=+ZS8}n3$f$UQ*hEoG^2I{!1yUJGci=HjwzkanjTH@JXLn(M4 z#X>m++I-P`RdVXt@_kC^pNOl=rYSQrFMs&37@zGjhYW1-E^-^ zb4YJ^T2laD*8ZC3*-TZz`zR>GRpw)prOID`lpT}}ptCJ~a4et5Ty0T}0F$Y%@L z!-g&gLx{|SPzvEZy5bmusW6F?47F4?9)u|>V6O!fU*P)rC#itD8^sbNFb?u}0LpqC z$uJAzoHGj^@V|ZH5XjEHymMi$ud;aESb_59F&UXTKPPw_Y4nuDWKD~*-y3^DN7$6` zeSFur|C%{rL8COQL{(=0Xz5b>`>MB1v*O%`|5%xI$vu!HF-86GCH4>0yW2kA>%OXb z@Z1D+z=?AYDlfbHoH6IO71@cWb*oMX@KdXGQxUtU74k8Ia=hT)#f9g@Q@Yis@WAO+ zx~B=dxW;oFi`|!1+gZ1J;z89__acWuFb?m6@Ey(aMF4yWz~WuxU3rguS0onyPW(>* z;awsT-LXK)Ef)QM55p8RQQT5GaVVatmgCODV z4v}@ph=x%Ky*wFd9HF?y**Qfa7ON@qL;=OZ&msCE#Nx1q7t@ye&<-pk5q@3ZEGdVx zU&z5jSN#5#YvEV*#CHIYWAMVhfSd&S{!|3K*!r#Ub}}@e2c$TJ0SHME0KUscz7PvM zA52eMi30v>f%xOc4nGwMXM5bA2u06#cirfzeoMqM`8?!N)vtU9pY-V5KGA%?Z(+@M zW8L9U3ApTx3ApzNh4-L!2p!*MoGbJoz3rW~7yzWOw;PiP0P1o&I?MSGhF=-?WdhLv zKEE&^xe+cb*O=3EvZ=WOIw45{Pn!bz>YVnTa*iNgA5W!1gljs@$3FA(f`w_VHSHMR z5%*i0c;oRI_hLE8k!+p6&17lzxi<)d=re`^uwY5Acj%?iX7p!A8n7~iKAyl3I=9hp z)msC&Edan*Im!bv?5e4JNx&0Hzm3YRnNO=(NYyxf=}$ozKs)Z*A#DdB4xtmmH~@=V zhx*$iEwQ{Hg*F_SL7_?C2NLU>?xg^nro!pgt>K;Vx+y~POdSUdTyp2G03ZUu3Jh0j zQm#_SRV0>vp+UfTy6&Yi*2(6r^V|Ow{O{6g&X1>+*fg%gQ4xi&YBJ5@gbsyPh z%BH_LDFqgm4n?$UCxu+@TjWcH{CBrO?}-so zk3H1qqMPR%0{zS*C>BLW>}%5LBX|UjQ9A>Z&$XjrddKF{-cq8W4*JCW2cFYUK#Vwu zqY$MrMNOxcPlk%WWP1RJKFRXT}VMOFDC2dBLL~;%P_BS$tw^dE?<#Wdjr&S{U9Hc+Q;Jo zjp<>Nt>(ov!VuCavoC55O|+0Efq;hjipjk zY38%?ik!$$AWX&CrKRFwZH>PFFLs}BY-6l!RegbSMsq_?R2=zLB9YV<*$GRQ3G?yH z3;!lfI_o~B5MiL0j#@)0c%7OfK>1R0c(aKywC3*Nn#uC)_Wp!(bkLtLX7h%G0Ejm- z0oACOU*c|9Qy#ysH9vAw1yCz}0JFK()7HGY()d7sB!b&^oOr`;Y}U5wb#6MF^;>T9Jsa zNN3_J!>g#uFnq%>p}%1^f2#vkKnx*wW?|vqlI`4ooC^3{2*nW7{vI@#|60~)uCvoaW!ZY)m$YP-Xz& zhL8c_ehBT{YurpePymn%&*#iIm6LmjwGQ$j{J%iTX8{m|ic$dpHC#O^$OL{NKT`(8 zl?~G&YH?=~1LbD{q{K^)wuxa9fYfk!^Jj6DDz4GgJ#nQ*t78Ewt-`-esobtq>}ODJ zQ`mP-5uCC&ubD~bTfC@@eR4_}&g){f9Hr?^E*9UXBt*RI(rrPaD2L|WL8(xz*aWLl zgw@!!&99G+@&t;dFqz{81ceS%mO3k7tS7wu-*BXJ*U7M}=-t&XzDftMKbXCE^1o~h zeRn$2U-kq;jf+NaPM<*QwwlWZELb&W33$x~SFt%k24rg@2fKya+;~8*$NhRkpgu+) z2pCoxdAy{Ee*fARR6K_%WI2MciA5JpbraZMF3dFz215d%CGq-&>%~;|v#MhKoWvY1B7wh1UPvv#lg`5nd@o+OD_(dZUX^{&4|r;Z4Ua^H zr=r4VQRN{GxWH-5aVCnoY{Jq8fSyHgUji>uJ_OuQoK0c5rE$AU;l@r$L8qi(m!x28 zH`p9}84UZT!7rrSnV=Iaz~fg&e|5n~FG&qdbAG6^z*7YCTy?1)?F0Y4&cj0keQ4WWbKxd2sdtJbeP{j1TM?l@ z2><^EF#t$S9I#>q85 zwb#>+UjlX+oe%Jw2_hhv^9WcO^ysNwZnhZjeA(T>z}L{Lh~Wu1|Lc)B?eatD${eDGNK848burz|`eo-*)Q6tnF?|Ey6CPjiUd_*p&I z9UGXeg3z};!o&SxeVL~YZZyxJSV8NDj}a%VN5GZz7N zTs@LcHlOkTXR|>+;arcSG07F-7~&E=oJ_)!V<34b6D4?CGP}LIszC1O>E^N-7H+Wz z;i6BGK$gfUQGm)iQ3{4CDEM%(5T?R&XN%KSA>5UlUANye^=hC~*X4;uBL}(I;{bAe z0n%3IOyst7(6hh&VfBgNF!^)NZ0Hx;z0_-7FsZFFJti}dFWuTO;4rV?$ z+_z0Xp3m3mI`6T8tE;O0|hKGEE83)L%&J%$F0B7*hah$}7eD6BVD|NQfV*$$U zdCEnf;U>2|B#Z#qEbJK9l2X9Zb^s%Yv!6Ici25$JNLTcBunge0Jwn&b($cQV;NuP+A}go0XeTE!8nM*e{gK1jkeR)`|bBAo;a6G4t zK{6&Ilgzy|d)qS})7If}2mWaYpn>LjT_>4e>;qs5oNcxkNE;0YEH?mPK{xYqPFbzo zq1~#wz+PCH&6=cbMf^krf;dcNj~##``dmXcuL<(vn5|Q(;QQ@{jrENp5aKLWW_uMT zlvmEO8fx=W<8|RL;Lg}OBZ4oI;xvaD>+>R)($A{^YG1WG1~fql9c4)&w>P>NAmyuP z<4DJ8+E1AENE{(egcJT)OZedYbTM=6n5Djx{gXZ)Xyf5FmOL+R>T7R5n>2Xy@}Z>1 zWADV!b`A#sJ2=Cl*GHN8Xu~;P9i)4}WEc+G^eHqABKF%U9vwjFgRs1@(nYTfwI&HN zB1|2<f>bm@Ty(7yo44C5@b+OSgPb8#(lhZ0y zc?=%r8&6z7qM~oRY5`cG^qy%6g_kE@9!3rOHv<})b8{m1ZnpsvM=(JrB#3FPi%ER#pUuV9` zM_xxVr&&0NNyL(Uv5qOK&G;xAdg01ot&pfl7~gMJ4`5lLN2U(OLRlY<-ly+nq1DHW zT1%vQCtd6SMxP*`|HRl6u)c~K6@NLPk{yKv1)rVaZbM#z45C@^92YeHATca{suDUc)M2@8is-K@q z=RJII(5BbWb?D_XsPph}RRSJ9fB5Y2{r$dtbM*!ma5V~oAo4xA&bJuy%xmJdzY#*e zNoWpC)AE#ZcN;OAoJmkAoAim$H5sl1wD^(Mj`zcK>0AHkTuS(0V0wJ@UBQgKG)67Y zASGT%EGl!hM9Drt&Ronhsnm=UzVIDowNqRNz$JWece|md>vTSJOr5V2p{%|wZrwOB z!QLf+G{+Qx-May;5mN37fHOKv)g5dkTof;UadDCaLyJcz#Hb#^oOTE0#N@H?!@IlN z>15<{fs{yKf_i(!bg`M@+pk4)ceW%X7>0gmF}Nk!d&(FFDkoxO0WR(#d=@7V7w#r= z%jNumAWl* z+6P>n%u5b*!KQnsJuYO1MIkL;;Vpl~JHRG8s5bGO3uWtSyZNDbH*}6N6=19sX}FxN zJTw3=s=s6!`%BLz!N1NAF~R=T({Mh_QS;7=F|@RZ0;~>Fb{B3_B9b>LbA{G)Bv}QVn2cVd5;Q@>YF?&6YSPjO0j2~{T{G? z+#eoZ-R#a!6;K{TK`hkS1t8*TDt$i9Iz8Xz=tRXgukP@%(N!a?24UMQyU6X?TR6NW zLco=7Q7Jo&gR}@gzwyTY8g_IPe*_^Q1~H!QT>|hDdSg-kmyU?mmB|qVuxByCc&9kA z9s6dxhz&>Krcq~hGUO_fL)JMuoHelGr_bazRfO>ojy_kXQ;@;JOWE|)i&f{Ha8pjp+v^$lcH4X>28|B~z~P(2SD%0K z{^8Z#_4e}oWR=b*+uWH>yQK&ashqzUdLCn`>@&5Nv6M=wPvkMwQo?D`V+ZGg`{dHd%2YC}(ti!6!V zLDy(0vL_41X(6avV;^bEKICpUm?3&h*0I2qx5wLUlNr=|(f_;o*9PzkFQ1L0&~(j# zZ3!!7`8*eIq4Yh2<1ErtkJ3^$g8)lRH5`#1QzBs{ZKBj#b}6L})KWj(4*|~B%PdU8 z#UzFR{2+_`#-#ZB{SE-wpvhxNx^coId>8i^0^#xD0ns!7l9Kskl#)WVNquYgt)@93 zot@S%wLrwa2j9l2(W(XrkObr&&v10e<^mYDiK)cgQlev{&*G46j6CStmeH;^Jjq^_ zo}pD<7O(7K^XwG}d=%xB-U5nonk)f__ko|Mn^ZRX#n>^C)XJw^1RZyBtf)IScS`^h zm}J{vletl~aF!!0P@FfKPpa5YLVIS>zwoPJxqN^E%Ex4$M`q~oM$8%% zS7w%zAoTLk&jA#d(^A@@0g)-`JbVqsNeqm#^mke`Q2@KdAyvCA?hNDFeWYSl;|`aqw#Vy#_#0_ zQ>Xi;7`K>^wlk_Ie|+v9HS6=LT+?1|+bmcOi8otN4k@ zx+-nzV~yj`%SgAgt;;sCId$nC4DV?si;$X4fpjhm+p4grcj12jE~L7_H(HiQY(YRr z&5n5n{l)WN@&>T$RM*+&7je`xpdl`R4SnuT{MoIh3V?-oJtVpGzgcKcB4Ta5Yrq}M z@ZFqxMh;~I!tV-83Y?Ic)<`yDvK?UR#R;(vjn?yIP)@I~k$xJb#B-YGT_H2613-I~ z6~Qrmx-Gyn`EHO=EB=ZkL0grl6DQV2KUdNm=6e7tt08ydVH+!XeJNQ?l2YH#;%c2v zWWj^cJPh$Ni2!FNPF_C3byh!U8uf@;&kAtF1ajB9SDF0Upt|6N=gZxm_aYDZCZX^Q z{NrEQ`YkQkioFAfiC#=Yngu-tXR4|7+up8WGc4JL`V)>0+EUH&?7?s!{2_n|BvH^cwB`jT(i5@C zm@*_s6Mc1Uv+T!^ocEMf98aU`o|Zp{x*5F7s_WO3Zff;uH{EdTq~#ArF=Hyb>frlO zD$hHj&($-3^D&`~Hy|PW-(H$(Ekc4PPEp@|Nsmug!%zXehFjdX73d`aq4(2!v08hA zE;}IV1{XAy1I`2kJwGh$g_^A*+^Uk&Ox?In^)L`sE#b0#t1#fq?NjI8+wQx(d43qf zil@VHQVu`hI`Ogbc~Lt#DcsUatVF12%fcCLA(gF)IBcsH@rqd&Gr|}zZyzC-9h=f1 z>u)07&EOpnfN_iBhL?4pU*7EUwAEy(Y;-XvIINSP0_)mfC}A5K*K(p|trv)mF?KF5 zPFB;zJ1%%P%e|hUOs9Ly;w62q^oAz4O+p>HPux(-hViIH7umOOnQ0GzkKnU6ukLQH z%F+!2_v37%&9rr$pKcLp88#PMrC`e=nR!oREmJ+e*N=cqG|sLAlK2(C!fuJ0gFdV#Oyap2x@WYB94Tn|Q+`OV>cgfrqB@V3(SWM&0=o zG2V29FD2o9y+5Rxqpv+~{KXZ}D}B-kjjNeT$w{PRf-EK1WR{VVWv9{%7&WqH9)2f5 z*+DxMvcf+OfB*LDU|cv30usbQDCW5L+q}O%TLc5O;#Mel1z4DgSkF&r>$CDzq_2m= zUO|2k9`~))-EOtoz2CiCU9Gm`uvLj5ePJ7+&mdv=n-1_+OOd0BFc!x}v<-BNKkA{h zt0HC72??3W;_rTYkpf?S@8{_7^#E^O_{&?s?Z>x|53k`JcsresdY!WKnQtN# z2|7@V>Wo@4Vj%`jGy9$l&&|p{HddM`W2CLW`;6BUTk+b4qbLB*)+y=Py3V+G6#7bE zu}$4A$incFvo$`Y)u%VH7j2Dpy?{#fT6_+=RsS+VC@K4d@*8AI7{II(X1ESuaLuA= z?@y}j?cGP(c+IAeSm5mD9=LC~np0YK_(q zuGIM@-yrS@0y+0`$CweG<1He8t8%GNfKT84eN4XickbE$=4;IQX0gCL2tdF;|G;lG zLF-f~^O!7z-ORW1AEsW-wdHh_dxscqJZ;i9hv9Y}Xc!6Mg;rSUj0VUEn*;>MfNg^$ z?FH9>+#p-X=J&0NmUu<9)2;!nly;HRI>GJo{Y0mc*Gt-Qsj%Hh>@-NyM(&OANItG) zd`kssXu_YV3i=a4m?m|rTfn)z2~Rwz%;VM)!7Zj^f*8+52hfCj2LoZU^Fx0QbpU(& zN;fmmKN>nygpbKzX!$OSf4c6}BCJ|z$I^v}I`cQ(M~a&0SBq@{EqTQQ=6lZlmQ!wX z$S3TQr#;8DgWQ@enW79&5Anm8W(&@5{uh^Eoo>#xicTw41%f*R0_x=79ME9%@O;j# zvq9CFAZxDBK(dH}1QND0k_3>DKRr5nV>Nke?SR?4Oy55g^_6;m7b$mML3+_d`*uLmdflq@!$*~GcKY4ae*urF?&!#)wi zlDVsEA3bG@dBXWn58X?qNm?g74kUp|uWhJ4Qn9$w;mf7U-F&t$i6tcFbeiG06;Bz4vAy@ga$&UXz>5L2#+>W%9S$tfP3-HU)RUkDv;&5rk4cWZ1Vb+Bgx#CKY}a- zH5eOk5neJZ0B-xRMWcav6`|ma58y#(vBx4uJ0DAktbQy-p~O#9IfKp&!s!g=qJ@K# zH&lH!G~}iA^3^God4tp~Q_m|nuU6MDCYMPkO`P1wE3ms}fzlN!P^wX-VG7k5|6Hq8 zVJXQ3Q&1yM8(|28I3w$2BnDm#SwZyB_h)&$maWn1y)16j`YaU%r7)}^3KUl3;aN0R zt;`_v&BkIia#_;Y+v>4=I>)MCW{Z^)#~S4k&v)=jwYyBsTDd$cd0#~4V;fym-so8f zAO(Wr<(ez<9FXsz#Rico;O#RXg|52p248;s1-R*!+wKUw#3~6dDx2Nar`Uic4mm6+ z>^)eBP+`>Wxv#_n;WQ#d`YK9-(wdji_LVkEq*G1rizGEK;q_H3S&CF?9%|5}c@#8C zmmzaBWXaaTpjEpLZMK-;h{3+MGII7gh8tm`$)=cO(d4^3#y2O8b=J8t$U!dhkPjPd zWX*=HArxk&&1=S3@fJ~@`E28$8zUpneB4LPKn18-)u9@GuM36ri#gUpB5ZTtg*!&N1SoR zZGjgaSt#BU&;54CyOB&{ac^K=$3Rs&0WxpiDB3sU+JU~FHW--QEqzn!z+p5r=cJvn zpuhd|tkG^-S#+g#x1N=#p~ff)y3a<8op@~D)or{8{Y26b%|X)2DdLMHb}#iIBv9c5 z6-7d!Bql6TxSt9^u_+WgK!q?--#`?cpdbtsf+d1buwlI>i=mTI|RB6hezN_kFn(sFkt)a z$^XvbiT>v>4>uJu{(BY4ENmaG=P)b!vpR!LAN}Ut2HM#%6@Jx=yEUh3-Nu2(zN5QO Tu)qC@^=ALX-E{KC761SM5QcHM literal 0 HcmV?d00001 diff --git a/e2e/mig/6.19.5/assets/barlow/barlow-latin-600-normal.woff b/e2e/mig/6.19.5/assets/barlow/barlow-latin-600-normal.woff new file mode 100644 index 0000000000000000000000000000000000000000..849ac89262bffa801b80c529268f30c5a9edbf16 GIT binary patch literal 18748 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 literal 0 HcmV?d00001 diff --git a/e2e/mig/6.19.5/assets/barlow/barlow-latin-700-normal.woff b/e2e/mig/6.19.5/assets/barlow/barlow-latin-700-normal.woff new file mode 100644 index 0000000000000000000000000000000000000000..9fe6949295006bf3f9e40a791ac605a5d0eb2e5c GIT binary patch literal 18644 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
    6@Z+t@Zzs&N# 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 Q9L!UZokXXm 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 _8H|9zT;P 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

    T2c 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
    \ No newline at end of file diff --git a/e2e/mig/6.19.5/inject.js b/e2e/mig/6.19.5/inject.js new file mode 100644 index 0000000..b9f98e1 --- /dev/null +++ b/e2e/mig/6.19.5/inject.js @@ -0,0 +1,3 @@ +(()=>{(function(){try{var R=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},S=new Error().stack;S&&(R._sentryDebugIds=R._sentryDebugIds||{},R._sentryDebugIds[S]="41ceab6c-d76d-4f9d-8be5-b8c72e2d5edc",R._sentryDebugIdIdentifier="sentry-dbid-41ceab6c-d76d-4f9d-8be5-b8c72e2d5edc")}catch{}})();var q=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};q.SENTRY_RELEASE={id:"6.19.5"};(()=>{var R={72174:(l,r,o)=>{"use strict";var h;h={value:!0},r.E=void 0;const f=o(95402);function d(p,c,m){function n(a){if(a.relayed)return;const u=Object.assign(Object.assign({},a),{relayed:!0});p.postMessage(u,{targetOrigin:m})}function k(a){if(a.relayed)return;const u=Object.assign(Object.assign({},a),{relayed:!0});c.postMessage(u)}const y=a=>{(0,f.isTRPCMessage)(a.data)&&k(a.data)},b=a=>{(0,f.isTRPCMessage)(a)&&n(a)};return p.addEventListener("message",y),c.onMessage.addListener(b),()=>{p.removeEventListener("message",y),c.onMessage.removeListener(b)}}r.E=d},69492:(l,r,o)=>{"use strict";var h;h={value:!0},h=r.um=void 0;const f=o(25598);async function d(c,m){const n=await(0,f.retry)(c,3,y=>(0,f.wait)(y*100));console.log("Port connected");const k=m(n);n.onDisconnect.addListener(()=>{k?.(),console.log("Port disconnected, reconnecting..."),d(c,m)})}r.um=d;function p(c,m,n){c.onDisconnect.addListener(()=>{console.log("Port disconnected, reconnecting..."),d(m,n)})}h=p},25598:(l,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.retry=r.wait=void 0;const o=f=>new Promise(d=>setTimeout(d,f));r.wait=o;async function h(f,d,p){let c;for(let m=0;m{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.isTRPCRequestWithId=r.isTRPCRequest=r.isTRPCResponse=r.isTRPCMessage=void 0;function o(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)}function h(n){return n==null}function f(n){return!!(o(n)&&"trpc"in n&&o(n.trpc))}r.isTRPCMessage=f;function d(n){return f(n)&&"id"in n.trpc&&!h(n.trpc.id)}function p(n){return d(n)&&("error"in n.trpc||"result"in n.trpc)}r.isTRPCResponse=p;function c(n){return d(n)&&"method"in n.trpc}r.isTRPCRequest=c;function m(n){return c(n)&&d(n)}r.isTRPCRequestWithId=m},83346:function(l,r){var o,h,f;(function(d,p){if(1)h=[l],o=p,f=typeof o=="function"?o.apply(r,h):o,f!==void 0&&(l.exports=f);else var c})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:this,function(d){"use strict";if(!(globalThis.chrome&&globalThis.chrome.runtime&&globalThis.chrome.runtime.id))throw new Error("This script should only be loaded in a browser extension.");if(globalThis.browser&&globalThis.browser.runtime&&globalThis.browser.runtime.id)d.exports=globalThis.browser;else{const p="The message port closed before a response was received.",c=m=>{const n={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(Object.keys(n).length===0)throw new Error("api-metadata.json has not been included in browser-polyfill");class k extends WeakMap{constructor(s,i=void 0){super(i),this.createItem=s}get(s){return this.has(s)||this.set(s,this.createItem(s)),super.get(s)}}const y=e=>e&&typeof e=="object"&&typeof e.then=="function",b=(e,s)=>(...i)=>{m.runtime.lastError?e.reject(new Error(m.runtime.lastError.message)):s.singleCallbackArg||i.length<=1&&s.singleCallbackArg!==!1?e.resolve(i[0]):e.resolve(i)},a=e=>e==1?"argument":"arguments",u=(e,s)=>function(g,...w){if(w.lengths.maxArgs)throw new Error(`Expected at most ${s.maxArgs} ${a(s.maxArgs)} for ${e}(), got ${w.length}`);return new Promise((v,T)=>{if(s.fallbackToNoCallback)try{g[e](...w,b({resolve:v,reject:T},s))}catch(t){console.warn(`${e} API method doesn't seem to support the callback parameter, falling back to call it without a callback: `,t),g[e](...w),s.fallbackToNoCallback=!1,s.noCallback=!0,v()}else s.noCallback?(g[e](...w),v()):g[e](...w,b({resolve:v,reject:T},s))})},A=(e,s,i)=>new Proxy(s,{apply(g,w,v){return i.call(w,e,...v)}});let _=Function.call.bind(Object.prototype.hasOwnProperty);const O=(e,s={},i={})=>{let g=Object.create(null),w={has(T,t){return t in e||t in g},get(T,t,E){if(t in g)return g[t];if(!(t in e))return;let x=e[t];if(typeof x=="function")if(typeof s[t]=="function")x=A(e,e[t],s[t]);else if(_(i,t)){let L=u(t,i[t]);x=A(e,e[t],L)}else x=x.bind(e);else if(typeof x=="object"&&x!==null&&(_(s,t)||_(i,t)))x=O(x,s[t],i[t]);else if(_(i,"*"))x=O(x,s[t],i["*"]);else return Object.defineProperty(g,t,{configurable:!0,enumerable:!0,get(){return e[t]},set(L){e[t]=L}}),x;return g[t]=x,x},set(T,t,E,x){return t in g?g[t]=E:e[t]=E,!0},defineProperty(T,t,E){return Reflect.defineProperty(g,t,E)},deleteProperty(T,t){return Reflect.deleteProperty(g,t)}},v=Object.create(e);return new Proxy(v,w)},B=e=>({addListener(s,i,...g){s.addListener(e.get(i),...g)},hasListener(s,i){return s.hasListener(e.get(i))},removeListener(s,i){s.removeListener(e.get(i))}}),P=new k(e=>typeof e!="function"?e:function(i){const g=O(i,{},{getContent:{minArgs:0,maxArgs:0}});e(g)}),F=new k(e=>typeof e!="function"?e:function(i,g,w){let v=!1,T,t=new Promise(N=>{T=function(C){v=!0,N(C)}}),E;try{E=e(i,g,T)}catch(N){E=Promise.reject(N)}const x=E!==!0&&y(E);if(E!==!0&&!x&&!v)return!1;const L=N=>{N.then(C=>{w(C)},C=>{let W;C&&(C instanceof Error||typeof C.message=="string")?W=C.message:W="An unexpected error occurred",w({__mozWebExtensionPolyfillReject__:!0,message:W})}).catch(C=>{console.error("Failed to send onMessage rejected reply",C)})};return L(x?E:t),!0}),I=({reject:e,resolve:s},i)=>{m.runtime.lastError?m.runtime.lastError.message===p?s():e(new Error(m.runtime.lastError.message)):i&&i.__mozWebExtensionPolyfillReject__?e(new Error(i.message)):s(i)},D=(e,s,i,...g)=>{if(g.lengths.maxArgs)throw new Error(`Expected at most ${s.maxArgs} ${a(s.maxArgs)} for ${e}(), got ${g.length}`);return new Promise((w,v)=>{const T=I.bind(null,{resolve:w,reject:v});g.push(T),i.sendMessage(...g)})},$={devtools:{network:{onRequestFinished:B(P)}},runtime:{onMessage:B(F),onMessageExternal:B(F),sendMessage:D.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:D.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},j={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return n.privacy={network:{"*":j},services:{"*":j},websites:{"*":j}},O(m,$,n)};d.exports=c(chrome)}})}},S={};function M(l){var r=S[l];if(r!==void 0)return r.exports;var o=S[l]={exports:{}};return R[l].call(o.exports,o,o.exports,M),o.exports}M.n=l=>{var r=l&&l.__esModule?()=>l.default:()=>l;return M.d(r,{a:r}),r},M.d=(l,r)=>{for(var o in r)M.o(r,o)&&!M.o(l,o)&&Object.defineProperty(l,o,{enumerable:!0,get:r[o]})},M.o=(l,r)=>Object.prototype.hasOwnProperty.call(l,r);var U={};(()=>{"use strict";var l=M(72174),r=M(69492),o=M(83346),h=M.n(o);class f{constructor(b,{post:a="*",listen:u="*"}={}){this.window=b,this.addListener=A=>{this.listeners.add(A),this.listeners.size===1&&this.window.addEventListener("message",this.handleMessage)},this.removeListener=A=>{this.listeners.delete(A),this.listeners.size===0&&this.window.removeEventListener("message",this.handleMessage)},this.postMessage=A=>{let _={...A};"error"in A&&(_=JSON.parse(JSON.stringify(A,function(B,P){return P instanceof Error?{...P,name:P.name,message:P.message,stack:P.stack}:P}))),this.window.postMessage(_,this.origins.post)},this.handleMessage=A=>{this.listeners.forEach(_=>{(A.origin===this.origins.listen||this.origins.listen==="*")&&_(A.data,A.origin)})},this.listeners=new Set,this.origins={post:a,listen:u}}}class d{constructor(b,a){this.messenger1=b,this.messenger2=a,this.id=Math.random().toString(36).slice(2),this.destroy=()=>{this.messenger1.removeListener(this.forwardMessageTo2),this.messenger2.removeListener(this.forwardMessageTo1)},this.forwardMessageTo1=u=>this.forwardMessage(this.messenger1,u),this.forwardMessageTo2=u=>this.forwardMessage(this.messenger2,u),this.forwardMessage=(u,A)=>{const _=A.meta&&Array.isArray(A.meta.forwardedBy)?A.meta.forwardedBy:[];if(!_.includes(this.id))return u.postMessage({...A,meta:{...A.meta,forwardedBy:[..._,this.id]}})},this.messenger1.addListener(this.forwardMessageTo2),this.messenger2.addListener(this.forwardMessageTo1)}}class p{constructor(b){this.port=b,this.listeners=new Map,this.addListener=a=>{const u=(A,_)=>{a(A,_.sender?.origin??"unknown")};this.listeners.set(a,u),this.port.onMessage.addListener(u)},this.removeListener=a=>{const u=this.listeners.get(a);u&&this.port.onMessage.removeListener(u)},this.postMessage=a=>{this.port&&this.port.postMessage(a)}}}const c=document.head||document.documentElement,m=document.createElement("script");m.src=h().runtime.getURL("inpage.js");const n=h().runtime.id;m.id="argent-x-extension",m.setAttribute("data-extension-id",n),c.insertBefore(m,c.children[0]);const k=new f(window,{post:window.location.origin});(0,r.um)(()=>h().runtime.connect(),y=>{const b=(0,l.E)(window,y);return window.addEventListener("unload",b),()=>{b(),window.removeEventListener("unload",b)}}),(0,r.um)(()=>h().runtime.connect(),y=>{const b=new p(y),a=new d(k,b);return a.id,()=>{a.destroy()}})})()})();})(); + +//# sourceMappingURL=inject.js.map \ No newline at end of file diff --git a/e2e/mig/6.19.5/inpage.js b/e2e/mig/6.19.5/inpage.js new file mode 100644 index 0000000..56dee67 --- /dev/null +++ b/e2e/mig/6.19.5/inpage.js @@ -0,0 +1,2137 @@ +(()=>{var RY=Object.defineProperty;var MY=(Qa,Ia,fr)=>Ia in Qa?RY(Qa,Ia,{enumerable:!0,configurable:!0,writable:!0,value:fr}):Qa[Ia]=fr;var BY=(Qa,Ia)=>()=>(Ia||Qa((Ia={exports:{}}).exports,Ia),Ia.exports);var yt=(Qa,Ia,fr)=>MY(Qa,typeof Ia!="symbol"?Ia+"":Ia,fr);var DY=BY((Yo,Jo)=>{(function(){try{var Qa=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Ia=new Error().stack;Ia&&(Qa._sentryDebugIds=Qa._sentryDebugIds||{},Qa._sentryDebugIds[Ia]="b6500ae5-d3b1-412f-b4bc-f20a3d017b1a",Qa._sentryDebugIdIdentifier="sentry-dbid-b6500ae5-d3b1-412f-b4bc-f20a3d017b1a")}catch{}})();var PY=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};PY.SENTRY_RELEASE={id:"6.19.5"};(()=>{var Qa={74684:(gt,ee)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0}),ee.output=ee.exists=ee.hash=ee.bytes=ee.bool=ee.number=void 0;function Ie(z){if(!Number.isSafeInteger(z)||z<0)throw new Error(`Wrong positive integer: ${z}`)}ee.number=Ie;function pe(z){if(typeof z!="boolean")throw new Error(`Expected boolean, not ${z}`)}ee.bool=pe;function Be(z,...C){if(!(z instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(C.length>0&&!C.includes(z.length))throw new TypeError(`Expected Uint8Array of length ${C}, not of length=${z.length}`)}ee.bytes=Be;function de(z){if(typeof z!="function"||typeof z.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Ie(z.outputLen),Ie(z.blockLen)}ee.hash=de;function Ae(z,C=!0){if(z.destroyed)throw new Error("Hash instance has been destroyed");if(C&&z.finished)throw new Error("Hash#digest() has already been called")}ee.exists=Ae;function w(z,C){Be(z);const L=C.outputLen;if(z.length{"use strict";Object.defineProperty(ee,"__esModule",{value:!0}),ee.add=ee.toBig=ee.split=ee.fromBig=void 0;const Ie=BigInt(2**32-1),pe=BigInt(32);function Be(Ce,we=!1){return we?{h:Number(Ce&Ie),l:Number(Ce>>pe&Ie)}:{h:Number(Ce>>pe&Ie)|0,l:Number(Ce&Ie)|0}}ee.fromBig=Be;function de(Ce,we=!1){let D=new Uint32Array(Ce.length),p=new Uint32Array(Ce.length);for(let m=0;mBigInt(Ce>>>0)<>>0);ee.toBig=Ae;const w=(Ce,we,D)=>Ce>>>D,ce=(Ce,we,D)=>Ce<<32-D|we>>>D,z=(Ce,we,D)=>Ce>>>D|we<<32-D,C=(Ce,we,D)=>Ce<<32-D|we>>>D,L=(Ce,we,D)=>Ce<<64-D|we>>>D-32,A=(Ce,we,D)=>Ce>>>D-32|we<<64-D,R=(Ce,we)=>we,B=(Ce,we)=>Ce,U=(Ce,we,D)=>Ce<>>32-D,P=(Ce,we,D)=>we<>>32-D,F=(Ce,we,D)=>we<>>64-D,J=(Ce,we,D)=>Ce<>>64-D;function Se(Ce,we,D,p){const m=(we>>>0)+(p>>>0);return{h:Ce+D+(m/4294967296|0)|0,l:m|0}}ee.add=Se;const Pe=(Ce,we,D)=>(Ce>>>0)+(we>>>0)+(D>>>0),ie=(Ce,we,D,p)=>we+D+p+(Ce/2**32|0)|0,W=(Ce,we,D,p)=>(Ce>>>0)+(we>>>0)+(D>>>0)+(p>>>0),H=(Ce,we,D,p,m)=>we+D+p+m+(Ce/2**32|0)|0,re=(Ce,we,D,p,m)=>(Ce>>>0)+(we>>>0)+(D>>>0)+(p>>>0)+(m>>>0),V=(Ce,we,D,p,m,b)=>we+D+p+m+b+(Ce/2**32|0)|0,ke={fromBig:Be,split:de,toBig:ee.toBig,shrSH:w,shrSL:ce,rotrSH:z,rotrSL:C,rotrBH:L,rotrBL:A,rotr32H:R,rotr32L:B,rotlSH:U,rotlSL:P,rotlBH:F,rotlBL:J,add:Se,add3L:Pe,add3H:ie,add4L:W,add4H:H,add5H:V,add5L:re};ee.default=ke},58404:(gt,ee)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0}),ee.crypto=void 0,ee.crypto={node:void 0,web:typeof self=="object"&&"crypto"in self?self.crypto:void 0}},6896:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0}),ee.shake256=ee.shake128=ee.keccak_512=ee.keccak_384=ee.keccak_256=ee.keccak_224=ee.sha3_512=ee.sha3_384=ee.sha3_256=ee.sha3_224=ee.Keccak=ee.keccakP=void 0;const pe=Ie(74684),Be=Ie(15169),de=Ie(73554),[Ae,w,ce]=[[],[],[]],z=BigInt(0),C=BigInt(1),L=BigInt(2),A=BigInt(7),R=BigInt(256),B=BigInt(113);for(let H=0,re=C,V=1,ke=0;H<24;H++){[V,ke]=[ke,(2*V+3*ke)%5],Ae.push(2*(5*ke+V)),w.push((H+1)*(H+2)/2%64);let Ce=z;for(let we=0;we<7;we++)re=(re<>A)*B)%R,re&L&&(Ce^=C<<(C<V>32?Be.default.rotlBH(H,re,V):Be.default.rotlSH(H,re,V),J=(H,re,V)=>V>32?Be.default.rotlBL(H,re,V):Be.default.rotlSL(H,re,V);function Se(H,re=24){const V=new Uint32Array(10);for(let ke=24-re;ke<24;ke++){for(let D=0;D<10;D++)V[D]=H[D]^H[D+10]^H[D+20]^H[D+30]^H[D+40];for(let D=0;D<10;D+=2){const p=(D+8)%10,m=(D+2)%10,b=V[m],u=V[m+1],h=F(b,u,1)^V[p],v=J(b,u,1)^V[p+1];for(let T=0;T<50;T+=10)H[D+T]^=h,H[D+T+1]^=v}let Ce=H[2],we=H[3];for(let D=0;D<24;D++){const p=w[D],m=F(Ce,we,p),b=J(Ce,we,p),u=Ae[D];Ce=H[u],we=H[u+1],H[u]=m,H[u+1]=b}for(let D=0;D<50;D+=10){for(let p=0;p<10;p++)V[p]=H[D+p];for(let p=0;p<10;p++)H[D+p]^=~V[(p+2)%10]&V[(p+4)%10]}H[0]^=U[ke],H[1]^=P[ke]}V.fill(0)}ee.keccakP=Se;class Pe extends de.Hash{constructor(re,V,ke,Ce=!1,we=24){if(super(),this.blockLen=re,this.suffix=V,this.outputLen=ke,this.enableXOF=Ce,this.rounds=we,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,pe.default.number(ke),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,de.u32)(this.state)}keccak(){Se(this.state32,this.rounds),this.posOut=0,this.pos=0}update(re){pe.default.exists(this);const{blockLen:V,state:ke}=this;re=(0,de.toBytes)(re);const Ce=re.length;for(let we=0;we=ke&&this.keccak();const D=Math.min(ke-this.posOut,we-Ce);re.set(V.subarray(this.posOut,this.posOut+D),Ce),this.posOut+=D,Ce+=D}return re}xofInto(re){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(re)}xof(re){return pe.default.number(re),this.xofInto(new Uint8Array(re))}digestInto(re){if(pe.default.output(re,this),this.finished)throw new Error("digest() was already called");return this.writeInto(re),this.destroy(),re}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(re){const{blockLen:V,suffix:ke,outputLen:Ce,rounds:we,enableXOF:D}=this;return re||(re=new Pe(V,ke,Ce,D,we)),re.state32.set(this.state32),re.pos=this.pos,re.posOut=this.posOut,re.finished=this.finished,re.rounds=we,re.suffix=ke,re.outputLen=Ce,re.enableXOF=D,re.destroyed=this.destroyed,re}}ee.Keccak=Pe;const ie=(H,re,V)=>(0,de.wrapConstructor)(()=>new Pe(re,H,V));ee.sha3_224=ie(6,144,28),ee.sha3_256=ie(6,136,32),ee.sha3_384=ie(6,104,48),ee.sha3_512=ie(6,72,64),ee.keccak_224=ie(1,144,28),ee.keccak_256=ie(1,136,32),ee.keccak_384=ie(1,104,48),ee.keccak_512=ie(1,72,64);const W=(H,re,V)=>(0,de.wrapConstructorWithOpts)((ke={})=>new Pe(re,H,ke.dkLen===void 0?V:ke.dkLen,!0));ee.shake128=W(31,168,16),ee.shake256=W(31,136,32)},73554:(gt,ee,Ie)=>{"use strict";/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */Object.defineProperty(ee,"__esModule",{value:!0}),ee.randomBytes=ee.wrapConstructorWithOpts=ee.wrapConstructor=ee.checkOpts=ee.Hash=ee.concatBytes=ee.toBytes=ee.utf8ToBytes=ee.asyncLoop=ee.nextTick=ee.hexToBytes=ee.bytesToHex=ee.isLE=ee.rotr=ee.createView=ee.u32=ee.u8=void 0;const pe=Ie(58404),Be=W=>new Uint8Array(W.buffer,W.byteOffset,W.byteLength);ee.u8=Be;const de=W=>new Uint32Array(W.buffer,W.byteOffset,Math.floor(W.byteLength/4));ee.u32=de;const Ae=W=>new DataView(W.buffer,W.byteOffset,W.byteLength);ee.createView=Ae;const w=(W,H)=>W<<32-H|W>>>H;if(ee.rotr=w,ee.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,!ee.isLE)throw new Error("Non little-endian hardware is not supported");const ce=Array.from({length:256},(W,H)=>H.toString(16).padStart(2,"0"));function z(W){if(!(W instanceof Uint8Array))throw new Error("Uint8Array expected");let H="";for(let re=0;re{};ee.nextTick=L;async function A(W,H,re){let V=Date.now();for(let ke=0;ke=0&&CeV instanceof Uint8Array))throw new Error("Uint8Array list expected");if(W.length===1)return W[0];const H=W.reduce((V,ke)=>V+ke.length,0),re=new Uint8Array(H);for(let V=0,ke=0;VObject.prototype.toString.call(W)==="[object Object]"&&W.constructor===Object;function J(W,H){if(H!==void 0&&(typeof H!="object"||!F(H)))throw new TypeError("Options should be object or undefined");return Object.assign(W,H)}ee.checkOpts=J;function Se(W){const H=V=>W().update(B(V)).digest(),re=W();return H.outputLen=re.outputLen,H.blockLen=re.blockLen,H.create=()=>W(),H}ee.wrapConstructor=Se;function Pe(W){const H=(V,ke)=>W(ke).update(B(V)).digest(),re=W({});return H.outputLen=re.outputLen,H.blockLen=re.blockLen,H.create=V=>W(V),H}ee.wrapConstructorWithOpts=Pe;function ie(W=32){if(pe.crypto.web)return pe.crypto.web.getRandomValues(new Uint8Array(W));if(pe.crypto.node)return new Uint8Array(pe.crypto.node.randomBytes(W).buffer);throw new Error("The environment doesn't have randomBytes function")}ee.randomBytes=ie},38507:(gt,ee,Ie)=>{"use strict";var pe=Ie(94479),Be=Ie(91473);function de(ce){return ce instanceof w||ce instanceof Error&&ce.name==="TRPCClientError"}function Ae(ce){return Be.isObject(ce)&&Be.isObject(ce.error)&&typeof ce.error.code=="number"&&typeof ce.error.message=="string"}class w extends Error{static from(z,C={}){const L=z;return de(L)?(C.meta&&(L.meta={...L.meta,...C.meta}),L):Ae(L)?new w(L.error.message,{...C,result:L}):L instanceof Error?new w(L.message,{...C,cause:pe.getCauseFromUnknown(L)}):new w("Unknown error",{...C,cause:L})}constructor(z,C){const L=C?.cause;super(z,{cause:L}),this.meta=C?.meta,this.cause=L,this.shape=C?.result?.error,this.data=C?.result?.error.data,this.name="TRPCClientError",Object.setPrototypeOf(this,w.prototype)}}ee.TRPCClientError=w},2131:(gt,ee,Ie)=>{"use strict";var pe=Ie(33067),Be=Ie(91473),de=Ie(38507),Ae=Ie(34948);const w=()=>{throw new Error("Something went wrong. Please submit an issue at https://github.com/trpc/trpc/issues/new")};function ce(A){let R=null,B=null;const U=()=>{clearTimeout(B),B=null,R=null};function P(Se){const Pe=[[]];let ie=0;for(;;){const W=Se[ie];if(!W)break;const H=Pe[Pe.length-1];if(W.aborted){W.reject?.(new Error("Aborted")),ie++;continue}if(A.validate(H.concat(W).map(V=>V.key))){H.push(W),ie++;continue}if(H.length===0){W.reject?.(new Error("Input is too big for a single dispatch")),ie++;continue}Pe.push([])}return Pe}function F(){const Se=P(R);U();for(const Pe of Se){if(!Pe.length)continue;const ie={items:Pe,cancel:w};for(const V of Pe)V.batch=ie;const W=(V,ke)=>{const Ce=ie.items[V];Ce.resolve?.(ke),Ce.batch=null,Ce.reject=null,Ce.resolve=null},{promise:H,cancel:re}=A.fetch(ie.items.map(V=>V.key),W);ie.cancel=re,H.then(V=>{for(let ke=0;ke{for(const ke of ie.items)ke.reject?.(V),ke.batch=null})}}function J(Se){const Pe={aborted:!1,key:Se,batch:null,resolve:w,reject:w},ie=new Promise((H,re)=>{Pe.reject=re,Pe.resolve=H,R||(R=[]),R.push(Pe)});return B||(B=setTimeout(F)),{promise:ie,cancel:()=>{Pe.aborted=!0,Pe.batch?.items.every(H=>H.aborted)&&(Pe.batch.cancel(),Pe.batch=null)}}}return{load:J}}function z(A){return function(B){const U=Ae.resolveHTTPLinkOptions(B),P=B.maxURLLength??1/0;return F=>{const J=H=>{const re=ke=>{if(P===1/0)return!0;const Ce=ke.map(p=>p.path).join(","),we=ke.map(p=>p.input);return Ae.getUrl({...U,runtime:F,type:H,path:Ce,inputs:we}).length<=P},V=A({...U,runtime:F,type:H,opts:B});return{validate:re,fetch:V}},Se=ce(J("query")),Pe=ce(J("mutation")),ie=ce(J("subscription")),W={query:Se,subscription:ie,mutation:Pe};return({op:H})=>pe.observable(re=>{const V=W[H.type],{promise:ke,cancel:Ce}=V.load(H);let we;return ke.then(D=>{we=D;const p=Be.transformResult(D.json,F);if(!p.ok){re.error(de.TRPCClientError.from(p.error,{meta:D.meta}));return}re.next({context:D.meta,result:p.result}),re.complete()}).catch(D=>{re.error(de.TRPCClientError.from(D,{meta:we?.meta}))}),()=>{Ce()}})}}}const L=z(A=>R=>{const B=R.map(J=>J.path).join(","),U=R.map(J=>J.input),{promise:P,cancel:F}=Ae.jsonHttpRequester({...A,path:B,inputs:U,headers(){return A.opts.headers?typeof A.opts.headers=="function"?A.opts.headers({opList:R}):A.opts.headers:{}}});return{promise:P.then(J=>(Array.isArray(J.json)?J.json:R.map(()=>J.json)).map(ie=>({meta:J.meta,json:ie}))),cancel:F}});ee.createHTTPBatchLink=z,ee.httpBatchLink=L},34948:(gt,ee,Ie)=>{"use strict";var pe=Ie(38507);const Be=P=>typeof P=="function";function de(P){if(P)return P;if(typeof window<"u"&&Be(window.fetch))return window.fetch;if(typeof globalThis<"u"&&Be(globalThis.fetch))return globalThis.fetch;throw new Error("No fetch implementation found")}function Ae(P){return P||(typeof window<"u"&&window.AbortController?window.AbortController:typeof globalThis<"u"&&globalThis.AbortController?globalThis.AbortController:null)}function w(P){return{url:P.url.toString().replace(/\/$/,""),fetch:P.fetch,AbortController:Ae(P.AbortController)}}function ce(P){const F={};for(let J=0;JP.runtime.transformer.serialize(F)))}const L=P=>{let F=P.url+"/"+P.path;const J=[];if("inputs"in P&&J.push("batch=1"),P.type==="query"){const Se=C(P);Se!==void 0&&J.push(`input=${encodeURIComponent(JSON.stringify(Se))}`)}return J.length&&(F+="?"+J.join("&")),F},A=P=>{if(P.type==="query")return;const F=C(P);return F!==void 0?JSON.stringify(F):void 0},R=P=>U({...P,contentTypeHeader:"application/json",getUrl:L,getBody:A});async function B(P,F){const J=P.getUrl(P),Se=P.getBody(P),{type:Pe}=P,ie=await P.headers();/* istanbul ignore if -- @preserve */if(Pe==="subscription")throw new Error("Subscriptions should use wsLink");const W={...P.contentTypeHeader?{"content-type":P.contentTypeHeader}:{},...P.batchModeHeader?{"trpc-batch-mode":P.batchModeHeader}:{},...ie};return de(P.fetch)(J,{method:z[Pe],signal:F?.signal,body:Se,headers:W})}function U(P){const F=P.AbortController?new P.AbortController:null,J={};let Se=!1;return{promise:new Promise((W,H)=>{B(P,F).then(re=>(J.response=re,Se=!0,re.json())).then(re=>{J.responseJSON=re,W({json:re,meta:J})}).catch(re=>{Se=!0,H(pe.TRPCClientError.from(re,{meta:J}))})}),cancel:()=>{Se||F?.abort()}}}ee.fetchHTTPResponse=B,ee.getBody=A,ee.getFetch=de,ee.getUrl=L,ee.httpRequest=U,ee.jsonHttpRequester=R,ee.resolveHTTPLinkOptions=w},83931:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});var pe=Ie(33067),Be=Ie(85031),de=Ie(38507),Ae=Ie(94479),w=Ie(34948),ce=Ie(2131),z=Ie(32805),C=Ie(36937),L=Ie(88819);Ie(91473);class A{$request({type:b,input:u,path:h,context:v={}}){return Be.createChain({links:this.links,op:{id:++this.requestId,type:b,path:h,input:u,context:v}}).pipe(pe.share())}requestAsPromise(b){const u=this.$request(b),{promise:h,abort:v}=pe.observableToPromise(u);return new Promise((E,g)=>{b.signal?.addEventListener("abort",v),h.then(S=>{E(S.result.data)}).catch(S=>{g(de.TRPCClientError.from(S))})})}query(b,u,h){return this.requestAsPromise({type:"query",path:b,input:u,context:h?.context,signal:h?.signal})}mutation(b,u,h){return this.requestAsPromise({type:"mutation",path:b,input:u,context:h?.context,signal:h?.signal})}subscription(b,u,h){return this.$request({type:"subscription",path:b,input:u,context:h?.context}).subscribe({next(T){T.result.type==="started"?h.onStarted?.():T.result.type==="stopped"?h.onStopped?.():h.onData?.(T.result.data)},error(T){h.onError?.(T)},complete(){h.onComplete?.()}})}constructor(b){this.requestId=0;const u=(()=>{const h=b.transformer;return h?"input"in h?b.transformer:{input:h,output:h}:{input:{serialize:v=>v,deserialize:v=>v},output:{serialize:v=>v,deserialize:v=>v}}})();this.runtime={transformer:{serialize:h=>u.input.serialize(h),deserialize:h=>u.output.deserialize(h)},combinedTransformer:u},this.links=b.links.map(h=>h(this.runtime))}}function R(m){return new A(m)}function B(m){return new A(m)}const U={query:"query",mutate:"mutation",subscribe:"subscription"},P=m=>U[m];function F(m){return Ae.createFlatProxy(b=>m.hasOwnProperty(b)?m[b]:b==="__untypedClient"?m:Ae.createRecursiveProxy(({path:u,args:h})=>{const v=[b,...u],T=P(v.pop()),E=v.join(".");return m[T](E,...h)}))}function J(m){const b=new A(m);return F(b)}function Se(m){return m.__untypedClient}function Pe(m){if(m)return m;if(typeof window<"u"&&window.TextDecoder)return new window.TextDecoder;if(typeof globalThis<"u"&&globalThis.TextDecoder)return new globalThis.TextDecoder;throw new Error("No TextDecoder implementation found")}async function ie(m){const b=m.parse??JSON.parse,u=h=>{if(m.signal?.aborted||!h||h==="}")return;const v=h.indexOf(":"),T=h.substring(2,v-1),E=h.substring(v+1);m.onSingle(Number(T),b(E))};await W(m.readableStream,u,m.textDecoder)}async function W(m,b,u){let h="";const v=T=>{const g=u.decode(T).split(` +`);if(g.length===1)h+=g[0];else if(g.length>1){b(h+g[0]);for(let S=1;S{m.on("data",b),m.on("end",u)})}async function re(m,b){const u=m.getReader();let h=await u.read();for(;!h.done;)b(h.value),h=await u.read()}const V=(m,b)=>{const u=m.AbortController?new m.AbortController:null,h=w.fetchHTTPResponse({...m,contentTypeHeader:"application/json",batchModeHeader:"stream",getUrl:w.getUrl,getBody:w.getBody},u),v=()=>u?.abort(),T=h.then(async E=>{if(!E.body)throw new Error("Received response without body");const g={response:E};return ie({readableStream:E.body,onSingle:b,parse:S=>({json:JSON.parse(S),meta:g}),signal:u?.signal,textDecoder:m.textDecoder})});return{cancel:v,promise:T}},ke=m=>{const b=Pe(m.opts.textDecoder);return(u,h)=>{const v=u.map(S=>S.path).join(","),T=u.map(S=>S.input),{cancel:E,promise:g}=V({...m,textDecoder:b,path:v,inputs:T,headers(){return m.opts.headers?typeof m.opts.headers=="function"?m.opts.headers({opList:u}):m.opts.headers:{}}},(S,q)=>{h(S,q)});return{promise:g.then(()=>[]),cancel:E}}},Ce=ce.createHTTPBatchLink(ke),we=m=>{if("input"in m){if(!(m.input instanceof FormData))throw new Error("Input is not FormData");return m.input}},D=m=>{if(m.type!=="mutation")throw new Error("We only handle mutations with formdata");return w.httpRequest({...m,getUrl(){return`${m.url}/${m.path}`},getBody:we})},p=z.httpLinkFactory({requester:D});ee.splitLink=Be.splitLink,ee.TRPCClientError=de.TRPCClientError,ee.getFetch=w.getFetch,ee.httpBatchLink=ce.httpBatchLink,ee.httpLink=z.httpLink,ee.httpLinkFactory=z.httpLinkFactory,ee.loggerLink=C.loggerLink,ee.createWSClient=L.createWSClient,ee.wsLink=L.wsLink,ee.TRPCUntypedClient=A,ee.clientCallTypeToProcedureType=P,ee.createTRPCClient=B,ee.createTRPCClientProxy=F,ee.createTRPCProxyClient=J,ee.createTRPCUntypedClient=R,ee.experimental_formDataLink=p,ee.getUntypedClient=Se,ee.unstable_httpBatchStreamLink=Ce},32805:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});var pe=Ie(33067),Be=Ie(91473),de=Ie(38507),Ae=Ie(34948);Ie(94479);function w(z){return C=>{const L=Ae.resolveHTTPLinkOptions(C);return A=>({op:R})=>pe.observable(B=>{const{path:U,input:P,type:F}=R,{promise:J,cancel:Se}=z.requester({...L,runtime:A,type:F,path:U,input:P,headers(){return C.headers?typeof C.headers=="function"?C.headers({op:R}):C.headers:{}}});let Pe;return J.then(ie=>{Pe=ie.meta;const W=Be.transformResult(ie.json,A);if(!W.ok){B.error(de.TRPCClientError.from(W.error,{meta:Pe}));return}B.next({context:ie.meta,result:W.result}),B.complete()}).catch(ie=>{B.error(de.TRPCClientError.from(ie,{meta:Pe}))}),()=>{Se()}})}}const ce=w({requester:Ae.jsonHttpRequester});ee.httpLink=ce,ee.httpLinkFactory=w},36937:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});var pe=Ie(33067);function Be(z){return typeof FormData>"u"?!1:z instanceof FormData}const de={css:{query:["72e3ff","3fb0d8"],mutation:["c5a3fc","904dfc"],subscription:["ff49e1","d83fbe"]},ansi:{regular:{query:["\x1B[30;46m","\x1B[97;46m"],mutation:["\x1B[30;45m","\x1B[97;45m"],subscription:["\x1B[30;42m","\x1B[97;42m"]},bold:{query:["\x1B[1;30;46m","\x1B[1;97;46m"],mutation:["\x1B[1;30;45m","\x1B[1;97;45m"],subscription:["\x1B[1;30;42m","\x1B[1;97;42m"]}}};function Ae(z){const{direction:C,type:L,path:A,id:R,input:B}=z,U=[],P=[];if(z.colorMode==="ansi"){const[Pe,ie]=de.ansi.regular[L],[W,H]=de.ansi.bold[L];return U.push(C==="up"?Pe:ie,C==="up"?">>":"<<",L,C==="up"?W:H,`#${R}`,A,"\x1B[0m"),C==="up"?P.push({input:z.input}):P.push({input:z.input,result:"result"in z.result?z.result.result:z.result,elapsedMs:z.elapsedMs}),{parts:U,args:P}}const[F,J]=de.css[L],Se=` + background-color: #${C==="up"?F:J}; + color: ${C==="up"?"black":"white"}; + padding: 2px; + `;return U.push("%c",C==="up"?">>":"<<",L,`#${R}`,`%c${A}%c`,"%O"),P.push(Se,`${Se}; font-weight: bold;`,`${Se}; font-weight: normal;`),C==="up"?P.push({input:B,context:z.context}):P.push({input:B,result:z.result,elapsedMs:z.elapsedMs,context:z.context}),{parts:U,args:P}}const w=({c:z=console,colorMode:C="css"})=>L=>{const A=L.input,R=Be(A)?Object.fromEntries(A):A,{parts:B,args:U}=Ae({...L,colorMode:C,input:R}),P=L.direction==="down"&&L.result&&(L.result instanceof Error||"error"in L.result.result)?"error":"log";z[P].apply(null,[B.join(" ")].concat(U))};function ce(z={}){const{enabled:C=()=>!0}=z,L=z.colorMode??(typeof window>"u"?"ansi":"css"),{logger:A=w({c:z.console,colorMode:L})}=z;return()=>({op:R,next:B})=>pe.observable(U=>{C({...R,direction:"up"})&&A({...R,direction:"up"});const P=Date.now();function F(J){const Se=Date.now()-P;C({...R,direction:"down",result:J})&&A({...R,direction:"down",elapsedMs:Se,result:J})}return B(R).pipe(pe.tap({next(J){F(J)},error(J){F(J)}})).subscribe(U)})}ee.loggerLink=ce},88819:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});var pe=Ie(33067),Be=Ie(91473),de=Ie(38507);Ie(94479);/* istanbul ignore next -- @preserve */const Ae=C=>C===0?0:Math.min(1e3*2**C,3e4);function w(C){const{url:L,WebSocket:A=WebSocket,retryDelayMs:R=Ae,onOpen:B,onClose:U}=C;/* istanbul ignore next -- @preserve */if(!A)throw new Error("No WebSocket implementation found - you probably don't want to use this on the server, but if you do you need to pass a `WebSocket`-ponyfill");let P=[];const F=Object.create(null);let J=0,Se=null,Pe=null,ie=p(),W="connecting";function H(){W!=="open"||Se||(Se=setTimeout(()=>{Se=null,P.length===1?ie.send(JSON.stringify(P.pop())):ie.send(JSON.stringify(P)),P=[]}))}function re(){if(Pe!==null||W==="closed")return;const b=R(J++);ke(b)}function V(){W="connecting";const b=ie;ie=p(),Ce(b)}function ke(b){Pe||(W="connecting",Pe=setTimeout(V,b))}function Ce(b){Object.values(F).some(h=>h.ws===b)||b.close()}function we(){Object.values(F).forEach(b=>{b.type==="subscription"&&b.callbacks.complete()})}function D(b){P.some(u=>u.id===b.op.id)||m(b.op,b.callbacks)}function p(){const b=typeof L=="function"?L():L,u=new A(b);clearTimeout(Pe),Pe=null,u.addEventListener("open",()=>{/* istanbul ignore next -- @preserve */u===ie&&(J=0,W="open",B?.(),H())}),u.addEventListener("error",()=>{u===ie&&re()});const h=T=>{if(T.method==="reconnect"&&u===ie){W==="open"&&U?.(),V();for(const E of Object.values(F))E.type==="subscription"&&D(E)}},v=T=>{const E=T.id!==null&&F[T.id];if(E){if(E.callbacks.next?.(T),E.ws!==ie&&u===ie){const g=E.ws;E.ws=ie,Ce(g)}"result"in T&&T.result.type==="stopped"&&u===ie&&E.callbacks.complete()}};return u.addEventListener("message",({data:T})=>{const E=JSON.parse(T);"method"in E?h(E):v(E),(u!==ie||W==="closed")&&Ce(u)}),u.addEventListener("close",({code:T})=>{W==="open"&&U?.({code:T}),ie===u&&re();for(const[E,g]of Object.entries(F))if(g.ws===u){if(W==="closed"){delete F[E],g.callbacks.complete?.();continue}g.type==="subscription"?D(g):(delete F[E],g.callbacks.error?.(de.TRPCClientError.from(new ce("WebSocket closed prematurely"))))}}),u}function m(b,u){const{type:h,input:v,path:T,id:E}=b,g={id:E,method:h,params:{input:v,path:T}};return F[E]={ws:ie,type:h,callbacks:u,op:b},P.push(g),H(),()=>{const S=F[E]?.callbacks;delete F[E],P=P.filter(q=>q.id!==E),S?.complete?.(),ie.readyState===A.OPEN&&b.type==="subscription"&&(P.push({id:E,method:"subscription.stop"}),H())}}return{close:()=>{W="closed",U?.(),we(),Ce(ie),clearTimeout(Pe),Pe=null},request:m,getConnection(){return ie}}}class ce extends Error{constructor(L){super(L),this.name="TRPCWebSocketClosedError",Object.setPrototypeOf(this,ce.prototype)}}function z(C){return L=>{const{client:A}=C;return({op:R})=>pe.observable(B=>{const{type:U,path:P,id:F,context:J}=R,Se=L.transformer.serialize(R.input),Pe=A.request({type:U,path:P,input:Se,id:F,context:J},{error(ie){B.error(ie),Pe()},complete(){B.complete()},next(ie){const W=Be.transformResult(ie,L);if(!W.ok){B.error(de.TRPCClientError.from(W.error));return}B.next({result:W.result}),R.type!=="subscription"&&(Pe(),B.complete())}});return()=>{Pe()}})}}ee.createWSClient=w,ee.wsLink=z},85031:(gt,ee,Ie)=>{"use strict";var pe=Ie(33067);function Be(w){return pe.observable(ce=>{function z(L=0,A=w.op){const R=w.links[L];if(!R)throw new Error("No more links to execute - did you forget to add an ending link?");return R({op:A,next(U){return z(L+1,U)}})}return z().subscribe(ce)})}function de(w){return Array.isArray(w)?w:[w]}function Ae(w){return ce=>{const z=de(w.true).map(L=>L(ce)),C=de(w.false).map(L=>L(ce));return L=>pe.observable(A=>{const R=w.condition(L.op)?z:C;return Be({op:L.op,links:R}).subscribe(A)})}}ee.createChain=Be,ee.splitLink=Ae},91473:(gt,ee)=>{"use strict";function Ie(Ae){return!!Ae&&!Array.isArray(Ae)&&typeof Ae=="object"}function pe(Ae,w){if("error"in Ae){const z=w.transformer.deserialize(Ae.error);return{ok:!1,error:{...Ae,error:z}}}return{ok:!0,result:{...Ae.result,...(!Ae.result.type||Ae.result.type==="data")&&{type:"data",data:w.transformer.deserialize(Ae.result.data)}}}}class Be extends Error{constructor(){super("Unable to transform response from server")}}function de(Ae,w){let ce;try{ce=pe(Ae,w)}catch{throw new Be}if(!ce.ok&&(!Ie(ce.error.error)||typeof ce.error.error.code!="number"))throw new Be;if(ce.ok&&!Ie(ce.result))throw new Be;return ce}ee.isObject=Ie,ee.transformResult=de},25929:(gt,ee)=>{"use strict";function Ie(de){const Ae=Object.create(null);for(const w in de){const ce=de[w];Ae[ce]=w}return Ae}const pe={PARSE_ERROR:-32700,BAD_REQUEST:-32600,INTERNAL_SERVER_ERROR:-32603,NOT_IMPLEMENTED:-32603,UNAUTHORIZED:-32001,FORBIDDEN:-32003,NOT_FOUND:-32004,METHOD_NOT_SUPPORTED:-32005,TIMEOUT:-32008,CONFLICT:-32009,PRECONDITION_FAILED:-32012,PAYLOAD_TOO_LARGE:-32013,UNPROCESSABLE_CONTENT:-32022,TOO_MANY_REQUESTS:-32029,CLIENT_CLOSED_REQUEST:-32099},Be=Ie(pe);ee.TRPC_ERROR_CODES_BY_KEY=pe,ee.TRPC_ERROR_CODES_BY_NUMBER=Be,ee.invert=Ie},4891:(gt,ee)=>{"use strict";function Ie(de){return!!de&&!Array.isArray(de)&&typeof de=="object"}class pe extends Error{}function Be(de){if(de instanceof Error)return de;const Ae=typeof de;if(!(Ae==="undefined"||Ae==="function"||de===null)){if(Ae!=="object")return new Error(String(de));if(Ie(de)){const w=new pe;for(const ce in de)w[ce]=de[ce];return w}}}ee.getCauseFromUnknown=Be},96282:(gt,ee,Ie)=>{"use strict";var pe=Ie(25929);const Be=pe.invert(pe.TRPC_ERROR_CODES_BY_KEY),de={PARSE_ERROR:400,BAD_REQUEST:400,UNAUTHORIZED:401,NOT_FOUND:404,FORBIDDEN:403,METHOD_NOT_SUPPORTED:405,TIMEOUT:408,CONFLICT:409,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,UNPROCESSABLE_CONTENT:422,TOO_MANY_REQUESTS:429,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501};function Ae(R){return de[R]??500}function w(R){const B=Array.isArray(R)?R:[R],U=new Set(B.map(F=>{if("error"in F){const J=F.error.data;if(typeof J.httpStatus=="number")return J.httpStatus;const Se=Be[F.error.code];return Ae(Se)}return 200}));return U.size!==1?207:U.values().next().value}function ce(R){return Ae(R.code)}const z=()=>{};function C(R,B){return new Proxy(z,{get(P,F){if(!(typeof F!="string"||F==="then"))return C(R,[...B,F])},apply(P,F,J){const Se=B[B.length-1]==="apply";return R({args:Se?J.length>=2?J[1]:[]:J,path:Se?B.slice(0,-1):B})}})}const L=R=>C(R,[]),A=R=>new Proxy(z,{get(B,U){if(!(typeof U!="string"||U==="then"))return R(U)}});ee.TRPC_ERROR_CODES_BY_NUMBER=Be,ee.createFlatProxy=A,ee.createRecursiveProxy=L,ee.getHTTPStatusCode=w,ee.getHTTPStatusCodeFromError=ce},97003:(gt,ee)=>{"use strict";function Ie(Ae){return Ae}function pe(Ae){return Ae.length===0?Ie:Ae.length===1?Ae[0]:function(ce){return Ae.reduce((z,C)=>C(z),ce)}}function Be(Ae){return typeof Ae=="object"&&Ae!==null&&"subscribe"in Ae}function de(Ae){const w={subscribe(ce){let z=null,C=!1,L=!1,A=!1;function R(){if(z===null){A=!0;return}L||(L=!0,typeof z=="function"?z():z&&z.unsubscribe())}return z=Ae({next(B){C||ce.next?.(B)},error(B){C||(C=!0,ce.error?.(B),R())},complete(){C||(C=!0,ce.complete?.(),R())}}),A&&R(),{unsubscribe:R}},pipe(...ce){return pe(ce)(w)}};return w}ee.isObservable=Be,ee.observable=de},33067:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});var pe=Ie(97003);function Be(z){return C=>{let L=0,A=null;const R=[];function B(){A||(A=C.subscribe({next(P){for(const F of R)F.next?.(P)},error(P){for(const F of R)F.error?.(P)},complete(){for(const P of R)P.complete?.()}}))}function U(){if(L===0&&A){const P=A;A=null,P.unsubscribe()}}return{subscribe(P){return L++,R.push(P),B(),{unsubscribe(){L--,U();const F=R.findIndex(J=>J===P);F>-1&&R.splice(F,1)}}}}}}function de(z){return C=>({subscribe(L){let A=0;return C.subscribe({next(B){L.next?.(z(B,A++))},error(B){L.error?.(B)},complete(){L.complete?.()}})}})}function Ae(z){return C=>({subscribe(L){return C.subscribe({next(A){z.next?.(A),L.next?.(A)},error(A){z.error?.(A),L.error?.(A)},complete(){z.complete?.(),L.complete?.()}})}})}class w extends Error{constructor(C){super(C),this.name="ObservableAbortError",Object.setPrototypeOf(this,w.prototype)}}function ce(z){let C;return{promise:new Promise((A,R)=>{let B=!1;function U(){B||(B=!0,R(new w("This operation was aborted.")),P.unsubscribe())}const P=z.subscribe({next(F){B=!0,A(F),U()},error(F){B=!0,R(F),U()},complete(){B=!0,U()}});C=U}),abort:C}}ee.isObservable=pe.isObservable,ee.observable=pe.observable,ee.map=de,ee.observableToPromise=ce,ee.share=Be,ee.tap=Ae},94479:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});var pe=Ie(96282),Be=Ie(94043),de=Ie(4891);Ie(25929),ee.createFlatProxy=pe.createFlatProxy,ee.createRecursiveProxy=pe.createRecursiveProxy,ee.getErrorShape=Be.getErrorShape,ee.transformTRPCResponse=Be.transformTRPCResponse,ee.getCauseFromUnknown=de.getCauseFromUnknown},94043:(gt,ee,Ie)=>{"use strict";var pe=Ie(96282),Be=Ie(25929);function de(ce){const{path:z,error:C,config:L}=ce,{code:A}=ce.error,R={message:C.message,code:Be.TRPC_ERROR_CODES_BY_KEY[A],data:{code:A,httpStatus:pe.getHTTPStatusCodeFromError(C)}};return L.isDev&&typeof ce.error.stack=="string"&&(R.data.stack=ce.error.stack),typeof z=="string"&&(R.data.path=z),L.errorFormatter({...ce,shape:R})}function Ae(ce,z){return"error"in z?{...z,error:ce.transformer.output.serialize(z.error)}:"data"in z.result?{...z,result:{...z.result,data:ce.transformer.output.serialize(z.result.data)}}:z}function w(ce,z){return Array.isArray(z)?z.map(C=>Ae(ce,C)):Ae(ce,z)}ee.getErrorShape=de,ee.transformTRPCResponse=w},84933:(gt,ee)=>{"use strict";ee.byteLength=z,ee.toByteArray=L,ee.fromByteArray=B;for(var Ie=[],pe=[],Be=typeof Uint8Array<"u"?Uint8Array:Array,de="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Ae=0,w=de.length;Ae0)throw new Error("Invalid string. Length must be a multiple of 4");var F=U.indexOf("=");F===-1&&(F=P);var J=F===P?0:4-F%4;return[F,J]}function z(U){var P=ce(U),F=P[0],J=P[1];return(F+J)*3/4-J}function C(U,P,F){return(P+F)*3/4-F}function L(U){var P,F=ce(U),J=F[0],Se=F[1],Pe=new Be(C(U,J,Se)),ie=0,W=Se>0?J-4:J,H;for(H=0;H>16&255,Pe[ie++]=P>>8&255,Pe[ie++]=P&255;return Se===2&&(P=pe[U.charCodeAt(H)]<<2|pe[U.charCodeAt(H+1)]>>4,Pe[ie++]=P&255),Se===1&&(P=pe[U.charCodeAt(H)]<<10|pe[U.charCodeAt(H+1)]<<4|pe[U.charCodeAt(H+2)]>>2,Pe[ie++]=P>>8&255,Pe[ie++]=P&255),Pe}function A(U){return Ie[U>>18&63]+Ie[U>>12&63]+Ie[U>>6&63]+Ie[U&63]}function R(U,P,F){for(var J,Se=[],Pe=P;PeW?W:ie+Pe));return J===1?(P=U[F-1],Se.push(Ie[P>>2]+Ie[P<<4&63]+"==")):J===2&&(P=(U[F-2]<<8)+U[F-1],Se.push(Ie[P>>10]+Ie[P>>4&63]+Ie[P<<2&63]+"=")),Se.join("")}},63303:function(gt,ee,Ie){var pe;(function(Be){"use strict";var de,Ae=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,w=Math.ceil,ce=Math.floor,z="[BigNumber Error] ",C=z+"Number primitive has more than 15 significant digits: ",L=1e14,A=14,R=9007199254740991,B=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],U=1e7,P=1e9;function F(V){var ke,Ce,we,D=Me.prototype={constructor:Me,toString:null,valueOf:null},p=new Me(1),m=20,b=4,u=-7,h=21,v=-1e7,T=1e7,E=!1,g=1,S=0,q={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},x="0123456789abcdefghijklmnopqrstuvwxyz",ge=!0;function Me(le,Te){var De,ot,Ke,Xe,lt,ze,Ye,bt,at=this;if(!(at instanceof Me))return new Me(le,Te);if(Te==null){if(le&&le._isBigNumber===!0){at.s=le.s,!le.c||le.e>T?at.c=at.e=null:le.e=10;lt/=10,Xe++);Xe>T?at.c=at.e=null:(at.e=Xe,at.c=[le]);return}bt=String(le)}else{if(!Ae.test(bt=String(le)))return we(at,bt,ze);at.s=bt.charCodeAt(0)==45?(bt=bt.slice(1),-1):1}(Xe=bt.indexOf("."))>-1&&(bt=bt.replace(".","")),(lt=bt.search(/e/i))>0?(Xe<0&&(Xe=lt),Xe+=+bt.slice(lt+1),bt=bt.substring(0,lt)):Xe<0&&(Xe=bt.length)}else{if(ie(Te,2,x.length,"Base"),Te==10&&ge)return at=new Me(le),it(at,m+at.e+1,b);if(bt=String(le),ze=typeof le=="number"){if(le*0!=0)return we(at,bt,ze,Te);if(at.s=1/le<0?(bt=bt.slice(1),-1):1,Me.DEBUG&&bt.replace(/^0\.0*|\./,"").length>15)throw Error(C+le)}else at.s=bt.charCodeAt(0)===45?(bt=bt.slice(1),-1):1;for(De=x.slice(0,Te),Xe=lt=0,Ye=bt.length;ltXe){Xe=Ye;continue}}else if(!Ke&&(bt==bt.toUpperCase()&&(bt=bt.toLowerCase())||bt==bt.toLowerCase()&&(bt=bt.toUpperCase()))){Ke=!0,lt=-1,Xe=0;continue}return we(at,String(le),ze,Te)}ze=!1,bt=Ce(bt,Te,10,at.s),(Xe=bt.indexOf("."))>-1?bt=bt.replace(".",""):Xe=bt.length}for(lt=0;bt.charCodeAt(lt)===48;lt++);for(Ye=bt.length;bt.charCodeAt(--Ye)===48;);if(bt=bt.slice(lt,++Ye)){if(Ye-=lt,ze&&Me.DEBUG&&Ye>15&&(le>R||le!==ce(le)))throw Error(C+at.s*le);if((Xe=Xe-lt-1)>T)at.c=at.e=null;else if(Xe=-P&&Ke<=P&&Ke===ce(Ke)){if(ot[0]===0){if(Ke===0&&ot.length===1)return!0;break e}if(Te=(Ke+1)%A,Te<1&&(Te+=A),String(ot[0]).length==Te){for(Te=0;Te=L||De!==ce(De))break e;if(De!==0)return!0}}}else if(ot===null&&Ke===null&&(Xe===null||Xe===1||Xe===-1))return!0;throw Error(z+"Invalid BigNumber: "+le)},Me.maximum=Me.max=function(){return _e(arguments,-1)},Me.minimum=Me.min=function(){return _e(arguments,1)},Me.random=function(){var le=9007199254740992,Te=Math.random()*le&2097151?function(){return ce(Math.random()*le)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(De){var ot,Ke,Xe,lt,ze,Ye=0,bt=[],at=new Me(p);if(De==null?De=m:ie(De,0,P),lt=w(De/A),E)if(crypto.getRandomValues){for(ot=crypto.getRandomValues(new Uint32Array(lt*=2));Ye>>11),ze>=9e15?(Ke=crypto.getRandomValues(new Uint32Array(2)),ot[Ye]=Ke[0],ot[Ye+1]=Ke[1]):(bt.push(ze%1e14),Ye+=2);Ye=lt/2}else if(crypto.randomBytes){for(ot=crypto.randomBytes(lt*=7);Ye=9e15?crypto.randomBytes(7).copy(ot,Ye):(bt.push(ze%1e14),Ye+=7);Ye=lt/7}else throw E=!1,Error(z+"crypto unavailable");if(!E)for(;Ye=10;ze/=10,Ye++);YeKe-1&&(ze[lt+1]==null&&(ze[lt+1]=0),ze[lt+1]+=ze[lt]/Ke|0,ze[lt]%=Ke)}return ze.reverse()}return function(De,ot,Ke,Xe,lt){var ze,Ye,bt,at,pt,Dt,Ct,Tt,zt=De.indexOf("."),kt=m,te=b;for(zt>=0&&(at=S,S=0,De=De.replace(".",""),Tt=new Me(ot),Dt=Tt.pow(De.length-zt),S=at,Tt.c=Te(re(Se(Dt.c),Dt.e,"0"),10,Ke,le),Tt.e=Tt.c.length),Ct=Te(De,ot,Ke,lt?(ze=x,le):(ze=le,x)),bt=at=Ct.length;Ct[--at]==0;Ct.pop());if(!Ct[0])return ze.charAt(0);if(zt<0?--bt:(Dt.c=Ct,Dt.e=bt,Dt.s=Xe,Dt=ke(Dt,Tt,kt,te,Ke),Ct=Dt.c,pt=Dt.r,bt=Dt.e),Ye=bt+kt+1,zt=Ct[Ye],at=Ke/2,pt=pt||Ye<0||Ct[Ye+1]!=null,pt=te<4?(zt!=null||pt)&&(te==0||te==(Dt.s<0?3:2)):zt>at||zt==at&&(te==4||pt||te==6&&Ct[Ye-1]&1||te==(Dt.s<0?8:7)),Ye<1||!Ct[0])De=pt?re(ze.charAt(1),-kt,ze.charAt(0)):ze.charAt(0);else{if(Ct.length=Ye,pt)for(--Ke;++Ct[--Ye]>Ke;)Ct[Ye]=0,Ye||(++bt,Ct=[1].concat(Ct));for(at=Ct.length;!Ct[--at];);for(zt=0,De="";zt<=at;De+=ze.charAt(Ct[zt++]));De=re(De,bt,ze.charAt(0))}return De}}(),ke=function(){function le(ot,Ke,Xe){var lt,ze,Ye,bt,at=0,pt=ot.length,Dt=Ke%U,Ct=Ke/U|0;for(ot=ot.slice();pt--;)Ye=ot[pt]%U,bt=ot[pt]/U|0,lt=Ct*Ye+bt*Dt,ze=Dt*Ye+lt%U*U+at,at=(ze/Xe|0)+(lt/U|0)+Ct*bt,ot[pt]=ze%Xe;return at&&(ot=[at].concat(ot)),ot}function Te(ot,Ke,Xe,lt){var ze,Ye;if(Xe!=lt)Ye=Xe>lt?1:-1;else for(ze=Ye=0;zeKe[ze]?1:-1;break}return Ye}function De(ot,Ke,Xe,lt){for(var ze=0;Xe--;)ot[Xe]-=ze,ze=ot[Xe]1;ot.splice(0,1));}return function(ot,Ke,Xe,lt,ze){var Ye,bt,at,pt,Dt,Ct,Tt,zt,kt,te,I,N,Ee,Ge,st,ut,cr,jt=ot.s==Ke.s?1:-1,Lt=ot.c,dr=Ke.c;if(!Lt||!Lt[0]||!dr||!dr[0])return new Me(!ot.s||!Ke.s||(Lt?dr&&Lt[0]==dr[0]:!dr)?NaN:Lt&&Lt[0]==0||!dr?jt*0:jt/0);for(zt=new Me(jt),kt=zt.c=[],bt=ot.e-Ke.e,jt=Xe+bt+1,ze||(ze=L,bt=J(ot.e/A)-J(Ke.e/A),jt=jt/A|0),at=0;dr[at]==(Lt[at]||0);at++);if(dr[at]>(Lt[at]||0)&&bt--,jt<0)kt.push(1),pt=!0;else{for(Ge=Lt.length,ut=dr.length,at=0,jt+=2,Dt=ce(ze/(dr[0]+1)),Dt>1&&(dr=le(dr,Dt,ze),Lt=le(Lt,Dt,ze),ut=dr.length,Ge=Lt.length),Ee=ut,te=Lt.slice(0,ut),I=te.length;I=ze/2&&st++;do{if(Dt=0,Ye=Te(dr,te,ut,I),Ye<0){if(N=te[0],ut!=I&&(N=N*ze+(te[1]||0)),Dt=ce(N/st),Dt>1)for(Dt>=ze&&(Dt=ze-1),Ct=le(dr,Dt,ze),Tt=Ct.length,I=te.length;Te(Ct,te,Tt,I)==1;)Dt--,De(Ct,ut=10;jt/=10,at++);it(zt,Xe+(zt.e=at+bt*A-1)+1,lt,pt)}else zt.e=bt,zt.r=+pt;return zt}}();function ne(le,Te,De,ot){var Ke,Xe,lt,ze,Ye;if(De==null?De=b:ie(De,0,8),!le.c)return le.toString();if(Ke=le.c[0],lt=le.e,Te==null)Ye=Se(le.c),Ye=ot==1||ot==2&&(lt<=u||lt>=h)?H(Ye,lt):re(Ye,lt,"0");else if(le=it(new Me(le),Te,De),Xe=le.e,Ye=Se(le.c),ze=Ye.length,ot==1||ot==2&&(Te<=Xe||Xe<=u)){for(;zeze){if(--Te>0)for(Ye+=".";Te--;Ye+="0");}else if(Te+=Xe-ze,Te>0)for(Xe+1==ze&&(Ye+=".");Te--;Ye+="0");return le.s<0&&Ke?"-"+Ye:Ye}function _e(le,Te){for(var De,ot,Ke=1,Xe=new Me(le[0]);Ke=10;Ke/=10,ot++);return(De=ot+De*A-1)>T?le.c=le.e=null:De=10;ze/=10,Ke++);if(Xe=Te-Ke,Xe<0)Xe+=A,lt=Te,Ye=pt[bt=0],at=ce(Ye/Dt[Ke-lt-1]%10);else if(bt=w((Xe+1)/A),bt>=pt.length)if(ot){for(;pt.length<=bt;pt.push(0));Ye=at=0,Ke=1,Xe%=A,lt=Xe-A+1}else break e;else{for(Ye=ze=pt[bt],Ke=1;ze>=10;ze/=10,Ke++);Xe%=A,lt=Xe-A+Ke,at=lt<0?0:ce(Ye/Dt[Ke-lt-1]%10)}if(ot=ot||Te<0||pt[bt+1]!=null||(lt<0?Ye:Ye%Dt[Ke-lt-1]),ot=De<4?(at||ot)&&(De==0||De==(le.s<0?3:2)):at>5||at==5&&(De==4||ot||De==6&&(Xe>0?lt>0?Ye/Dt[Ke-lt]:0:pt[bt-1])%10&1||De==(le.s<0?8:7)),Te<1||!pt[0])return pt.length=0,ot?(Te-=le.e+1,pt[0]=Dt[(A-Te%A)%A],le.e=-Te||0):pt[0]=le.e=0,le;if(Xe==0?(pt.length=bt,ze=1,bt--):(pt.length=bt+1,ze=Dt[A-Xe],pt[bt]=lt>0?ce(Ye/Dt[Ke-lt]%Dt[lt])*ze:0),ot)for(;;)if(bt==0){for(Xe=1,lt=pt[0];lt>=10;lt/=10,Xe++);for(lt=pt[0]+=ze,ze=1;lt>=10;lt/=10,ze++);Xe!=ze&&(le.e++,pt[0]==L&&(pt[0]=1));break}else{if(pt[bt]+=ze,pt[bt]!=L)break;pt[bt--]=0,ze=1}for(Xe=pt.length;pt[--Xe]===0;pt.pop());}le.e>T?le.c=le.e=null:le.e=h?H(Te,De):re(Te,De,"0"),le.s<0?"-"+Te:Te)}return D.absoluteValue=D.abs=function(){var le=new Me(this);return le.s<0&&(le.s=1),le},D.comparedTo=function(le,Te){return Pe(this,new Me(le,Te))},D.decimalPlaces=D.dp=function(le,Te){var De,ot,Ke,Xe=this;if(le!=null)return ie(le,0,P),Te==null?Te=b:ie(Te,0,8),it(new Me(Xe),le+Xe.e+1,Te);if(!(De=Xe.c))return null;if(ot=((Ke=De.length-1)-J(this.e/A))*A,Ke=De[Ke])for(;Ke%10==0;Ke/=10,ot--);return ot<0&&(ot=0),ot},D.dividedBy=D.div=function(le,Te){return ke(this,new Me(le,Te),m,b)},D.dividedToIntegerBy=D.idiv=function(le,Te){return ke(this,new Me(le,Te),0,1)},D.exponentiatedBy=D.pow=function(le,Te){var De,ot,Ke,Xe,lt,ze,Ye,bt,at,pt=this;if(le=new Me(le),le.c&&!le.isInteger())throw Error(z+"Exponent not an integer: "+ft(le));if(Te!=null&&(Te=new Me(Te)),ze=le.e>14,!pt.c||!pt.c[0]||pt.c[0]==1&&!pt.e&&pt.c.length==1||!le.c||!le.c[0])return at=new Me(Math.pow(+ft(pt),ze?le.s*(2-W(le)):+ft(le))),Te?at.mod(Te):at;if(Ye=le.s<0,Te){if(Te.c?!Te.c[0]:!Te.s)return new Me(NaN);ot=!Ye&&pt.isInteger()&&Te.isInteger(),ot&&(pt=pt.mod(Te))}else{if(le.e>9&&(pt.e>0||pt.e<-1||(pt.e==0?pt.c[0]>1||ze&&pt.c[1]>=24e7:pt.c[0]<8e13||ze&&pt.c[0]<=9999975e7)))return Xe=pt.s<0&&W(le)?-0:0,pt.e>-1&&(Xe=1/Xe),new Me(Ye?1/Xe:Xe);S&&(Xe=w(S/A+2))}for(ze?(De=new Me(.5),Ye&&(le.s=1),bt=W(le)):(Ke=Math.abs(+ft(le)),bt=Ke%2),at=new Me(p);;){if(bt){if(at=at.times(pt),!at.c)break;Xe?at.c.length>Xe&&(at.c.length=Xe):ot&&(at=at.mod(Te))}if(Ke){if(Ke=ce(Ke/2),Ke===0)break;bt=Ke%2}else if(le=le.times(De),it(le,le.e+1,1),le.e>14)bt=W(le);else{if(Ke=+ft(le),Ke===0)break;bt=Ke%2}pt=pt.times(pt),Xe?pt.c&&pt.c.length>Xe&&(pt.c.length=Xe):ot&&(pt=pt.mod(Te))}return ot?at:(Ye&&(at=p.div(at)),Te?at.mod(Te):Xe?it(at,S,b,lt):at)},D.integerValue=function(le){var Te=new Me(this);return le==null?le=b:ie(le,0,8),it(Te,Te.e+1,le)},D.isEqualTo=D.eq=function(le,Te){return Pe(this,new Me(le,Te))===0},D.isFinite=function(){return!!this.c},D.isGreaterThan=D.gt=function(le,Te){return Pe(this,new Me(le,Te))>0},D.isGreaterThanOrEqualTo=D.gte=function(le,Te){return(Te=Pe(this,new Me(le,Te)))===1||Te===0},D.isInteger=function(){return!!this.c&&J(this.e/A)>this.c.length-2},D.isLessThan=D.lt=function(le,Te){return Pe(this,new Me(le,Te))<0},D.isLessThanOrEqualTo=D.lte=function(le,Te){return(Te=Pe(this,new Me(le,Te)))===-1||Te===0},D.isNaN=function(){return!this.s},D.isNegative=function(){return this.s<0},D.isPositive=function(){return this.s>0},D.isZero=function(){return!!this.c&&this.c[0]==0},D.minus=function(le,Te){var De,ot,Ke,Xe,lt=this,ze=lt.s;if(le=new Me(le,Te),Te=le.s,!ze||!Te)return new Me(NaN);if(ze!=Te)return le.s=-Te,lt.plus(le);var Ye=lt.e/A,bt=le.e/A,at=lt.c,pt=le.c;if(!Ye||!bt){if(!at||!pt)return at?(le.s=-Te,le):new Me(pt?lt:NaN);if(!at[0]||!pt[0])return pt[0]?(le.s=-Te,le):new Me(at[0]?lt:b==3?-0:0)}if(Ye=J(Ye),bt=J(bt),at=at.slice(),ze=Ye-bt){for((Xe=ze<0)?(ze=-ze,Ke=at):(bt=Ye,Ke=pt),Ke.reverse(),Te=ze;Te--;Ke.push(0));Ke.reverse()}else for(ot=(Xe=(ze=at.length)<(Te=pt.length))?ze:Te,ze=Te=0;Te0)for(;Te--;at[De++]=0);for(Te=L-1;ot>ze;){if(at[--ot]=0;){for(De=0,Dt=N[Ke]%kt,Ct=N[Ke]/kt|0,lt=Ye,Xe=Ke+lt;Xe>Ke;)bt=I[--lt]%kt,at=I[lt]/kt|0,ze=Ct*bt+at*Dt,bt=Dt*bt+ze%kt*kt+Tt[Xe]+De,De=(bt/zt|0)+(ze/kt|0)+Ct*at,Tt[Xe--]=bt%zt;Tt[Xe]=De}return De?++ot:Tt.splice(0,1),Ve(le,Tt,ot)},D.negated=function(){var le=new Me(this);return le.s=-le.s||null,le},D.plus=function(le,Te){var De,ot=this,Ke=ot.s;if(le=new Me(le,Te),Te=le.s,!Ke||!Te)return new Me(NaN);if(Ke!=Te)return le.s=-Te,ot.minus(le);var Xe=ot.e/A,lt=le.e/A,ze=ot.c,Ye=le.c;if(!Xe||!lt){if(!ze||!Ye)return new Me(Ke/0);if(!ze[0]||!Ye[0])return Ye[0]?le:new Me(ze[0]?ot:Ke*0)}if(Xe=J(Xe),lt=J(lt),ze=ze.slice(),Ke=Xe-lt){for(Ke>0?(lt=Xe,De=Ye):(Ke=-Ke,De=ze),De.reverse();Ke--;De.push(0));De.reverse()}for(Ke=ze.length,Te=Ye.length,Ke-Te<0&&(De=Ye,Ye=ze,ze=De,Te=Ke),Ke=0;Te;)Ke=(ze[--Te]=ze[Te]+Ye[Te]+Ke)/L|0,ze[Te]=L===ze[Te]?0:ze[Te]%L;return Ke&&(ze=[Ke].concat(ze),++lt),Ve(le,ze,lt)},D.precision=D.sd=function(le,Te){var De,ot,Ke,Xe=this;if(le!=null&&le!==!!le)return ie(le,1,P),Te==null?Te=b:ie(Te,0,8),it(new Me(Xe),le,Te);if(!(De=Xe.c))return null;if(Ke=De.length-1,ot=Ke*A+1,Ke=De[Ke]){for(;Ke%10==0;Ke/=10,ot--);for(Ke=De[0];Ke>=10;Ke/=10,ot++);}return le&&Xe.e+1>ot&&(ot=Xe.e+1),ot},D.shiftedBy=function(le){return ie(le,-R,R),this.times("1e"+le)},D.squareRoot=D.sqrt=function(){var le,Te,De,ot,Ke,Xe=this,lt=Xe.c,ze=Xe.s,Ye=Xe.e,bt=m+4,at=new Me("0.5");if(ze!==1||!lt||!lt[0])return new Me(!ze||ze<0&&(!lt||lt[0])?NaN:lt?Xe:1/0);if(ze=Math.sqrt(+ft(Xe)),ze==0||ze==1/0?(Te=Se(lt),(Te.length+Ye)%2==0&&(Te+="0"),ze=Math.sqrt(+Te),Ye=J((Ye+1)/2)-(Ye<0||Ye%2),ze==1/0?Te="5e"+Ye:(Te=ze.toExponential(),Te=Te.slice(0,Te.indexOf("e")+1)+Ye),De=new Me(Te)):De=new Me(ze+""),De.c[0]){for(Ye=De.e,ze=Ye+bt,ze<3&&(ze=0);;)if(Ke=De,De=at.times(Ke.plus(ke(Xe,Ke,bt,1))),Se(Ke.c).slice(0,ze)===(Te=Se(De.c)).slice(0,ze))if(De.e0&&Tt>0){for(Xe=Tt%ze||ze,at=Ct.substr(0,Xe);Xe0&&(at+=bt+Ct.slice(Xe)),Dt&&(at="-"+at)}ot=pt?at+(De.decimalSeparator||"")+((Ye=+De.fractionGroupSize)?pt.replace(new RegExp("\\d{"+Ye+"}\\B","g"),"$&"+(De.fractionGroupSeparator||"")):pt):at}return(De.prefix||"")+ot+(De.suffix||"")},D.toFraction=function(le){var Te,De,ot,Ke,Xe,lt,ze,Ye,bt,at,pt,Dt,Ct=this,Tt=Ct.c;if(le!=null&&(ze=new Me(le),!ze.isInteger()&&(ze.c||ze.s!==1)||ze.lt(p)))throw Error(z+"Argument "+(ze.isInteger()?"out of range: ":"not an integer: ")+ft(ze));if(!Tt)return new Me(Ct);for(Te=new Me(p),bt=De=new Me(p),ot=Ye=new Me(p),Dt=Se(Tt),Xe=Te.e=Dt.length-Ct.e-1,Te.c[0]=B[(lt=Xe%A)<0?A+lt:lt],le=!le||ze.comparedTo(Te)>0?Xe>0?Te:bt:ze,lt=T,T=1/0,ze=new Me(Dt),Ye.c[0]=0;at=ke(ze,Te,0,1),Ke=De.plus(at.times(ot)),Ke.comparedTo(le)!=1;)De=ot,ot=Ke,bt=Ye.plus(at.times(Ke=bt)),Ye=Ke,Te=ze.minus(at.times(Ke=Te)),ze=Ke;return Ke=ke(le.minus(De),ot,0,1),Ye=Ye.plus(Ke.times(bt)),De=De.plus(Ke.times(ot)),Ye.s=bt.s=Ct.s,Xe=Xe*2,pt=ke(bt,ot,Xe,b).minus(Ct).abs().comparedTo(ke(Ye,De,Xe,b).minus(Ct).abs())<1?[bt,ot]:[Ye,De],T=lt,pt},D.toNumber=function(){return+ft(this)},D.toPrecision=function(le,Te){return le!=null&&ie(le,1,P),ne(this,le,Te,2)},D.toString=function(le){var Te,De=this,ot=De.s,Ke=De.e;return Ke===null?ot?(Te="Infinity",ot<0&&(Te="-"+Te)):Te="NaN":(le==null?Te=Ke<=u||Ke>=h?H(Se(De.c),Ke):re(Se(De.c),Ke,"0"):le===10&&ge?(De=it(new Me(De),m+Ke+1,b),Te=re(Se(De.c),De.e,"0")):(ie(le,2,x.length,"Base"),Te=Ce(re(Se(De.c),Ke,"0"),10,le,ot,!0)),ot<0&&De.c[0]&&(Te="-"+Te)),Te},D.valueOf=D.toJSON=function(){return ft(this)},D._isBigNumber=!0,V!=null&&Me.set(V),Me}function J(V){var ke=V|0;return V>0||V===ke?ke:ke-1}function Se(V){for(var ke,Ce,we=1,D=V.length,p=V[0]+"";weh^Ce?1:-1;for(b=(u=D.length)<(h=p.length)?u:h,m=0;mp[m]^Ce?1:-1;return u==h?0:u>h^Ce?1:-1}function ie(V,ke,Ce,we){if(VCe||V!==ce(V))throw Error(z+(we||"Argument")+(typeof V=="number"?VCe?" out of range: ":" not an integer: ":" not a primitive number: ")+String(V))}function W(V){var ke=V.c.length-1;return J(V.e/A)==ke&&V.c[ke]%2!=0}function H(V,ke){return(V.length>1?V.charAt(0)+"."+V.slice(1):V)+(ke<0?"e":"e+")+ke}function re(V,ke,Ce){var we,D;if(ke<0){for(D=Ce+".";++ke;D+=Ce);V=D+V}else if(we=V.length,++ke>we){for(D=Ce,ke-=we;--ke;D+=Ce);V+=D}else ke0?p:m},w.min=function(p,m){return p.cmp(m)<0?p:m},w.prototype._init=function(p,m,b){if(typeof p=="number")return this._initNumber(p,m,b);if(typeof p=="object")return this._initArray(p,m,b);m==="hex"&&(m=16),de(m===(m|0)&&m>=2&&m<=36),p=p.toString().replace(/\s+/g,"");var u=0;p[0]==="-"&&(u++,this.negative=1),u=0;u-=3)v=p[u]|p[u-1]<<8|p[u-2]<<16,this.words[h]|=v<>>26-T&67108863,T+=24,T>=26&&(T-=26,h++);else if(b==="le")for(u=0,h=0;u>>26-T&67108863,T+=24,T>=26&&(T-=26,h++);return this.strip()};function z(D,p){var m=D.charCodeAt(p);return m>=65&&m<=70?m-55:m>=97&&m<=102?m-87:m-48&15}function C(D,p,m){var b=z(D,m);return m-1>=p&&(b|=z(D,m-1)<<4),b}w.prototype._parseHex=function(p,m,b){this.length=Math.ceil((p.length-m)/6),this.words=new Array(this.length);for(var u=0;u=m;u-=2)T=C(p,m,u)<=18?(h-=18,v+=1,this.words[v]|=T>>>26):h+=8;else{var E=p.length-m;for(u=E%2===0?m+1:m;u=18?(h-=18,v+=1,this.words[v]|=T>>>26):h+=8}this.strip()};function L(D,p,m,b){for(var u=0,h=Math.min(D.length,m),v=p;v=49?u+=T-49+10:T>=17?u+=T-17+10:u+=T}return u}w.prototype._parseBase=function(p,m,b){this.words=[0],this.length=1;for(var u=0,h=1;h<=67108863;h*=m)u++;u--,h=h/m|0;for(var v=p.length-b,T=v%u,E=Math.min(v,v-T)+b,g=0,S=b;S1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},w.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},w.prototype.inspect=function(){return(this.red?""};var A=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],R=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],B=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];w.prototype.toString=function(p,m){p=p||10,m=m|0||1;var b;if(p===16||p==="hex"){b="";for(var u=0,h=0,v=0;v>>24-u&16777215,h!==0||v!==this.length-1?b=A[6-E.length]+E+b:b=E+b,u+=2,u>=26&&(u-=26,v--)}for(h!==0&&(b=h.toString(16)+b);b.length%m!==0;)b="0"+b;return this.negative!==0&&(b="-"+b),b}if(p===(p|0)&&p>=2&&p<=36){var g=R[p],S=B[p];b="";var q=this.clone();for(q.negative=0;!q.isZero();){var x=q.modn(S).toString(p);q=q.idivn(S),q.isZero()?b=x+b:b=A[g-x.length]+x+b}for(this.isZero()&&(b="0"+b);b.length%m!==0;)b="0"+b;return this.negative!==0&&(b="-"+b),b}de(!1,"Base should be between 2 and 36")},w.prototype.toNumber=function(){var p=this.words[0];return this.length===2?p+=this.words[1]*67108864:this.length===3&&this.words[2]===1?p+=4503599627370496+this.words[1]*67108864:this.length>2&&de(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-p:p},w.prototype.toJSON=function(){return this.toString(16)},w.prototype.toBuffer=function(p,m){return de(typeof ce<"u"),this.toArrayLike(ce,p,m)},w.prototype.toArray=function(p,m){return this.toArrayLike(Array,p,m)},w.prototype.toArrayLike=function(p,m,b){var u=this.byteLength(),h=b||Math.max(1,u);de(u<=h,"byte array longer than desired length"),de(h>0,"Requested array length <= 0"),this.strip();var v=m==="le",T=new p(h),E,g,S=this.clone();if(v){for(g=0;!S.isZero();g++)E=S.andln(255),S.iushrn(8),T[g]=E;for(;g=4096&&(b+=13,m>>>=13),m>=64&&(b+=7,m>>>=7),m>=8&&(b+=4,m>>>=4),m>=2&&(b+=2,m>>>=2),b+m},w.prototype._zeroBits=function(p){if(p===0)return 26;var m=p,b=0;return m&8191||(b+=13,m>>>=13),m&127||(b+=7,m>>>=7),m&15||(b+=4,m>>>=4),m&3||(b+=2,m>>>=2),m&1||b++,b},w.prototype.bitLength=function(){var p=this.words[this.length-1],m=this._countBits(p);return(this.length-1)*26+m};function U(D){for(var p=new Array(D.bitLength()),m=0;m>>u}return p}w.prototype.zeroBits=function(){if(this.isZero())return 0;for(var p=0,m=0;mp.length?this.clone().ior(p):p.clone().ior(this)},w.prototype.uor=function(p){return this.length>p.length?this.clone().iuor(p):p.clone().iuor(this)},w.prototype.iuand=function(p){var m;this.length>p.length?m=p:m=this;for(var b=0;bp.length?this.clone().iand(p):p.clone().iand(this)},w.prototype.uand=function(p){return this.length>p.length?this.clone().iuand(p):p.clone().iuand(this)},w.prototype.iuxor=function(p){var m,b;this.length>p.length?(m=this,b=p):(m=p,b=this);for(var u=0;up.length?this.clone().ixor(p):p.clone().ixor(this)},w.prototype.uxor=function(p){return this.length>p.length?this.clone().iuxor(p):p.clone().iuxor(this)},w.prototype.inotn=function(p){de(typeof p=="number"&&p>=0);var m=Math.ceil(p/26)|0,b=p%26;this._expand(m),b>0&&m--;for(var u=0;u0&&(this.words[u]=~this.words[u]&67108863>>26-b),this.strip()},w.prototype.notn=function(p){return this.clone().inotn(p)},w.prototype.setn=function(p,m){de(typeof p=="number"&&p>=0);var b=p/26|0,u=p%26;return this._expand(b+1),m?this.words[b]=this.words[b]|1<p.length?(b=this,u=p):(b=p,u=this);for(var h=0,v=0;v>>26;for(;h!==0&&v>>26;if(this.length=b.length,h!==0)this.words[this.length]=h,this.length++;else if(b!==this)for(;vp.length?this.clone().iadd(p):p.clone().iadd(this)},w.prototype.isub=function(p){if(p.negative!==0){p.negative=0;var m=this.iadd(p);return p.negative=1,m._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(p),this.negative=1,this._normSign();var b=this.cmp(p);if(b===0)return this.negative=0,this.length=1,this.words[0]=0,this;var u,h;b>0?(u=this,h=p):(u=p,h=this);for(var v=0,T=0;T>26,this.words[T]=m&67108863;for(;v!==0&&T>26,this.words[T]=m&67108863;if(v===0&&T>>26,q=E&67108863,x=Math.min(g,p.length-1),ge=Math.max(0,g-D.length+1);ge<=x;ge++){var Me=g-ge|0;u=D.words[Me]|0,h=p.words[ge]|0,v=u*h+q,S+=v/67108864|0,q=v&67108863}m.words[g]=q|0,E=S|0}return E!==0?m.words[g]=E|0:m.length--,m.strip()}var F=function(p,m,b){var u=p.words,h=m.words,v=b.words,T=0,E,g,S,q=u[0]|0,x=q&8191,ge=q>>>13,Me=u[1]|0,ne=Me&8191,_e=Me>>>13,Ve=u[2]|0,it=Ve&8191,ft=Ve>>>13,le=u[3]|0,Te=le&8191,De=le>>>13,ot=u[4]|0,Ke=ot&8191,Xe=ot>>>13,lt=u[5]|0,ze=lt&8191,Ye=lt>>>13,bt=u[6]|0,at=bt&8191,pt=bt>>>13,Dt=u[7]|0,Ct=Dt&8191,Tt=Dt>>>13,zt=u[8]|0,kt=zt&8191,te=zt>>>13,I=u[9]|0,N=I&8191,Ee=I>>>13,Ge=h[0]|0,st=Ge&8191,ut=Ge>>>13,cr=h[1]|0,jt=cr&8191,Lt=cr>>>13,dr=h[2]|0,Wt=dr&8191,Sr=dr>>>13,Jc=h[3]|0,Ir=Jc&8191,Cr=Jc>>>13,Xc=h[4]|0,gr=Xc&8191,Tr=Xc>>>13,Qc=h[5]|0,Or=Qc&8191,Nr=Qc>>>13,ef=h[6]|0,Rr=ef&8191,wr=ef>>>13,tf=h[7]|0,Br=tf&8191,Lr=tf>>>13,rf=h[8]|0,$r=rf&8191,Xr=rf>>>13,nf=h[9]|0,tn=nf&8191,fn=nf>>>13;b.negative=p.negative^m.negative,b.length=19,E=Math.imul(x,st),g=Math.imul(x,ut),g=g+Math.imul(ge,st)|0,S=Math.imul(ge,ut);var Xo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(Xo>>>26)|0,Xo&=67108863,E=Math.imul(ne,st),g=Math.imul(ne,ut),g=g+Math.imul(_e,st)|0,S=Math.imul(_e,ut),E=E+Math.imul(x,jt)|0,g=g+Math.imul(x,Lt)|0,g=g+Math.imul(ge,jt)|0,S=S+Math.imul(ge,Lt)|0;var Bn=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(Bn>>>26)|0,Bn&=67108863,E=Math.imul(it,st),g=Math.imul(it,ut),g=g+Math.imul(ft,st)|0,S=Math.imul(ft,ut),E=E+Math.imul(ne,jt)|0,g=g+Math.imul(ne,Lt)|0,g=g+Math.imul(_e,jt)|0,S=S+Math.imul(_e,Lt)|0,E=E+Math.imul(x,Wt)|0,g=g+Math.imul(x,Sr)|0,g=g+Math.imul(ge,Wt)|0,S=S+Math.imul(ge,Sr)|0;var ea=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(ea>>>26)|0,ea&=67108863,E=Math.imul(Te,st),g=Math.imul(Te,ut),g=g+Math.imul(De,st)|0,S=Math.imul(De,ut),E=E+Math.imul(it,jt)|0,g=g+Math.imul(it,Lt)|0,g=g+Math.imul(ft,jt)|0,S=S+Math.imul(ft,Lt)|0,E=E+Math.imul(ne,Wt)|0,g=g+Math.imul(ne,Sr)|0,g=g+Math.imul(_e,Wt)|0,S=S+Math.imul(_e,Sr)|0,E=E+Math.imul(x,Ir)|0,g=g+Math.imul(x,Cr)|0,g=g+Math.imul(ge,Ir)|0,S=S+Math.imul(ge,Cr)|0;var fo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(fo>>>26)|0,fo&=67108863,E=Math.imul(Ke,st),g=Math.imul(Ke,ut),g=g+Math.imul(Xe,st)|0,S=Math.imul(Xe,ut),E=E+Math.imul(Te,jt)|0,g=g+Math.imul(Te,Lt)|0,g=g+Math.imul(De,jt)|0,S=S+Math.imul(De,Lt)|0,E=E+Math.imul(it,Wt)|0,g=g+Math.imul(it,Sr)|0,g=g+Math.imul(ft,Wt)|0,S=S+Math.imul(ft,Sr)|0,E=E+Math.imul(ne,Ir)|0,g=g+Math.imul(ne,Cr)|0,g=g+Math.imul(_e,Ir)|0,S=S+Math.imul(_e,Cr)|0,E=E+Math.imul(x,gr)|0,g=g+Math.imul(x,Tr)|0,g=g+Math.imul(ge,gr)|0,S=S+Math.imul(ge,Tr)|0;var uo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(uo>>>26)|0,uo&=67108863,E=Math.imul(ze,st),g=Math.imul(ze,ut),g=g+Math.imul(Ye,st)|0,S=Math.imul(Ye,ut),E=E+Math.imul(Ke,jt)|0,g=g+Math.imul(Ke,Lt)|0,g=g+Math.imul(Xe,jt)|0,S=S+Math.imul(Xe,Lt)|0,E=E+Math.imul(Te,Wt)|0,g=g+Math.imul(Te,Sr)|0,g=g+Math.imul(De,Wt)|0,S=S+Math.imul(De,Sr)|0,E=E+Math.imul(it,Ir)|0,g=g+Math.imul(it,Cr)|0,g=g+Math.imul(ft,Ir)|0,S=S+Math.imul(ft,Cr)|0,E=E+Math.imul(ne,gr)|0,g=g+Math.imul(ne,Tr)|0,g=g+Math.imul(_e,gr)|0,S=S+Math.imul(_e,Tr)|0,E=E+Math.imul(x,Or)|0,g=g+Math.imul(x,Nr)|0,g=g+Math.imul(ge,Or)|0,S=S+Math.imul(ge,Nr)|0;var lo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(lo>>>26)|0,lo&=67108863,E=Math.imul(at,st),g=Math.imul(at,ut),g=g+Math.imul(pt,st)|0,S=Math.imul(pt,ut),E=E+Math.imul(ze,jt)|0,g=g+Math.imul(ze,Lt)|0,g=g+Math.imul(Ye,jt)|0,S=S+Math.imul(Ye,Lt)|0,E=E+Math.imul(Ke,Wt)|0,g=g+Math.imul(Ke,Sr)|0,g=g+Math.imul(Xe,Wt)|0,S=S+Math.imul(Xe,Sr)|0,E=E+Math.imul(Te,Ir)|0,g=g+Math.imul(Te,Cr)|0,g=g+Math.imul(De,Ir)|0,S=S+Math.imul(De,Cr)|0,E=E+Math.imul(it,gr)|0,g=g+Math.imul(it,Tr)|0,g=g+Math.imul(ft,gr)|0,S=S+Math.imul(ft,Tr)|0,E=E+Math.imul(ne,Or)|0,g=g+Math.imul(ne,Nr)|0,g=g+Math.imul(_e,Or)|0,S=S+Math.imul(_e,Nr)|0,E=E+Math.imul(x,Rr)|0,g=g+Math.imul(x,wr)|0,g=g+Math.imul(ge,Rr)|0,S=S+Math.imul(ge,wr)|0;var ho=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(ho>>>26)|0,ho&=67108863,E=Math.imul(Ct,st),g=Math.imul(Ct,ut),g=g+Math.imul(Tt,st)|0,S=Math.imul(Tt,ut),E=E+Math.imul(at,jt)|0,g=g+Math.imul(at,Lt)|0,g=g+Math.imul(pt,jt)|0,S=S+Math.imul(pt,Lt)|0,E=E+Math.imul(ze,Wt)|0,g=g+Math.imul(ze,Sr)|0,g=g+Math.imul(Ye,Wt)|0,S=S+Math.imul(Ye,Sr)|0,E=E+Math.imul(Ke,Ir)|0,g=g+Math.imul(Ke,Cr)|0,g=g+Math.imul(Xe,Ir)|0,S=S+Math.imul(Xe,Cr)|0,E=E+Math.imul(Te,gr)|0,g=g+Math.imul(Te,Tr)|0,g=g+Math.imul(De,gr)|0,S=S+Math.imul(De,Tr)|0,E=E+Math.imul(it,Or)|0,g=g+Math.imul(it,Nr)|0,g=g+Math.imul(ft,Or)|0,S=S+Math.imul(ft,Nr)|0,E=E+Math.imul(ne,Rr)|0,g=g+Math.imul(ne,wr)|0,g=g+Math.imul(_e,Rr)|0,S=S+Math.imul(_e,wr)|0,E=E+Math.imul(x,Br)|0,g=g+Math.imul(x,Lr)|0,g=g+Math.imul(ge,Br)|0,S=S+Math.imul(ge,Lr)|0;var po=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(po>>>26)|0,po&=67108863,E=Math.imul(kt,st),g=Math.imul(kt,ut),g=g+Math.imul(te,st)|0,S=Math.imul(te,ut),E=E+Math.imul(Ct,jt)|0,g=g+Math.imul(Ct,Lt)|0,g=g+Math.imul(Tt,jt)|0,S=S+Math.imul(Tt,Lt)|0,E=E+Math.imul(at,Wt)|0,g=g+Math.imul(at,Sr)|0,g=g+Math.imul(pt,Wt)|0,S=S+Math.imul(pt,Sr)|0,E=E+Math.imul(ze,Ir)|0,g=g+Math.imul(ze,Cr)|0,g=g+Math.imul(Ye,Ir)|0,S=S+Math.imul(Ye,Cr)|0,E=E+Math.imul(Ke,gr)|0,g=g+Math.imul(Ke,Tr)|0,g=g+Math.imul(Xe,gr)|0,S=S+Math.imul(Xe,Tr)|0,E=E+Math.imul(Te,Or)|0,g=g+Math.imul(Te,Nr)|0,g=g+Math.imul(De,Or)|0,S=S+Math.imul(De,Nr)|0,E=E+Math.imul(it,Rr)|0,g=g+Math.imul(it,wr)|0,g=g+Math.imul(ft,Rr)|0,S=S+Math.imul(ft,wr)|0,E=E+Math.imul(ne,Br)|0,g=g+Math.imul(ne,Lr)|0,g=g+Math.imul(_e,Br)|0,S=S+Math.imul(_e,Lr)|0,E=E+Math.imul(x,$r)|0,g=g+Math.imul(x,Xr)|0,g=g+Math.imul(ge,$r)|0,S=S+Math.imul(ge,Xr)|0;var bo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(bo>>>26)|0,bo&=67108863,E=Math.imul(N,st),g=Math.imul(N,ut),g=g+Math.imul(Ee,st)|0,S=Math.imul(Ee,ut),E=E+Math.imul(kt,jt)|0,g=g+Math.imul(kt,Lt)|0,g=g+Math.imul(te,jt)|0,S=S+Math.imul(te,Lt)|0,E=E+Math.imul(Ct,Wt)|0,g=g+Math.imul(Ct,Sr)|0,g=g+Math.imul(Tt,Wt)|0,S=S+Math.imul(Tt,Sr)|0,E=E+Math.imul(at,Ir)|0,g=g+Math.imul(at,Cr)|0,g=g+Math.imul(pt,Ir)|0,S=S+Math.imul(pt,Cr)|0,E=E+Math.imul(ze,gr)|0,g=g+Math.imul(ze,Tr)|0,g=g+Math.imul(Ye,gr)|0,S=S+Math.imul(Ye,Tr)|0,E=E+Math.imul(Ke,Or)|0,g=g+Math.imul(Ke,Nr)|0,g=g+Math.imul(Xe,Or)|0,S=S+Math.imul(Xe,Nr)|0,E=E+Math.imul(Te,Rr)|0,g=g+Math.imul(Te,wr)|0,g=g+Math.imul(De,Rr)|0,S=S+Math.imul(De,wr)|0,E=E+Math.imul(it,Br)|0,g=g+Math.imul(it,Lr)|0,g=g+Math.imul(ft,Br)|0,S=S+Math.imul(ft,Lr)|0,E=E+Math.imul(ne,$r)|0,g=g+Math.imul(ne,Xr)|0,g=g+Math.imul(_e,$r)|0,S=S+Math.imul(_e,Xr)|0,E=E+Math.imul(x,tn)|0,g=g+Math.imul(x,fn)|0,g=g+Math.imul(ge,tn)|0,S=S+Math.imul(ge,fn)|0;var go=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(go>>>26)|0,go&=67108863,E=Math.imul(N,jt),g=Math.imul(N,Lt),g=g+Math.imul(Ee,jt)|0,S=Math.imul(Ee,Lt),E=E+Math.imul(kt,Wt)|0,g=g+Math.imul(kt,Sr)|0,g=g+Math.imul(te,Wt)|0,S=S+Math.imul(te,Sr)|0,E=E+Math.imul(Ct,Ir)|0,g=g+Math.imul(Ct,Cr)|0,g=g+Math.imul(Tt,Ir)|0,S=S+Math.imul(Tt,Cr)|0,E=E+Math.imul(at,gr)|0,g=g+Math.imul(at,Tr)|0,g=g+Math.imul(pt,gr)|0,S=S+Math.imul(pt,Tr)|0,E=E+Math.imul(ze,Or)|0,g=g+Math.imul(ze,Nr)|0,g=g+Math.imul(Ye,Or)|0,S=S+Math.imul(Ye,Nr)|0,E=E+Math.imul(Ke,Rr)|0,g=g+Math.imul(Ke,wr)|0,g=g+Math.imul(Xe,Rr)|0,S=S+Math.imul(Xe,wr)|0,E=E+Math.imul(Te,Br)|0,g=g+Math.imul(Te,Lr)|0,g=g+Math.imul(De,Br)|0,S=S+Math.imul(De,Lr)|0,E=E+Math.imul(it,$r)|0,g=g+Math.imul(it,Xr)|0,g=g+Math.imul(ft,$r)|0,S=S+Math.imul(ft,Xr)|0,E=E+Math.imul(ne,tn)|0,g=g+Math.imul(ne,fn)|0,g=g+Math.imul(_e,tn)|0,S=S+Math.imul(_e,fn)|0;var Ti=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(Ti>>>26)|0,Ti&=67108863,E=Math.imul(N,Wt),g=Math.imul(N,Sr),g=g+Math.imul(Ee,Wt)|0,S=Math.imul(Ee,Sr),E=E+Math.imul(kt,Ir)|0,g=g+Math.imul(kt,Cr)|0,g=g+Math.imul(te,Ir)|0,S=S+Math.imul(te,Cr)|0,E=E+Math.imul(Ct,gr)|0,g=g+Math.imul(Ct,Tr)|0,g=g+Math.imul(Tt,gr)|0,S=S+Math.imul(Tt,Tr)|0,E=E+Math.imul(at,Or)|0,g=g+Math.imul(at,Nr)|0,g=g+Math.imul(pt,Or)|0,S=S+Math.imul(pt,Nr)|0,E=E+Math.imul(ze,Rr)|0,g=g+Math.imul(ze,wr)|0,g=g+Math.imul(Ye,Rr)|0,S=S+Math.imul(Ye,wr)|0,E=E+Math.imul(Ke,Br)|0,g=g+Math.imul(Ke,Lr)|0,g=g+Math.imul(Xe,Br)|0,S=S+Math.imul(Xe,Lr)|0,E=E+Math.imul(Te,$r)|0,g=g+Math.imul(Te,Xr)|0,g=g+Math.imul(De,$r)|0,S=S+Math.imul(De,Xr)|0,E=E+Math.imul(it,tn)|0,g=g+Math.imul(it,fn)|0,g=g+Math.imul(ft,tn)|0,S=S+Math.imul(ft,fn)|0;var mo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(mo>>>26)|0,mo&=67108863,E=Math.imul(N,Ir),g=Math.imul(N,Cr),g=g+Math.imul(Ee,Ir)|0,S=Math.imul(Ee,Cr),E=E+Math.imul(kt,gr)|0,g=g+Math.imul(kt,Tr)|0,g=g+Math.imul(te,gr)|0,S=S+Math.imul(te,Tr)|0,E=E+Math.imul(Ct,Or)|0,g=g+Math.imul(Ct,Nr)|0,g=g+Math.imul(Tt,Or)|0,S=S+Math.imul(Tt,Nr)|0,E=E+Math.imul(at,Rr)|0,g=g+Math.imul(at,wr)|0,g=g+Math.imul(pt,Rr)|0,S=S+Math.imul(pt,wr)|0,E=E+Math.imul(ze,Br)|0,g=g+Math.imul(ze,Lr)|0,g=g+Math.imul(Ye,Br)|0,S=S+Math.imul(Ye,Lr)|0,E=E+Math.imul(Ke,$r)|0,g=g+Math.imul(Ke,Xr)|0,g=g+Math.imul(Xe,$r)|0,S=S+Math.imul(Xe,Xr)|0,E=E+Math.imul(Te,tn)|0,g=g+Math.imul(Te,fn)|0,g=g+Math.imul(De,tn)|0,S=S+Math.imul(De,fn)|0;var yo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(yo>>>26)|0,yo&=67108863,E=Math.imul(N,gr),g=Math.imul(N,Tr),g=g+Math.imul(Ee,gr)|0,S=Math.imul(Ee,Tr),E=E+Math.imul(kt,Or)|0,g=g+Math.imul(kt,Nr)|0,g=g+Math.imul(te,Or)|0,S=S+Math.imul(te,Nr)|0,E=E+Math.imul(Ct,Rr)|0,g=g+Math.imul(Ct,wr)|0,g=g+Math.imul(Tt,Rr)|0,S=S+Math.imul(Tt,wr)|0,E=E+Math.imul(at,Br)|0,g=g+Math.imul(at,Lr)|0,g=g+Math.imul(pt,Br)|0,S=S+Math.imul(pt,Lr)|0,E=E+Math.imul(ze,$r)|0,g=g+Math.imul(ze,Xr)|0,g=g+Math.imul(Ye,$r)|0,S=S+Math.imul(Ye,Xr)|0,E=E+Math.imul(Ke,tn)|0,g=g+Math.imul(Ke,fn)|0,g=g+Math.imul(Xe,tn)|0,S=S+Math.imul(Xe,fn)|0;var _o=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(_o>>>26)|0,_o&=67108863,E=Math.imul(N,Or),g=Math.imul(N,Nr),g=g+Math.imul(Ee,Or)|0,S=Math.imul(Ee,Nr),E=E+Math.imul(kt,Rr)|0,g=g+Math.imul(kt,wr)|0,g=g+Math.imul(te,Rr)|0,S=S+Math.imul(te,wr)|0,E=E+Math.imul(Ct,Br)|0,g=g+Math.imul(Ct,Lr)|0,g=g+Math.imul(Tt,Br)|0,S=S+Math.imul(Tt,Lr)|0,E=E+Math.imul(at,$r)|0,g=g+Math.imul(at,Xr)|0,g=g+Math.imul(pt,$r)|0,S=S+Math.imul(pt,Xr)|0,E=E+Math.imul(ze,tn)|0,g=g+Math.imul(ze,fn)|0,g=g+Math.imul(Ye,tn)|0,S=S+Math.imul(Ye,fn)|0;var vo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(vo>>>26)|0,vo&=67108863,E=Math.imul(N,Rr),g=Math.imul(N,wr),g=g+Math.imul(Ee,Rr)|0,S=Math.imul(Ee,wr),E=E+Math.imul(kt,Br)|0,g=g+Math.imul(kt,Lr)|0,g=g+Math.imul(te,Br)|0,S=S+Math.imul(te,Lr)|0,E=E+Math.imul(Ct,$r)|0,g=g+Math.imul(Ct,Xr)|0,g=g+Math.imul(Tt,$r)|0,S=S+Math.imul(Tt,Xr)|0,E=E+Math.imul(at,tn)|0,g=g+Math.imul(at,fn)|0,g=g+Math.imul(pt,tn)|0,S=S+Math.imul(pt,fn)|0;var wo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(wo>>>26)|0,wo&=67108863,E=Math.imul(N,Br),g=Math.imul(N,Lr),g=g+Math.imul(Ee,Br)|0,S=Math.imul(Ee,Lr),E=E+Math.imul(kt,$r)|0,g=g+Math.imul(kt,Xr)|0,g=g+Math.imul(te,$r)|0,S=S+Math.imul(te,Xr)|0,E=E+Math.imul(Ct,tn)|0,g=g+Math.imul(Ct,fn)|0,g=g+Math.imul(Tt,tn)|0,S=S+Math.imul(Tt,fn)|0;var Eo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(Eo>>>26)|0,Eo&=67108863,E=Math.imul(N,$r),g=Math.imul(N,Xr),g=g+Math.imul(Ee,$r)|0,S=Math.imul(Ee,Xr),E=E+Math.imul(kt,tn)|0,g=g+Math.imul(kt,fn)|0,g=g+Math.imul(te,tn)|0,S=S+Math.imul(te,fn)|0;var xo=(T+E|0)+((g&8191)<<13)|0;T=(S+(g>>>13)|0)+(xo>>>26)|0,xo&=67108863,E=Math.imul(N,tn),g=Math.imul(N,fn),g=g+Math.imul(Ee,tn)|0,S=Math.imul(Ee,fn);var Ao=(T+E|0)+((g&8191)<<13)|0;return T=(S+(g>>>13)|0)+(Ao>>>26)|0,Ao&=67108863,v[0]=Xo,v[1]=Bn,v[2]=ea,v[3]=fo,v[4]=uo,v[5]=lo,v[6]=ho,v[7]=po,v[8]=bo,v[9]=go,v[10]=Ti,v[11]=mo,v[12]=yo,v[13]=_o,v[14]=vo,v[15]=wo,v[16]=Eo,v[17]=xo,v[18]=Ao,T!==0&&(v[19]=T,b.length++),b};Math.imul||(F=P);function J(D,p,m){m.negative=p.negative^D.negative,m.length=D.length+p.length;for(var b=0,u=0,h=0;h>>26)|0,u+=v>>>26,v&=67108863}m.words[h]=T,b=v,v=u}return b!==0?m.words[h]=b:m.length--,m.strip()}function Se(D,p,m){var b=new Pe;return b.mulp(D,p,m)}w.prototype.mulTo=function(p,m){var b,u=this.length+p.length;return this.length===10&&p.length===10?b=F(this,p,m):u<63?b=P(this,p,m):u<1024?b=J(this,p,m):b=Se(this,p,m),b};function Pe(D,p){this.x=D,this.y=p}Pe.prototype.makeRBT=function(p){for(var m=new Array(p),b=w.prototype._countBits(p)-1,u=0;u>=1;return u},Pe.prototype.permute=function(p,m,b,u,h,v){for(var T=0;T>>1)h++;return 1<>>13,b[2*v+1]=h&8191,h=h>>>13;for(v=2*m;v>=26,m+=u/67108864|0,m+=h>>>26,this.words[b]=h&67108863}return m!==0&&(this.words[b]=m,this.length++),this},w.prototype.muln=function(p){return this.clone().imuln(p)},w.prototype.sqr=function(){return this.mul(this)},w.prototype.isqr=function(){return this.imul(this.clone())},w.prototype.pow=function(p){var m=U(p);if(m.length===0)return new w(1);for(var b=this,u=0;u=0);var m=p%26,b=(p-m)/26,u=67108863>>>26-m<<26-m,h;if(m!==0){var v=0;for(h=0;h>>26-m}v&&(this.words[h]=v,this.length++)}if(b!==0){for(h=this.length-1;h>=0;h--)this.words[h+b]=this.words[h];for(h=0;h=0);var u;m?u=(m-m%26)/26:u=0;var h=p%26,v=Math.min((p-h)/26,this.length),T=67108863^67108863>>>h<v)for(this.length-=v,g=0;g=0&&(S!==0||g>=u);g--){var q=this.words[g]|0;this.words[g]=S<<26-h|q>>>h,S=q&T}return E&&S!==0&&(E.words[E.length++]=S),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},w.prototype.ishrn=function(p,m,b){return de(this.negative===0),this.iushrn(p,m,b)},w.prototype.shln=function(p){return this.clone().ishln(p)},w.prototype.ushln=function(p){return this.clone().iushln(p)},w.prototype.shrn=function(p){return this.clone().ishrn(p)},w.prototype.ushrn=function(p){return this.clone().iushrn(p)},w.prototype.testn=function(p){de(typeof p=="number"&&p>=0);var m=p%26,b=(p-m)/26,u=1<=0);var m=p%26,b=(p-m)/26;if(de(this.negative===0,"imaskn works only with positive numbers"),this.length<=b)return this;if(m!==0&&b++,this.length=Math.min(b,this.length),m!==0){var u=67108863^67108863>>>m<=67108864;m++)this.words[m]-=67108864,m===this.length-1?this.words[m+1]=1:this.words[m+1]++;return this.length=Math.max(this.length,m+1),this},w.prototype.isubn=function(p){if(de(typeof p=="number"),de(p<67108864),p<0)return this.iaddn(-p);if(this.negative!==0)return this.negative=0,this.iaddn(p),this.negative=1,this;if(this.words[0]-=p,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var m=0;m>26)-(E/67108864|0),this.words[h+b]=v&67108863}for(;h>26,this.words[h+b]=v&67108863;if(T===0)return this.strip();for(de(T===-1),T=0,h=0;h>26,this.words[h]=v&67108863;return this.negative=1,this.strip()},w.prototype._wordDiv=function(p,m){var b=this.length-p.length,u=this.clone(),h=p,v=h.words[h.length-1]|0,T=this._countBits(v);b=26-T,b!==0&&(h=h.ushln(b),u.iushln(b),v=h.words[h.length-1]|0);var E=u.length-h.length,g;if(m!=="mod"){g=new w(null),g.length=E+1,g.words=new Array(g.length);for(var S=0;S=0;x--){var ge=(u.words[h.length+x]|0)*67108864+(u.words[h.length+x-1]|0);for(ge=Math.min(ge/v|0,67108863),u._ishlnsubmul(h,ge,x);u.negative!==0;)ge--,u.negative=0,u._ishlnsubmul(h,1,x),u.isZero()||(u.negative^=1);g&&(g.words[x]=ge)}return g&&g.strip(),u.strip(),m!=="div"&&b!==0&&u.iushrn(b),{div:g||null,mod:u}},w.prototype.divmod=function(p,m,b){if(de(!p.isZero()),this.isZero())return{div:new w(0),mod:new w(0)};var u,h,v;return this.negative!==0&&p.negative===0?(v=this.neg().divmod(p,m),m!=="mod"&&(u=v.div.neg()),m!=="div"&&(h=v.mod.neg(),b&&h.negative!==0&&h.iadd(p)),{div:u,mod:h}):this.negative===0&&p.negative!==0?(v=this.divmod(p.neg(),m),m!=="mod"&&(u=v.div.neg()),{div:u,mod:v.mod}):this.negative&p.negative?(v=this.neg().divmod(p.neg(),m),m!=="div"&&(h=v.mod.neg(),b&&h.negative!==0&&h.isub(p)),{div:v.div,mod:h}):p.length>this.length||this.cmp(p)<0?{div:new w(0),mod:this}:p.length===1?m==="div"?{div:this.divn(p.words[0]),mod:null}:m==="mod"?{div:null,mod:new w(this.modn(p.words[0]))}:{div:this.divn(p.words[0]),mod:new w(this.modn(p.words[0]))}:this._wordDiv(p,m)},w.prototype.div=function(p){return this.divmod(p,"div",!1).div},w.prototype.mod=function(p){return this.divmod(p,"mod",!1).mod},w.prototype.umod=function(p){return this.divmod(p,"mod",!0).mod},w.prototype.divRound=function(p){var m=this.divmod(p);if(m.mod.isZero())return m.div;var b=m.div.negative!==0?m.mod.isub(p):m.mod,u=p.ushrn(1),h=p.andln(1),v=b.cmp(u);return v<0||h===1&&v===0?m.div:m.div.negative!==0?m.div.isubn(1):m.div.iaddn(1)},w.prototype.modn=function(p){de(p<=67108863);for(var m=(1<<26)%p,b=0,u=this.length-1;u>=0;u--)b=(m*b+(this.words[u]|0))%p;return b},w.prototype.idivn=function(p){de(p<=67108863);for(var m=0,b=this.length-1;b>=0;b--){var u=(this.words[b]|0)+m*67108864;this.words[b]=u/p|0,m=u%p}return this.strip()},w.prototype.divn=function(p){return this.clone().idivn(p)},w.prototype.egcd=function(p){de(p.negative===0),de(!p.isZero());var m=this,b=p.clone();m.negative!==0?m=m.umod(p):m=m.clone();for(var u=new w(1),h=new w(0),v=new w(0),T=new w(1),E=0;m.isEven()&&b.isEven();)m.iushrn(1),b.iushrn(1),++E;for(var g=b.clone(),S=m.clone();!m.isZero();){for(var q=0,x=1;!(m.words[0]&x)&&q<26;++q,x<<=1);if(q>0)for(m.iushrn(q);q-- >0;)(u.isOdd()||h.isOdd())&&(u.iadd(g),h.isub(S)),u.iushrn(1),h.iushrn(1);for(var ge=0,Me=1;!(b.words[0]&Me)&&ge<26;++ge,Me<<=1);if(ge>0)for(b.iushrn(ge);ge-- >0;)(v.isOdd()||T.isOdd())&&(v.iadd(g),T.isub(S)),v.iushrn(1),T.iushrn(1);m.cmp(b)>=0?(m.isub(b),u.isub(v),h.isub(T)):(b.isub(m),v.isub(u),T.isub(h))}return{a:v,b:T,gcd:b.iushln(E)}},w.prototype._invmp=function(p){de(p.negative===0),de(!p.isZero());var m=this,b=p.clone();m.negative!==0?m=m.umod(p):m=m.clone();for(var u=new w(1),h=new w(0),v=b.clone();m.cmpn(1)>0&&b.cmpn(1)>0;){for(var T=0,E=1;!(m.words[0]&E)&&T<26;++T,E<<=1);if(T>0)for(m.iushrn(T);T-- >0;)u.isOdd()&&u.iadd(v),u.iushrn(1);for(var g=0,S=1;!(b.words[0]&S)&&g<26;++g,S<<=1);if(g>0)for(b.iushrn(g);g-- >0;)h.isOdd()&&h.iadd(v),h.iushrn(1);m.cmp(b)>=0?(m.isub(b),u.isub(h)):(b.isub(m),h.isub(u))}var q;return m.cmpn(1)===0?q=u:q=h,q.cmpn(0)<0&&q.iadd(p),q},w.prototype.gcd=function(p){if(this.isZero())return p.abs();if(p.isZero())return this.abs();var m=this.clone(),b=p.clone();m.negative=0,b.negative=0;for(var u=0;m.isEven()&&b.isEven();u++)m.iushrn(1),b.iushrn(1);do{for(;m.isEven();)m.iushrn(1);for(;b.isEven();)b.iushrn(1);var h=m.cmp(b);if(h<0){var v=m;m=b,b=v}else if(h===0||b.cmpn(1)===0)break;m.isub(b)}while(!0);return b.iushln(u)},w.prototype.invm=function(p){return this.egcd(p).a.umod(p)},w.prototype.isEven=function(){return(this.words[0]&1)===0},w.prototype.isOdd=function(){return(this.words[0]&1)===1},w.prototype.andln=function(p){return this.words[0]&p},w.prototype.bincn=function(p){de(typeof p=="number");var m=p%26,b=(p-m)/26,u=1<>>26,T&=67108863,this.words[v]=T}return h!==0&&(this.words[v]=h,this.length++),this},w.prototype.isZero=function(){return this.length===1&&this.words[0]===0},w.prototype.cmpn=function(p){var m=p<0;if(this.negative!==0&&!m)return-1;if(this.negative===0&&m)return 1;this.strip();var b;if(this.length>1)b=1;else{m&&(p=-p),de(p<=67108863,"Number is too big");var u=this.words[0]|0;b=u===p?0:up.length)return 1;if(this.length=0;b--){var u=this.words[b]|0,h=p.words[b]|0;if(u!==h){uh&&(m=1);break}}return m},w.prototype.gtn=function(p){return this.cmpn(p)===1},w.prototype.gt=function(p){return this.cmp(p)===1},w.prototype.gten=function(p){return this.cmpn(p)>=0},w.prototype.gte=function(p){return this.cmp(p)>=0},w.prototype.ltn=function(p){return this.cmpn(p)===-1},w.prototype.lt=function(p){return this.cmp(p)===-1},w.prototype.lten=function(p){return this.cmpn(p)<=0},w.prototype.lte=function(p){return this.cmp(p)<=0},w.prototype.eqn=function(p){return this.cmpn(p)===0},w.prototype.eq=function(p){return this.cmp(p)===0},w.red=function(p){return new Ce(p)},w.prototype.toRed=function(p){return de(!this.red,"Already a number in reduction context"),de(this.negative===0,"red works only with positives"),p.convertTo(this)._forceRed(p)},w.prototype.fromRed=function(){return de(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},w.prototype._forceRed=function(p){return this.red=p,this},w.prototype.forceRed=function(p){return de(!this.red,"Already a number in reduction context"),this._forceRed(p)},w.prototype.redAdd=function(p){return de(this.red,"redAdd works only with red numbers"),this.red.add(this,p)},w.prototype.redIAdd=function(p){return de(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,p)},w.prototype.redSub=function(p){return de(this.red,"redSub works only with red numbers"),this.red.sub(this,p)},w.prototype.redISub=function(p){return de(this.red,"redISub works only with red numbers"),this.red.isub(this,p)},w.prototype.redShl=function(p){return de(this.red,"redShl works only with red numbers"),this.red.shl(this,p)},w.prototype.redMul=function(p){return de(this.red,"redMul works only with red numbers"),this.red._verify2(this,p),this.red.mul(this,p)},w.prototype.redIMul=function(p){return de(this.red,"redMul works only with red numbers"),this.red._verify2(this,p),this.red.imul(this,p)},w.prototype.redSqr=function(){return de(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},w.prototype.redISqr=function(){return de(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},w.prototype.redSqrt=function(){return de(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},w.prototype.redInvm=function(){return de(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},w.prototype.redNeg=function(){return de(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},w.prototype.redPow=function(p){return de(this.red&&!p.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,p)};var ie={k256:null,p224:null,p192:null,p25519:null};function W(D,p){this.name=D,this.p=new w(p,16),this.n=this.p.bitLength(),this.k=new w(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}W.prototype._tmp=function(){var p=new w(null);return p.words=new Array(Math.ceil(this.n/13)),p},W.prototype.ireduce=function(p){var m=p,b;do this.split(m,this.tmp),m=this.imulK(m),m=m.iadd(this.tmp),b=m.bitLength();while(b>this.n);var u=b0?m.isub(this.p):m.strip!==void 0?m.strip():m._strip(),m},W.prototype.split=function(p,m){p.iushrn(this.n,0,m)},W.prototype.imulK=function(p){return p.imul(this.k)};function H(){W.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}Ae(H,W),H.prototype.split=function(p,m){for(var b=4194303,u=Math.min(p.length,9),h=0;h>>22,v=T}v>>>=22,p.words[h-10]=v,v===0&&p.length>10?p.length-=10:p.length-=9},H.prototype.imulK=function(p){p.words[p.length]=0,p.words[p.length+1]=0,p.length+=2;for(var m=0,b=0;b>>=26,p.words[b]=h,m=u}return m!==0&&(p.words[p.length++]=m),p},w._prime=function(p){if(ie[p])return ie[p];var m;if(p==="k256")m=new H;else if(p==="p224")m=new re;else if(p==="p192")m=new V;else if(p==="p25519")m=new ke;else throw new Error("Unknown prime "+p);return ie[p]=m,m};function Ce(D){if(typeof D=="string"){var p=w._prime(D);this.m=p.p,this.prime=p}else de(D.gtn(1),"modulus must be greater than 1"),this.m=D,this.prime=null}Ce.prototype._verify1=function(p){de(p.negative===0,"red works only with positives"),de(p.red,"red works only with red numbers")},Ce.prototype._verify2=function(p,m){de((p.negative|m.negative)===0,"red works only with positives"),de(p.red&&p.red===m.red,"red works only with red numbers")},Ce.prototype.imod=function(p){return this.prime?this.prime.ireduce(p)._forceRed(this):p.umod(this.m)._forceRed(this)},Ce.prototype.neg=function(p){return p.isZero()?p.clone():this.m.sub(p)._forceRed(this)},Ce.prototype.add=function(p,m){this._verify2(p,m);var b=p.add(m);return b.cmp(this.m)>=0&&b.isub(this.m),b._forceRed(this)},Ce.prototype.iadd=function(p,m){this._verify2(p,m);var b=p.iadd(m);return b.cmp(this.m)>=0&&b.isub(this.m),b},Ce.prototype.sub=function(p,m){this._verify2(p,m);var b=p.sub(m);return b.cmpn(0)<0&&b.iadd(this.m),b._forceRed(this)},Ce.prototype.isub=function(p,m){this._verify2(p,m);var b=p.isub(m);return b.cmpn(0)<0&&b.iadd(this.m),b},Ce.prototype.shl=function(p,m){return this._verify1(p),this.imod(p.ushln(m))},Ce.prototype.imul=function(p,m){return this._verify2(p,m),this.imod(p.imul(m))},Ce.prototype.mul=function(p,m){return this._verify2(p,m),this.imod(p.mul(m))},Ce.prototype.isqr=function(p){return this.imul(p,p.clone())},Ce.prototype.sqr=function(p){return this.mul(p,p)},Ce.prototype.sqrt=function(p){if(p.isZero())return p.clone();var m=this.m.andln(3);if(de(m%2===1),m===3){var b=this.m.add(new w(1)).iushrn(2);return this.pow(p,b)}for(var u=this.m.subn(1),h=0;!u.isZero()&&u.andln(1)===0;)h++,u.iushrn(1);de(!u.isZero());var v=new w(1).toRed(this),T=v.redNeg(),E=this.m.subn(1).iushrn(1),g=this.m.bitLength();for(g=new w(2*g*g).toRed(this);this.pow(g,E).cmp(T)!==0;)g.redIAdd(T);for(var S=this.pow(g,u),q=this.pow(p,u.addn(1).iushrn(1)),x=this.pow(p,u),ge=h;x.cmp(v)!==0;){for(var Me=x,ne=0;Me.cmp(v)!==0;ne++)Me=Me.redSqr();de(ne=0;h--){for(var S=m.words[h],q=g-1;q>=0;q--){var x=S>>q&1;if(v!==u[0]&&(v=this.sqr(v)),x===0&&T===0){E=0;continue}T<<=1,T|=x,E++,!(E!==b&&(h!==0||q!==0))&&(v=this.mul(v,u[T]),E=0,T=0)}g=26}return v},Ce.prototype.convertTo=function(p){var m=p.umod(this.m);return m===p?m.clone():m},Ce.prototype.convertFrom=function(p){var m=p.clone();return m.red=null,m},w.mont=function(p){return new we(p)};function we(D){Ce.call(this,D),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new w(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}Ae(we,Ce),we.prototype.convertTo=function(p){return this.imod(p.ushln(this.shift))},we.prototype.convertFrom=function(p){var m=this.imod(p.mul(this.rinv));return m.red=null,m},we.prototype.imul=function(p,m){if(p.isZero()||m.isZero())return p.words[0]=0,p.length=1,p;var b=p.imul(m),u=b.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),h=b.isub(u).iushrn(this.shift),v=h;return h.cmp(this.m)>=0?v=h.isub(this.m):h.cmpn(0)<0&&(v=h.iadd(this.m)),v._forceRed(this)},we.prototype.mul=function(p,m){if(p.isZero()||m.isZero())return new w(0)._forceRed(this);var b=p.mul(m),u=b.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),h=b.isub(u).iushrn(this.shift),v=h;return h.cmp(this.m)>=0?v=h.isub(this.m):h.cmpn(0)<0&&(v=h.iadd(this.m)),v._forceRed(this)},we.prototype.invm=function(p){var m=this.imod(p._invmp(this.m).mul(this.r2));return m._forceRed(this)}}(gt,this)},83900:function(gt,ee,Ie){gt=Ie.nmd(gt),function(pe,Be){"use strict";function de(b,u){if(!b)throw new Error(u||"Assertion failed")}function Ae(b,u){b.super_=u;var h=function(){};h.prototype=u.prototype,b.prototype=new h,b.prototype.constructor=b}function w(b,u,h){if(w.isBN(b))return b;this.negative=0,this.words=null,this.length=0,this.red=null,b!==null&&((u==="le"||u==="be")&&(h=u,u=10),this._init(b||0,u||10,h||"be"))}typeof pe=="object"?pe.exports=w:Be.BN=w,w.BN=w,w.wordSize=26;var ce;try{typeof window<"u"&&typeof window.Buffer<"u"?ce=window.Buffer:ce=Ie(39322).Buffer}catch{}w.isBN=function(u){return u instanceof w?!0:u!==null&&typeof u=="object"&&u.constructor.wordSize===w.wordSize&&Array.isArray(u.words)},w.max=function(u,h){return u.cmp(h)>0?u:h},w.min=function(u,h){return u.cmp(h)<0?u:h},w.prototype._init=function(u,h,v){if(typeof u=="number")return this._initNumber(u,h,v);if(typeof u=="object")return this._initArray(u,h,v);h==="hex"&&(h=16),de(h===(h|0)&&h>=2&&h<=36),u=u.toString().replace(/\s+/g,"");var T=0;u[0]==="-"&&(T++,this.negative=1),T=0;T-=3)g=u[T]|u[T-1]<<8|u[T-2]<<16,this.words[E]|=g<>>26-S&67108863,S+=24,S>=26&&(S-=26,E++);else if(v==="le")for(T=0,E=0;T>>26-S&67108863,S+=24,S>=26&&(S-=26,E++);return this._strip()};function z(b,u){var h=b.charCodeAt(u);if(h>=48&&h<=57)return h-48;if(h>=65&&h<=70)return h-55;if(h>=97&&h<=102)return h-87;de(!1,"Invalid character in "+b)}function C(b,u,h){var v=z(b,h);return h-1>=u&&(v|=z(b,h-1)<<4),v}w.prototype._parseHex=function(u,h,v){this.length=Math.ceil((u.length-h)/6),this.words=new Array(this.length);for(var T=0;T=h;T-=2)S=C(u,h,T)<=18?(E-=18,g+=1,this.words[g]|=S>>>26):E+=8;else{var q=u.length-h;for(T=q%2===0?h+1:h;T=18?(E-=18,g+=1,this.words[g]|=S>>>26):E+=8}this._strip()};function L(b,u,h,v){for(var T=0,E=0,g=Math.min(b.length,h),S=u;S=49?E=q-49+10:q>=17?E=q-17+10:E=q,de(q>=0&&E1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},w.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},typeof Symbol<"u"&&typeof Symbol.for=="function")try{w.prototype[Symbol.for("nodejs.util.inspect.custom")]=R}catch{w.prototype.inspect=R}else w.prototype.inspect=R;function R(){return(this.red?""}var B=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],U=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],P=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];w.prototype.toString=function(u,h){u=u||10,h=h|0||1;var v;if(u===16||u==="hex"){v="";for(var T=0,E=0,g=0;g>>24-T&16777215,T+=2,T>=26&&(T-=26,g--),E!==0||g!==this.length-1?v=B[6-q.length]+q+v:v=q+v}for(E!==0&&(v=E.toString(16)+v);v.length%h!==0;)v="0"+v;return this.negative!==0&&(v="-"+v),v}if(u===(u|0)&&u>=2&&u<=36){var x=U[u],ge=P[u];v="";var Me=this.clone();for(Me.negative=0;!Me.isZero();){var ne=Me.modrn(ge).toString(u);Me=Me.idivn(ge),Me.isZero()?v=ne+v:v=B[x-ne.length]+ne+v}for(this.isZero()&&(v="0"+v);v.length%h!==0;)v="0"+v;return this.negative!==0&&(v="-"+v),v}de(!1,"Base should be between 2 and 36")},w.prototype.toNumber=function(){var u=this.words[0];return this.length===2?u+=this.words[1]*67108864:this.length===3&&this.words[2]===1?u+=4503599627370496+this.words[1]*67108864:this.length>2&&de(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-u:u},w.prototype.toJSON=function(){return this.toString(16,2)},ce&&(w.prototype.toBuffer=function(u,h){return this.toArrayLike(ce,u,h)}),w.prototype.toArray=function(u,h){return this.toArrayLike(Array,u,h)};var F=function(u,h){return u.allocUnsafe?u.allocUnsafe(h):new u(h)};w.prototype.toArrayLike=function(u,h,v){this._strip();var T=this.byteLength(),E=v||Math.max(1,T);de(T<=E,"byte array longer than desired length"),de(E>0,"Requested array length <= 0");var g=F(u,E),S=h==="le"?"LE":"BE";return this["_toArrayLike"+S](g,T),g},w.prototype._toArrayLikeLE=function(u,h){for(var v=0,T=0,E=0,g=0;E>8&255),v>16&255),g===6?(v>24&255),T=0,g=0):(T=S>>>24,g+=2)}if(v=0&&(u[v--]=S>>8&255),v>=0&&(u[v--]=S>>16&255),g===6?(v>=0&&(u[v--]=S>>24&255),T=0,g=0):(T=S>>>24,g+=2)}if(v>=0)for(u[v--]=T;v>=0;)u[v--]=0},Math.clz32?w.prototype._countBits=function(u){return 32-Math.clz32(u)}:w.prototype._countBits=function(u){var h=u,v=0;return h>=4096&&(v+=13,h>>>=13),h>=64&&(v+=7,h>>>=7),h>=8&&(v+=4,h>>>=4),h>=2&&(v+=2,h>>>=2),v+h},w.prototype._zeroBits=function(u){if(u===0)return 26;var h=u,v=0;return h&8191||(v+=13,h>>>=13),h&127||(v+=7,h>>>=7),h&15||(v+=4,h>>>=4),h&3||(v+=2,h>>>=2),h&1||v++,v},w.prototype.bitLength=function(){var u=this.words[this.length-1],h=this._countBits(u);return(this.length-1)*26+h};function J(b){for(var u=new Array(b.bitLength()),h=0;h>>T&1}return u}w.prototype.zeroBits=function(){if(this.isZero())return 0;for(var u=0,h=0;hu.length?this.clone().ior(u):u.clone().ior(this)},w.prototype.uor=function(u){return this.length>u.length?this.clone().iuor(u):u.clone().iuor(this)},w.prototype.iuand=function(u){var h;this.length>u.length?h=u:h=this;for(var v=0;vu.length?this.clone().iand(u):u.clone().iand(this)},w.prototype.uand=function(u){return this.length>u.length?this.clone().iuand(u):u.clone().iuand(this)},w.prototype.iuxor=function(u){var h,v;this.length>u.length?(h=this,v=u):(h=u,v=this);for(var T=0;Tu.length?this.clone().ixor(u):u.clone().ixor(this)},w.prototype.uxor=function(u){return this.length>u.length?this.clone().iuxor(u):u.clone().iuxor(this)},w.prototype.inotn=function(u){de(typeof u=="number"&&u>=0);var h=Math.ceil(u/26)|0,v=u%26;this._expand(h),v>0&&h--;for(var T=0;T0&&(this.words[T]=~this.words[T]&67108863>>26-v),this._strip()},w.prototype.notn=function(u){return this.clone().inotn(u)},w.prototype.setn=function(u,h){de(typeof u=="number"&&u>=0);var v=u/26|0,T=u%26;return this._expand(v+1),h?this.words[v]=this.words[v]|1<u.length?(v=this,T=u):(v=u,T=this);for(var E=0,g=0;g>>26;for(;E!==0&&g>>26;if(this.length=v.length,E!==0)this.words[this.length]=E,this.length++;else if(v!==this)for(;gu.length?this.clone().iadd(u):u.clone().iadd(this)},w.prototype.isub=function(u){if(u.negative!==0){u.negative=0;var h=this.iadd(u);return u.negative=1,h._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(u),this.negative=1,this._normSign();var v=this.cmp(u);if(v===0)return this.negative=0,this.length=1,this.words[0]=0,this;var T,E;v>0?(T=this,E=u):(T=u,E=this);for(var g=0,S=0;S>26,this.words[S]=h&67108863;for(;g!==0&&S>26,this.words[S]=h&67108863;if(g===0&&S>>26,Me=q&67108863,ne=Math.min(x,u.length-1),_e=Math.max(0,x-b.length+1);_e<=ne;_e++){var Ve=x-_e|0;T=b.words[Ve]|0,E=u.words[_e]|0,g=T*E+Me,ge+=g/67108864|0,Me=g&67108863}h.words[x]=Me|0,q=ge|0}return q!==0?h.words[x]=q|0:h.length--,h._strip()}var Pe=function(u,h,v){var T=u.words,E=h.words,g=v.words,S=0,q,x,ge,Me=T[0]|0,ne=Me&8191,_e=Me>>>13,Ve=T[1]|0,it=Ve&8191,ft=Ve>>>13,le=T[2]|0,Te=le&8191,De=le>>>13,ot=T[3]|0,Ke=ot&8191,Xe=ot>>>13,lt=T[4]|0,ze=lt&8191,Ye=lt>>>13,bt=T[5]|0,at=bt&8191,pt=bt>>>13,Dt=T[6]|0,Ct=Dt&8191,Tt=Dt>>>13,zt=T[7]|0,kt=zt&8191,te=zt>>>13,I=T[8]|0,N=I&8191,Ee=I>>>13,Ge=T[9]|0,st=Ge&8191,ut=Ge>>>13,cr=E[0]|0,jt=cr&8191,Lt=cr>>>13,dr=E[1]|0,Wt=dr&8191,Sr=dr>>>13,Jc=E[2]|0,Ir=Jc&8191,Cr=Jc>>>13,Xc=E[3]|0,gr=Xc&8191,Tr=Xc>>>13,Qc=E[4]|0,Or=Qc&8191,Nr=Qc>>>13,ef=E[5]|0,Rr=ef&8191,wr=ef>>>13,tf=E[6]|0,Br=tf&8191,Lr=tf>>>13,rf=E[7]|0,$r=rf&8191,Xr=rf>>>13,nf=E[8]|0,tn=nf&8191,fn=nf>>>13,Xo=E[9]|0,Bn=Xo&8191,ea=Xo>>>13;v.negative=u.negative^h.negative,v.length=19,q=Math.imul(ne,jt),x=Math.imul(ne,Lt),x=x+Math.imul(_e,jt)|0,ge=Math.imul(_e,Lt);var fo=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(fo>>>26)|0,fo&=67108863,q=Math.imul(it,jt),x=Math.imul(it,Lt),x=x+Math.imul(ft,jt)|0,ge=Math.imul(ft,Lt),q=q+Math.imul(ne,Wt)|0,x=x+Math.imul(ne,Sr)|0,x=x+Math.imul(_e,Wt)|0,ge=ge+Math.imul(_e,Sr)|0;var uo=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(uo>>>26)|0,uo&=67108863,q=Math.imul(Te,jt),x=Math.imul(Te,Lt),x=x+Math.imul(De,jt)|0,ge=Math.imul(De,Lt),q=q+Math.imul(it,Wt)|0,x=x+Math.imul(it,Sr)|0,x=x+Math.imul(ft,Wt)|0,ge=ge+Math.imul(ft,Sr)|0,q=q+Math.imul(ne,Ir)|0,x=x+Math.imul(ne,Cr)|0,x=x+Math.imul(_e,Ir)|0,ge=ge+Math.imul(_e,Cr)|0;var lo=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(lo>>>26)|0,lo&=67108863,q=Math.imul(Ke,jt),x=Math.imul(Ke,Lt),x=x+Math.imul(Xe,jt)|0,ge=Math.imul(Xe,Lt),q=q+Math.imul(Te,Wt)|0,x=x+Math.imul(Te,Sr)|0,x=x+Math.imul(De,Wt)|0,ge=ge+Math.imul(De,Sr)|0,q=q+Math.imul(it,Ir)|0,x=x+Math.imul(it,Cr)|0,x=x+Math.imul(ft,Ir)|0,ge=ge+Math.imul(ft,Cr)|0,q=q+Math.imul(ne,gr)|0,x=x+Math.imul(ne,Tr)|0,x=x+Math.imul(_e,gr)|0,ge=ge+Math.imul(_e,Tr)|0;var ho=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(ho>>>26)|0,ho&=67108863,q=Math.imul(ze,jt),x=Math.imul(ze,Lt),x=x+Math.imul(Ye,jt)|0,ge=Math.imul(Ye,Lt),q=q+Math.imul(Ke,Wt)|0,x=x+Math.imul(Ke,Sr)|0,x=x+Math.imul(Xe,Wt)|0,ge=ge+Math.imul(Xe,Sr)|0,q=q+Math.imul(Te,Ir)|0,x=x+Math.imul(Te,Cr)|0,x=x+Math.imul(De,Ir)|0,ge=ge+Math.imul(De,Cr)|0,q=q+Math.imul(it,gr)|0,x=x+Math.imul(it,Tr)|0,x=x+Math.imul(ft,gr)|0,ge=ge+Math.imul(ft,Tr)|0,q=q+Math.imul(ne,Or)|0,x=x+Math.imul(ne,Nr)|0,x=x+Math.imul(_e,Or)|0,ge=ge+Math.imul(_e,Nr)|0;var po=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(po>>>26)|0,po&=67108863,q=Math.imul(at,jt),x=Math.imul(at,Lt),x=x+Math.imul(pt,jt)|0,ge=Math.imul(pt,Lt),q=q+Math.imul(ze,Wt)|0,x=x+Math.imul(ze,Sr)|0,x=x+Math.imul(Ye,Wt)|0,ge=ge+Math.imul(Ye,Sr)|0,q=q+Math.imul(Ke,Ir)|0,x=x+Math.imul(Ke,Cr)|0,x=x+Math.imul(Xe,Ir)|0,ge=ge+Math.imul(Xe,Cr)|0,q=q+Math.imul(Te,gr)|0,x=x+Math.imul(Te,Tr)|0,x=x+Math.imul(De,gr)|0,ge=ge+Math.imul(De,Tr)|0,q=q+Math.imul(it,Or)|0,x=x+Math.imul(it,Nr)|0,x=x+Math.imul(ft,Or)|0,ge=ge+Math.imul(ft,Nr)|0,q=q+Math.imul(ne,Rr)|0,x=x+Math.imul(ne,wr)|0,x=x+Math.imul(_e,Rr)|0,ge=ge+Math.imul(_e,wr)|0;var bo=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(bo>>>26)|0,bo&=67108863,q=Math.imul(Ct,jt),x=Math.imul(Ct,Lt),x=x+Math.imul(Tt,jt)|0,ge=Math.imul(Tt,Lt),q=q+Math.imul(at,Wt)|0,x=x+Math.imul(at,Sr)|0,x=x+Math.imul(pt,Wt)|0,ge=ge+Math.imul(pt,Sr)|0,q=q+Math.imul(ze,Ir)|0,x=x+Math.imul(ze,Cr)|0,x=x+Math.imul(Ye,Ir)|0,ge=ge+Math.imul(Ye,Cr)|0,q=q+Math.imul(Ke,gr)|0,x=x+Math.imul(Ke,Tr)|0,x=x+Math.imul(Xe,gr)|0,ge=ge+Math.imul(Xe,Tr)|0,q=q+Math.imul(Te,Or)|0,x=x+Math.imul(Te,Nr)|0,x=x+Math.imul(De,Or)|0,ge=ge+Math.imul(De,Nr)|0,q=q+Math.imul(it,Rr)|0,x=x+Math.imul(it,wr)|0,x=x+Math.imul(ft,Rr)|0,ge=ge+Math.imul(ft,wr)|0,q=q+Math.imul(ne,Br)|0,x=x+Math.imul(ne,Lr)|0,x=x+Math.imul(_e,Br)|0,ge=ge+Math.imul(_e,Lr)|0;var go=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(go>>>26)|0,go&=67108863,q=Math.imul(kt,jt),x=Math.imul(kt,Lt),x=x+Math.imul(te,jt)|0,ge=Math.imul(te,Lt),q=q+Math.imul(Ct,Wt)|0,x=x+Math.imul(Ct,Sr)|0,x=x+Math.imul(Tt,Wt)|0,ge=ge+Math.imul(Tt,Sr)|0,q=q+Math.imul(at,Ir)|0,x=x+Math.imul(at,Cr)|0,x=x+Math.imul(pt,Ir)|0,ge=ge+Math.imul(pt,Cr)|0,q=q+Math.imul(ze,gr)|0,x=x+Math.imul(ze,Tr)|0,x=x+Math.imul(Ye,gr)|0,ge=ge+Math.imul(Ye,Tr)|0,q=q+Math.imul(Ke,Or)|0,x=x+Math.imul(Ke,Nr)|0,x=x+Math.imul(Xe,Or)|0,ge=ge+Math.imul(Xe,Nr)|0,q=q+Math.imul(Te,Rr)|0,x=x+Math.imul(Te,wr)|0,x=x+Math.imul(De,Rr)|0,ge=ge+Math.imul(De,wr)|0,q=q+Math.imul(it,Br)|0,x=x+Math.imul(it,Lr)|0,x=x+Math.imul(ft,Br)|0,ge=ge+Math.imul(ft,Lr)|0,q=q+Math.imul(ne,$r)|0,x=x+Math.imul(ne,Xr)|0,x=x+Math.imul(_e,$r)|0,ge=ge+Math.imul(_e,Xr)|0;var Ti=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(Ti>>>26)|0,Ti&=67108863,q=Math.imul(N,jt),x=Math.imul(N,Lt),x=x+Math.imul(Ee,jt)|0,ge=Math.imul(Ee,Lt),q=q+Math.imul(kt,Wt)|0,x=x+Math.imul(kt,Sr)|0,x=x+Math.imul(te,Wt)|0,ge=ge+Math.imul(te,Sr)|0,q=q+Math.imul(Ct,Ir)|0,x=x+Math.imul(Ct,Cr)|0,x=x+Math.imul(Tt,Ir)|0,ge=ge+Math.imul(Tt,Cr)|0,q=q+Math.imul(at,gr)|0,x=x+Math.imul(at,Tr)|0,x=x+Math.imul(pt,gr)|0,ge=ge+Math.imul(pt,Tr)|0,q=q+Math.imul(ze,Or)|0,x=x+Math.imul(ze,Nr)|0,x=x+Math.imul(Ye,Or)|0,ge=ge+Math.imul(Ye,Nr)|0,q=q+Math.imul(Ke,Rr)|0,x=x+Math.imul(Ke,wr)|0,x=x+Math.imul(Xe,Rr)|0,ge=ge+Math.imul(Xe,wr)|0,q=q+Math.imul(Te,Br)|0,x=x+Math.imul(Te,Lr)|0,x=x+Math.imul(De,Br)|0,ge=ge+Math.imul(De,Lr)|0,q=q+Math.imul(it,$r)|0,x=x+Math.imul(it,Xr)|0,x=x+Math.imul(ft,$r)|0,ge=ge+Math.imul(ft,Xr)|0,q=q+Math.imul(ne,tn)|0,x=x+Math.imul(ne,fn)|0,x=x+Math.imul(_e,tn)|0,ge=ge+Math.imul(_e,fn)|0;var mo=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(mo>>>26)|0,mo&=67108863,q=Math.imul(st,jt),x=Math.imul(st,Lt),x=x+Math.imul(ut,jt)|0,ge=Math.imul(ut,Lt),q=q+Math.imul(N,Wt)|0,x=x+Math.imul(N,Sr)|0,x=x+Math.imul(Ee,Wt)|0,ge=ge+Math.imul(Ee,Sr)|0,q=q+Math.imul(kt,Ir)|0,x=x+Math.imul(kt,Cr)|0,x=x+Math.imul(te,Ir)|0,ge=ge+Math.imul(te,Cr)|0,q=q+Math.imul(Ct,gr)|0,x=x+Math.imul(Ct,Tr)|0,x=x+Math.imul(Tt,gr)|0,ge=ge+Math.imul(Tt,Tr)|0,q=q+Math.imul(at,Or)|0,x=x+Math.imul(at,Nr)|0,x=x+Math.imul(pt,Or)|0,ge=ge+Math.imul(pt,Nr)|0,q=q+Math.imul(ze,Rr)|0,x=x+Math.imul(ze,wr)|0,x=x+Math.imul(Ye,Rr)|0,ge=ge+Math.imul(Ye,wr)|0,q=q+Math.imul(Ke,Br)|0,x=x+Math.imul(Ke,Lr)|0,x=x+Math.imul(Xe,Br)|0,ge=ge+Math.imul(Xe,Lr)|0,q=q+Math.imul(Te,$r)|0,x=x+Math.imul(Te,Xr)|0,x=x+Math.imul(De,$r)|0,ge=ge+Math.imul(De,Xr)|0,q=q+Math.imul(it,tn)|0,x=x+Math.imul(it,fn)|0,x=x+Math.imul(ft,tn)|0,ge=ge+Math.imul(ft,fn)|0,q=q+Math.imul(ne,Bn)|0,x=x+Math.imul(ne,ea)|0,x=x+Math.imul(_e,Bn)|0,ge=ge+Math.imul(_e,ea)|0;var yo=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(yo>>>26)|0,yo&=67108863,q=Math.imul(st,Wt),x=Math.imul(st,Sr),x=x+Math.imul(ut,Wt)|0,ge=Math.imul(ut,Sr),q=q+Math.imul(N,Ir)|0,x=x+Math.imul(N,Cr)|0,x=x+Math.imul(Ee,Ir)|0,ge=ge+Math.imul(Ee,Cr)|0,q=q+Math.imul(kt,gr)|0,x=x+Math.imul(kt,Tr)|0,x=x+Math.imul(te,gr)|0,ge=ge+Math.imul(te,Tr)|0,q=q+Math.imul(Ct,Or)|0,x=x+Math.imul(Ct,Nr)|0,x=x+Math.imul(Tt,Or)|0,ge=ge+Math.imul(Tt,Nr)|0,q=q+Math.imul(at,Rr)|0,x=x+Math.imul(at,wr)|0,x=x+Math.imul(pt,Rr)|0,ge=ge+Math.imul(pt,wr)|0,q=q+Math.imul(ze,Br)|0,x=x+Math.imul(ze,Lr)|0,x=x+Math.imul(Ye,Br)|0,ge=ge+Math.imul(Ye,Lr)|0,q=q+Math.imul(Ke,$r)|0,x=x+Math.imul(Ke,Xr)|0,x=x+Math.imul(Xe,$r)|0,ge=ge+Math.imul(Xe,Xr)|0,q=q+Math.imul(Te,tn)|0,x=x+Math.imul(Te,fn)|0,x=x+Math.imul(De,tn)|0,ge=ge+Math.imul(De,fn)|0,q=q+Math.imul(it,Bn)|0,x=x+Math.imul(it,ea)|0,x=x+Math.imul(ft,Bn)|0,ge=ge+Math.imul(ft,ea)|0;var _o=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(_o>>>26)|0,_o&=67108863,q=Math.imul(st,Ir),x=Math.imul(st,Cr),x=x+Math.imul(ut,Ir)|0,ge=Math.imul(ut,Cr),q=q+Math.imul(N,gr)|0,x=x+Math.imul(N,Tr)|0,x=x+Math.imul(Ee,gr)|0,ge=ge+Math.imul(Ee,Tr)|0,q=q+Math.imul(kt,Or)|0,x=x+Math.imul(kt,Nr)|0,x=x+Math.imul(te,Or)|0,ge=ge+Math.imul(te,Nr)|0,q=q+Math.imul(Ct,Rr)|0,x=x+Math.imul(Ct,wr)|0,x=x+Math.imul(Tt,Rr)|0,ge=ge+Math.imul(Tt,wr)|0,q=q+Math.imul(at,Br)|0,x=x+Math.imul(at,Lr)|0,x=x+Math.imul(pt,Br)|0,ge=ge+Math.imul(pt,Lr)|0,q=q+Math.imul(ze,$r)|0,x=x+Math.imul(ze,Xr)|0,x=x+Math.imul(Ye,$r)|0,ge=ge+Math.imul(Ye,Xr)|0,q=q+Math.imul(Ke,tn)|0,x=x+Math.imul(Ke,fn)|0,x=x+Math.imul(Xe,tn)|0,ge=ge+Math.imul(Xe,fn)|0,q=q+Math.imul(Te,Bn)|0,x=x+Math.imul(Te,ea)|0,x=x+Math.imul(De,Bn)|0,ge=ge+Math.imul(De,ea)|0;var vo=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(vo>>>26)|0,vo&=67108863,q=Math.imul(st,gr),x=Math.imul(st,Tr),x=x+Math.imul(ut,gr)|0,ge=Math.imul(ut,Tr),q=q+Math.imul(N,Or)|0,x=x+Math.imul(N,Nr)|0,x=x+Math.imul(Ee,Or)|0,ge=ge+Math.imul(Ee,Nr)|0,q=q+Math.imul(kt,Rr)|0,x=x+Math.imul(kt,wr)|0,x=x+Math.imul(te,Rr)|0,ge=ge+Math.imul(te,wr)|0,q=q+Math.imul(Ct,Br)|0,x=x+Math.imul(Ct,Lr)|0,x=x+Math.imul(Tt,Br)|0,ge=ge+Math.imul(Tt,Lr)|0,q=q+Math.imul(at,$r)|0,x=x+Math.imul(at,Xr)|0,x=x+Math.imul(pt,$r)|0,ge=ge+Math.imul(pt,Xr)|0,q=q+Math.imul(ze,tn)|0,x=x+Math.imul(ze,fn)|0,x=x+Math.imul(Ye,tn)|0,ge=ge+Math.imul(Ye,fn)|0,q=q+Math.imul(Ke,Bn)|0,x=x+Math.imul(Ke,ea)|0,x=x+Math.imul(Xe,Bn)|0,ge=ge+Math.imul(Xe,ea)|0;var wo=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(wo>>>26)|0,wo&=67108863,q=Math.imul(st,Or),x=Math.imul(st,Nr),x=x+Math.imul(ut,Or)|0,ge=Math.imul(ut,Nr),q=q+Math.imul(N,Rr)|0,x=x+Math.imul(N,wr)|0,x=x+Math.imul(Ee,Rr)|0,ge=ge+Math.imul(Ee,wr)|0,q=q+Math.imul(kt,Br)|0,x=x+Math.imul(kt,Lr)|0,x=x+Math.imul(te,Br)|0,ge=ge+Math.imul(te,Lr)|0,q=q+Math.imul(Ct,$r)|0,x=x+Math.imul(Ct,Xr)|0,x=x+Math.imul(Tt,$r)|0,ge=ge+Math.imul(Tt,Xr)|0,q=q+Math.imul(at,tn)|0,x=x+Math.imul(at,fn)|0,x=x+Math.imul(pt,tn)|0,ge=ge+Math.imul(pt,fn)|0,q=q+Math.imul(ze,Bn)|0,x=x+Math.imul(ze,ea)|0,x=x+Math.imul(Ye,Bn)|0,ge=ge+Math.imul(Ye,ea)|0;var Eo=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(Eo>>>26)|0,Eo&=67108863,q=Math.imul(st,Rr),x=Math.imul(st,wr),x=x+Math.imul(ut,Rr)|0,ge=Math.imul(ut,wr),q=q+Math.imul(N,Br)|0,x=x+Math.imul(N,Lr)|0,x=x+Math.imul(Ee,Br)|0,ge=ge+Math.imul(Ee,Lr)|0,q=q+Math.imul(kt,$r)|0,x=x+Math.imul(kt,Xr)|0,x=x+Math.imul(te,$r)|0,ge=ge+Math.imul(te,Xr)|0,q=q+Math.imul(Ct,tn)|0,x=x+Math.imul(Ct,fn)|0,x=x+Math.imul(Tt,tn)|0,ge=ge+Math.imul(Tt,fn)|0,q=q+Math.imul(at,Bn)|0,x=x+Math.imul(at,ea)|0,x=x+Math.imul(pt,Bn)|0,ge=ge+Math.imul(pt,ea)|0;var xo=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(xo>>>26)|0,xo&=67108863,q=Math.imul(st,Br),x=Math.imul(st,Lr),x=x+Math.imul(ut,Br)|0,ge=Math.imul(ut,Lr),q=q+Math.imul(N,$r)|0,x=x+Math.imul(N,Xr)|0,x=x+Math.imul(Ee,$r)|0,ge=ge+Math.imul(Ee,Xr)|0,q=q+Math.imul(kt,tn)|0,x=x+Math.imul(kt,fn)|0,x=x+Math.imul(te,tn)|0,ge=ge+Math.imul(te,fn)|0,q=q+Math.imul(Ct,Bn)|0,x=x+Math.imul(Ct,ea)|0,x=x+Math.imul(Tt,Bn)|0,ge=ge+Math.imul(Tt,ea)|0;var Ao=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(Ao>>>26)|0,Ao&=67108863,q=Math.imul(st,$r),x=Math.imul(st,Xr),x=x+Math.imul(ut,$r)|0,ge=Math.imul(ut,Xr),q=q+Math.imul(N,tn)|0,x=x+Math.imul(N,fn)|0,x=x+Math.imul(Ee,tn)|0,ge=ge+Math.imul(Ee,fn)|0,q=q+Math.imul(kt,Bn)|0,x=x+Math.imul(kt,ea)|0,x=x+Math.imul(te,Bn)|0,ge=ge+Math.imul(te,ea)|0;var Os=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(Os>>>26)|0,Os&=67108863,q=Math.imul(st,tn),x=Math.imul(st,fn),x=x+Math.imul(ut,tn)|0,ge=Math.imul(ut,fn),q=q+Math.imul(N,Bn)|0,x=x+Math.imul(N,ea)|0,x=x+Math.imul(Ee,Bn)|0,ge=ge+Math.imul(Ee,ea)|0;var ed=(S+q|0)+((x&8191)<<13)|0;S=(ge+(x>>>13)|0)+(ed>>>26)|0,ed&=67108863,q=Math.imul(st,Bn),x=Math.imul(st,ea),x=x+Math.imul(ut,Bn)|0,ge=Math.imul(ut,ea);var fu=(S+q|0)+((x&8191)<<13)|0;return S=(ge+(x>>>13)|0)+(fu>>>26)|0,fu&=67108863,g[0]=fo,g[1]=uo,g[2]=lo,g[3]=ho,g[4]=po,g[5]=bo,g[6]=go,g[7]=Ti,g[8]=mo,g[9]=yo,g[10]=_o,g[11]=vo,g[12]=wo,g[13]=Eo,g[14]=xo,g[15]=Ao,g[16]=Os,g[17]=ed,g[18]=fu,S!==0&&(g[19]=S,v.length++),v};Math.imul||(Pe=Se);function ie(b,u,h){h.negative=u.negative^b.negative,h.length=b.length+u.length;for(var v=0,T=0,E=0;E>>26)|0,T+=g>>>26,g&=67108863}h.words[E]=S,v=g,g=T}return v!==0?h.words[E]=v:h.length--,h._strip()}function W(b,u,h){return ie(b,u,h)}w.prototype.mulTo=function(u,h){var v,T=this.length+u.length;return this.length===10&&u.length===10?v=Pe(this,u,h):T<63?v=Se(this,u,h):T<1024?v=ie(this,u,h):v=W(this,u,h),v};function H(b,u){this.x=b,this.y=u}H.prototype.makeRBT=function(u){for(var h=new Array(u),v=w.prototype._countBits(u)-1,T=0;T>=1;return T},H.prototype.permute=function(u,h,v,T,E,g){for(var S=0;S>>1)E++;return 1<>>13,v[2*g+1]=E&8191,E=E>>>13;for(g=2*h;g>=26,v+=E/67108864|0,v+=g>>>26,this.words[T]=g&67108863}return v!==0&&(this.words[T]=v,this.length++),h?this.ineg():this},w.prototype.muln=function(u){return this.clone().imuln(u)},w.prototype.sqr=function(){return this.mul(this)},w.prototype.isqr=function(){return this.imul(this.clone())},w.prototype.pow=function(u){var h=J(u);if(h.length===0)return new w(1);for(var v=this,T=0;T=0);var h=u%26,v=(u-h)/26,T=67108863>>>26-h<<26-h,E;if(h!==0){var g=0;for(E=0;E>>26-h}g&&(this.words[E]=g,this.length++)}if(v!==0){for(E=this.length-1;E>=0;E--)this.words[E+v]=this.words[E];for(E=0;E=0);var T;h?T=(h-h%26)/26:T=0;var E=u%26,g=Math.min((u-E)/26,this.length),S=67108863^67108863>>>E<g)for(this.length-=g,x=0;x=0&&(ge!==0||x>=T);x--){var Me=this.words[x]|0;this.words[x]=ge<<26-E|Me>>>E,ge=Me&S}return q&&ge!==0&&(q.words[q.length++]=ge),this.length===0&&(this.words[0]=0,this.length=1),this._strip()},w.prototype.ishrn=function(u,h,v){return de(this.negative===0),this.iushrn(u,h,v)},w.prototype.shln=function(u){return this.clone().ishln(u)},w.prototype.ushln=function(u){return this.clone().iushln(u)},w.prototype.shrn=function(u){return this.clone().ishrn(u)},w.prototype.ushrn=function(u){return this.clone().iushrn(u)},w.prototype.testn=function(u){de(typeof u=="number"&&u>=0);var h=u%26,v=(u-h)/26,T=1<=0);var h=u%26,v=(u-h)/26;if(de(this.negative===0,"imaskn works only with positive numbers"),this.length<=v)return this;if(h!==0&&v++,this.length=Math.min(v,this.length),h!==0){var T=67108863^67108863>>>h<=67108864;h++)this.words[h]-=67108864,h===this.length-1?this.words[h+1]=1:this.words[h+1]++;return this.length=Math.max(this.length,h+1),this},w.prototype.isubn=function(u){if(de(typeof u=="number"),de(u<67108864),u<0)return this.iaddn(-u);if(this.negative!==0)return this.negative=0,this.iaddn(u),this.negative=1,this;if(this.words[0]-=u,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var h=0;h>26)-(q/67108864|0),this.words[E+v]=g&67108863}for(;E>26,this.words[E+v]=g&67108863;if(S===0)return this._strip();for(de(S===-1),S=0,E=0;E>26,this.words[E]=g&67108863;return this.negative=1,this._strip()},w.prototype._wordDiv=function(u,h){var v=this.length-u.length,T=this.clone(),E=u,g=E.words[E.length-1]|0,S=this._countBits(g);v=26-S,v!==0&&(E=E.ushln(v),T.iushln(v),g=E.words[E.length-1]|0);var q=T.length-E.length,x;if(h!=="mod"){x=new w(null),x.length=q+1,x.words=new Array(x.length);for(var ge=0;ge=0;ne--){var _e=(T.words[E.length+ne]|0)*67108864+(T.words[E.length+ne-1]|0);for(_e=Math.min(_e/g|0,67108863),T._ishlnsubmul(E,_e,ne);T.negative!==0;)_e--,T.negative=0,T._ishlnsubmul(E,1,ne),T.isZero()||(T.negative^=1);x&&(x.words[ne]=_e)}return x&&x._strip(),T._strip(),h!=="div"&&v!==0&&T.iushrn(v),{div:x||null,mod:T}},w.prototype.divmod=function(u,h,v){if(de(!u.isZero()),this.isZero())return{div:new w(0),mod:new w(0)};var T,E,g;return this.negative!==0&&u.negative===0?(g=this.neg().divmod(u,h),h!=="mod"&&(T=g.div.neg()),h!=="div"&&(E=g.mod.neg(),v&&E.negative!==0&&E.iadd(u)),{div:T,mod:E}):this.negative===0&&u.negative!==0?(g=this.divmod(u.neg(),h),h!=="mod"&&(T=g.div.neg()),{div:T,mod:g.mod}):this.negative&u.negative?(g=this.neg().divmod(u.neg(),h),h!=="div"&&(E=g.mod.neg(),v&&E.negative!==0&&E.isub(u)),{div:g.div,mod:E}):u.length>this.length||this.cmp(u)<0?{div:new w(0),mod:this}:u.length===1?h==="div"?{div:this.divn(u.words[0]),mod:null}:h==="mod"?{div:null,mod:new w(this.modrn(u.words[0]))}:{div:this.divn(u.words[0]),mod:new w(this.modrn(u.words[0]))}:this._wordDiv(u,h)},w.prototype.div=function(u){return this.divmod(u,"div",!1).div},w.prototype.mod=function(u){return this.divmod(u,"mod",!1).mod},w.prototype.umod=function(u){return this.divmod(u,"mod",!0).mod},w.prototype.divRound=function(u){var h=this.divmod(u);if(h.mod.isZero())return h.div;var v=h.div.negative!==0?h.mod.isub(u):h.mod,T=u.ushrn(1),E=u.andln(1),g=v.cmp(T);return g<0||E===1&&g===0?h.div:h.div.negative!==0?h.div.isubn(1):h.div.iaddn(1)},w.prototype.modrn=function(u){var h=u<0;h&&(u=-u),de(u<=67108863);for(var v=(1<<26)%u,T=0,E=this.length-1;E>=0;E--)T=(v*T+(this.words[E]|0))%u;return h?-T:T},w.prototype.modn=function(u){return this.modrn(u)},w.prototype.idivn=function(u){var h=u<0;h&&(u=-u),de(u<=67108863);for(var v=0,T=this.length-1;T>=0;T--){var E=(this.words[T]|0)+v*67108864;this.words[T]=E/u|0,v=E%u}return this._strip(),h?this.ineg():this},w.prototype.divn=function(u){return this.clone().idivn(u)},w.prototype.egcd=function(u){de(u.negative===0),de(!u.isZero());var h=this,v=u.clone();h.negative!==0?h=h.umod(u):h=h.clone();for(var T=new w(1),E=new w(0),g=new w(0),S=new w(1),q=0;h.isEven()&&v.isEven();)h.iushrn(1),v.iushrn(1),++q;for(var x=v.clone(),ge=h.clone();!h.isZero();){for(var Me=0,ne=1;!(h.words[0]&ne)&&Me<26;++Me,ne<<=1);if(Me>0)for(h.iushrn(Me);Me-- >0;)(T.isOdd()||E.isOdd())&&(T.iadd(x),E.isub(ge)),T.iushrn(1),E.iushrn(1);for(var _e=0,Ve=1;!(v.words[0]&Ve)&&_e<26;++_e,Ve<<=1);if(_e>0)for(v.iushrn(_e);_e-- >0;)(g.isOdd()||S.isOdd())&&(g.iadd(x),S.isub(ge)),g.iushrn(1),S.iushrn(1);h.cmp(v)>=0?(h.isub(v),T.isub(g),E.isub(S)):(v.isub(h),g.isub(T),S.isub(E))}return{a:g,b:S,gcd:v.iushln(q)}},w.prototype._invmp=function(u){de(u.negative===0),de(!u.isZero());var h=this,v=u.clone();h.negative!==0?h=h.umod(u):h=h.clone();for(var T=new w(1),E=new w(0),g=v.clone();h.cmpn(1)>0&&v.cmpn(1)>0;){for(var S=0,q=1;!(h.words[0]&q)&&S<26;++S,q<<=1);if(S>0)for(h.iushrn(S);S-- >0;)T.isOdd()&&T.iadd(g),T.iushrn(1);for(var x=0,ge=1;!(v.words[0]&ge)&&x<26;++x,ge<<=1);if(x>0)for(v.iushrn(x);x-- >0;)E.isOdd()&&E.iadd(g),E.iushrn(1);h.cmp(v)>=0?(h.isub(v),T.isub(E)):(v.isub(h),E.isub(T))}var Me;return h.cmpn(1)===0?Me=T:Me=E,Me.cmpn(0)<0&&Me.iadd(u),Me},w.prototype.gcd=function(u){if(this.isZero())return u.abs();if(u.isZero())return this.abs();var h=this.clone(),v=u.clone();h.negative=0,v.negative=0;for(var T=0;h.isEven()&&v.isEven();T++)h.iushrn(1),v.iushrn(1);do{for(;h.isEven();)h.iushrn(1);for(;v.isEven();)v.iushrn(1);var E=h.cmp(v);if(E<0){var g=h;h=v,v=g}else if(E===0||v.cmpn(1)===0)break;h.isub(v)}while(!0);return v.iushln(T)},w.prototype.invm=function(u){return this.egcd(u).a.umod(u)},w.prototype.isEven=function(){return(this.words[0]&1)===0},w.prototype.isOdd=function(){return(this.words[0]&1)===1},w.prototype.andln=function(u){return this.words[0]&u},w.prototype.bincn=function(u){de(typeof u=="number");var h=u%26,v=(u-h)/26,T=1<>>26,S&=67108863,this.words[g]=S}return E!==0&&(this.words[g]=E,this.length++),this},w.prototype.isZero=function(){return this.length===1&&this.words[0]===0},w.prototype.cmpn=function(u){var h=u<0;if(this.negative!==0&&!h)return-1;if(this.negative===0&&h)return 1;this._strip();var v;if(this.length>1)v=1;else{h&&(u=-u),de(u<=67108863,"Number is too big");var T=this.words[0]|0;v=T===u?0:Tu.length)return 1;if(this.length=0;v--){var T=this.words[v]|0,E=u.words[v]|0;if(T!==E){TE&&(h=1);break}}return h},w.prototype.gtn=function(u){return this.cmpn(u)===1},w.prototype.gt=function(u){return this.cmp(u)===1},w.prototype.gten=function(u){return this.cmpn(u)>=0},w.prototype.gte=function(u){return this.cmp(u)>=0},w.prototype.ltn=function(u){return this.cmpn(u)===-1},w.prototype.lt=function(u){return this.cmp(u)===-1},w.prototype.lten=function(u){return this.cmpn(u)<=0},w.prototype.lte=function(u){return this.cmp(u)<=0},w.prototype.eqn=function(u){return this.cmpn(u)===0},w.prototype.eq=function(u){return this.cmp(u)===0},w.red=function(u){return new p(u)},w.prototype.toRed=function(u){return de(!this.red,"Already a number in reduction context"),de(this.negative===0,"red works only with positives"),u.convertTo(this)._forceRed(u)},w.prototype.fromRed=function(){return de(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},w.prototype._forceRed=function(u){return this.red=u,this},w.prototype.forceRed=function(u){return de(!this.red,"Already a number in reduction context"),this._forceRed(u)},w.prototype.redAdd=function(u){return de(this.red,"redAdd works only with red numbers"),this.red.add(this,u)},w.prototype.redIAdd=function(u){return de(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,u)},w.prototype.redSub=function(u){return de(this.red,"redSub works only with red numbers"),this.red.sub(this,u)},w.prototype.redISub=function(u){return de(this.red,"redISub works only with red numbers"),this.red.isub(this,u)},w.prototype.redShl=function(u){return de(this.red,"redShl works only with red numbers"),this.red.shl(this,u)},w.prototype.redMul=function(u){return de(this.red,"redMul works only with red numbers"),this.red._verify2(this,u),this.red.mul(this,u)},w.prototype.redIMul=function(u){return de(this.red,"redMul works only with red numbers"),this.red._verify2(this,u),this.red.imul(this,u)},w.prototype.redSqr=function(){return de(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},w.prototype.redISqr=function(){return de(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},w.prototype.redSqrt=function(){return de(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},w.prototype.redInvm=function(){return de(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},w.prototype.redNeg=function(){return de(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},w.prototype.redPow=function(u){return de(this.red&&!u.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,u)};var re={k256:null,p224:null,p192:null,p25519:null};function V(b,u){this.name=b,this.p=new w(u,16),this.n=this.p.bitLength(),this.k=new w(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}V.prototype._tmp=function(){var u=new w(null);return u.words=new Array(Math.ceil(this.n/13)),u},V.prototype.ireduce=function(u){var h=u,v;do this.split(h,this.tmp),h=this.imulK(h),h=h.iadd(this.tmp),v=h.bitLength();while(v>this.n);var T=v0?h.isub(this.p):h.strip!==void 0?h.strip():h._strip(),h},V.prototype.split=function(u,h){u.iushrn(this.n,0,h)},V.prototype.imulK=function(u){return u.imul(this.k)};function ke(){V.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}Ae(ke,V),ke.prototype.split=function(u,h){for(var v=4194303,T=Math.min(u.length,9),E=0;E>>22,g=S}g>>>=22,u.words[E-10]=g,g===0&&u.length>10?u.length-=10:u.length-=9},ke.prototype.imulK=function(u){u.words[u.length]=0,u.words[u.length+1]=0,u.length+=2;for(var h=0,v=0;v>>=26,u.words[v]=E,h=T}return h!==0&&(u.words[u.length++]=h),u},w._prime=function(u){if(re[u])return re[u];var h;if(u==="k256")h=new ke;else if(u==="p224")h=new Ce;else if(u==="p192")h=new we;else if(u==="p25519")h=new D;else throw new Error("Unknown prime "+u);return re[u]=h,h};function p(b){if(typeof b=="string"){var u=w._prime(b);this.m=u.p,this.prime=u}else de(b.gtn(1),"modulus must be greater than 1"),this.m=b,this.prime=null}p.prototype._verify1=function(u){de(u.negative===0,"red works only with positives"),de(u.red,"red works only with red numbers")},p.prototype._verify2=function(u,h){de((u.negative|h.negative)===0,"red works only with positives"),de(u.red&&u.red===h.red,"red works only with red numbers")},p.prototype.imod=function(u){return this.prime?this.prime.ireduce(u)._forceRed(this):(A(u,u.umod(this.m)._forceRed(this)),u)},p.prototype.neg=function(u){return u.isZero()?u.clone():this.m.sub(u)._forceRed(this)},p.prototype.add=function(u,h){this._verify2(u,h);var v=u.add(h);return v.cmp(this.m)>=0&&v.isub(this.m),v._forceRed(this)},p.prototype.iadd=function(u,h){this._verify2(u,h);var v=u.iadd(h);return v.cmp(this.m)>=0&&v.isub(this.m),v},p.prototype.sub=function(u,h){this._verify2(u,h);var v=u.sub(h);return v.cmpn(0)<0&&v.iadd(this.m),v._forceRed(this)},p.prototype.isub=function(u,h){this._verify2(u,h);var v=u.isub(h);return v.cmpn(0)<0&&v.iadd(this.m),v},p.prototype.shl=function(u,h){return this._verify1(u),this.imod(u.ushln(h))},p.prototype.imul=function(u,h){return this._verify2(u,h),this.imod(u.imul(h))},p.prototype.mul=function(u,h){return this._verify2(u,h),this.imod(u.mul(h))},p.prototype.isqr=function(u){return this.imul(u,u.clone())},p.prototype.sqr=function(u){return this.mul(u,u)},p.prototype.sqrt=function(u){if(u.isZero())return u.clone();var h=this.m.andln(3);if(de(h%2===1),h===3){var v=this.m.add(new w(1)).iushrn(2);return this.pow(u,v)}for(var T=this.m.subn(1),E=0;!T.isZero()&&T.andln(1)===0;)E++,T.iushrn(1);de(!T.isZero());var g=new w(1).toRed(this),S=g.redNeg(),q=this.m.subn(1).iushrn(1),x=this.m.bitLength();for(x=new w(2*x*x).toRed(this);this.pow(x,q).cmp(S)!==0;)x.redIAdd(S);for(var ge=this.pow(x,T),Me=this.pow(u,T.addn(1).iushrn(1)),ne=this.pow(u,T),_e=E;ne.cmp(g)!==0;){for(var Ve=ne,it=0;Ve.cmp(g)!==0;it++)Ve=Ve.redSqr();de(it<_e);var ft=this.pow(ge,new w(1).iushln(_e-it-1));Me=Me.redMul(ft),ge=ft.redSqr(),ne=ne.redMul(ge),_e=it}return Me},p.prototype.invm=function(u){var h=u._invmp(this.m);return h.negative!==0?(h.negative=0,this.imod(h).redNeg()):this.imod(h)},p.prototype.pow=function(u,h){if(h.isZero())return new w(1).toRed(this);if(h.cmpn(1)===0)return u.clone();var v=4,T=new Array(1<=0;E--){for(var ge=h.words[E],Me=x-1;Me>=0;Me--){var ne=ge>>Me&1;if(g!==T[0]&&(g=this.sqr(g)),ne===0&&S===0){q=0;continue}S<<=1,S|=ne,q++,!(q!==v&&(E!==0||Me!==0))&&(g=this.mul(g,T[S]),q=0,S=0)}x=26}return g},p.prototype.convertTo=function(u){var h=u.umod(this.m);return h===u?h.clone():h},p.prototype.convertFrom=function(u){var h=u.clone();return h.red=null,h},w.mont=function(u){return new m(u)};function m(b){p.call(this,b),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new w(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}Ae(m,p),m.prototype.convertTo=function(u){return this.imod(u.ushln(this.shift))},m.prototype.convertFrom=function(u){var h=this.imod(u.mul(this.rinv));return h.red=null,h},m.prototype.imul=function(u,h){if(u.isZero()||h.isZero())return u.words[0]=0,u.length=1,u;var v=u.imul(h),T=v.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),E=v.isub(T).iushrn(this.shift),g=E;return E.cmp(this.m)>=0?g=E.isub(this.m):E.cmpn(0)<0&&(g=E.iadd(this.m)),g._forceRed(this)},m.prototype.mul=function(u,h){if(u.isZero()||h.isZero())return new w(0)._forceRed(this);var v=u.mul(h),T=v.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),E=v.isub(T).iushrn(this.shift),g=E;return E.cmp(this.m)>=0?g=E.isub(this.m):E.cmpn(0)<0&&(g=E.iadd(this.m)),g._forceRed(this)},m.prototype.invm=function(u){var h=this.imod(u._invmp(this.m).mul(this.r2));return h._forceRed(this)}}(gt,this)},65442:(gt,ee,Ie)=>{var pe;gt.exports=function(w){return pe||(pe=new Be(null)),pe.generate(w)};function Be(Ae){this.rand=Ae}if(gt.exports.Rand=Be,Be.prototype.generate=function(w){return this._rand(w)},Be.prototype._rand=function(w){if(this.rand.getBytes)return this.rand.getBytes(w);for(var ce=new Uint8Array(w),z=0;z{"use strict";var pe;/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */const Be=Ie(84933),de=Ie(63328),Ae=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;ee.hp=C,pe=ie,ee.IS=50;const w=2147483647;pe=w,C.TYPED_ARRAY_SUPPORT=ce(),!C.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function ce(){try{const te=new Uint8Array(1),I={foo:function(){return 42}};return Object.setPrototypeOf(I,Uint8Array.prototype),Object.setPrototypeOf(te,I),te.foo()===42}catch{return!1}}Object.defineProperty(C.prototype,"parent",{enumerable:!0,get:function(){if(C.isBuffer(this))return this.buffer}}),Object.defineProperty(C.prototype,"offset",{enumerable:!0,get:function(){if(C.isBuffer(this))return this.byteOffset}});function z(te){if(te>w)throw new RangeError('The value "'+te+'" is invalid for option "size"');const I=new Uint8Array(te);return Object.setPrototypeOf(I,C.prototype),I}function C(te,I,N){if(typeof te=="number"){if(typeof I=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return B(te)}return L(te,I,N)}C.poolSize=8192;function L(te,I,N){if(typeof te=="string")return U(te,I);if(ArrayBuffer.isView(te))return F(te);if(te==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof te);if(Dt(te,ArrayBuffer)||te&&Dt(te.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Dt(te,SharedArrayBuffer)||te&&Dt(te.buffer,SharedArrayBuffer)))return J(te,I,N);if(typeof te=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const Ee=te.valueOf&&te.valueOf();if(Ee!=null&&Ee!==te)return C.from(Ee,I,N);const Ge=Se(te);if(Ge)return Ge;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof te[Symbol.toPrimitive]=="function")return C.from(te[Symbol.toPrimitive]("string"),I,N);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof te)}C.from=function(te,I,N){return L(te,I,N)},Object.setPrototypeOf(C.prototype,Uint8Array.prototype),Object.setPrototypeOf(C,Uint8Array);function A(te){if(typeof te!="number")throw new TypeError('"size" argument must be of type number');if(te<0)throw new RangeError('The value "'+te+'" is invalid for option "size"')}function R(te,I,N){return A(te),te<=0?z(te):I!==void 0?typeof N=="string"?z(te).fill(I,N):z(te).fill(I):z(te)}C.alloc=function(te,I,N){return R(te,I,N)};function B(te){return A(te),z(te<0?0:Pe(te)|0)}C.allocUnsafe=function(te){return B(te)},C.allocUnsafeSlow=function(te){return B(te)};function U(te,I){if((typeof I!="string"||I==="")&&(I="utf8"),!C.isEncoding(I))throw new TypeError("Unknown encoding: "+I);const N=W(te,I)|0;let Ee=z(N);const Ge=Ee.write(te,I);return Ge!==N&&(Ee=Ee.slice(0,Ge)),Ee}function P(te){const I=te.length<0?0:Pe(te.length)|0,N=z(I);for(let Ee=0;Ee=w)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+w.toString(16)+" bytes");return te|0}function ie(te){return+te!=te&&(te=0),C.alloc(+te)}C.isBuffer=function(I){return I!=null&&I._isBuffer===!0&&I!==C.prototype},C.compare=function(I,N){if(Dt(I,Uint8Array)&&(I=C.from(I,I.offset,I.byteLength)),Dt(N,Uint8Array)&&(N=C.from(N,N.offset,N.byteLength)),!C.isBuffer(I)||!C.isBuffer(N))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(I===N)return 0;let Ee=I.length,Ge=N.length;for(let st=0,ut=Math.min(Ee,Ge);stGe.length?(C.isBuffer(ut)||(ut=C.from(ut)),ut.copy(Ge,st)):Uint8Array.prototype.set.call(Ge,ut,st);else if(C.isBuffer(ut))ut.copy(Ge,st);else throw new TypeError('"list" argument must be an Array of Buffers');st+=ut.length}return Ge};function W(te,I){if(C.isBuffer(te))return te.length;if(ArrayBuffer.isView(te)||Dt(te,ArrayBuffer))return te.byteLength;if(typeof te!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof te);const N=te.length,Ee=arguments.length>2&&arguments[2]===!0;if(!Ee&&N===0)return 0;let Ge=!1;for(;;)switch(I){case"ascii":case"latin1":case"binary":return N;case"utf8":case"utf-8":return ze(te).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N*2;case"hex":return N>>>1;case"base64":return at(te).length;default:if(Ge)return Ee?-1:ze(te).length;I=(""+I).toLowerCase(),Ge=!0}}C.byteLength=W;function H(te,I,N){let Ee=!1;if((I===void 0||I<0)&&(I=0),I>this.length||((N===void 0||N>this.length)&&(N=this.length),N<=0)||(N>>>=0,I>>>=0,N<=I))return"";for(te||(te="utf8");;)switch(te){case"hex":return g(this,I,N);case"utf8":case"utf-8":return u(this,I,N);case"ascii":return T(this,I,N);case"latin1":case"binary":return E(this,I,N);case"base64":return b(this,I,N);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,I,N);default:if(Ee)throw new TypeError("Unknown encoding: "+te);te=(te+"").toLowerCase(),Ee=!0}}C.prototype._isBuffer=!0;function re(te,I,N){const Ee=te[I];te[I]=te[N],te[N]=Ee}C.prototype.swap16=function(){const I=this.length;if(I%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let N=0;NN&&(I+=" ... "),""},Ae&&(C.prototype[Ae]=C.prototype.inspect),C.prototype.compare=function(I,N,Ee,Ge,st){if(Dt(I,Uint8Array)&&(I=C.from(I,I.offset,I.byteLength)),!C.isBuffer(I))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof I);if(N===void 0&&(N=0),Ee===void 0&&(Ee=I?I.length:0),Ge===void 0&&(Ge=0),st===void 0&&(st=this.length),N<0||Ee>I.length||Ge<0||st>this.length)throw new RangeError("out of range index");if(Ge>=st&&N>=Ee)return 0;if(Ge>=st)return-1;if(N>=Ee)return 1;if(N>>>=0,Ee>>>=0,Ge>>>=0,st>>>=0,this===I)return 0;let ut=st-Ge,cr=Ee-N;const jt=Math.min(ut,cr),Lt=this.slice(Ge,st),dr=I.slice(N,Ee);for(let Wt=0;Wt2147483647?N=2147483647:N<-2147483648&&(N=-2147483648),N=+N,Ct(N)&&(N=Ge?0:te.length-1),N<0&&(N=te.length+N),N>=te.length){if(Ge)return-1;N=te.length-1}else if(N<0)if(Ge)N=0;else return-1;if(typeof I=="string"&&(I=C.from(I,Ee)),C.isBuffer(I))return I.length===0?-1:ke(te,I,N,Ee,Ge);if(typeof I=="number")return I=I&255,typeof Uint8Array.prototype.indexOf=="function"?Ge?Uint8Array.prototype.indexOf.call(te,I,N):Uint8Array.prototype.lastIndexOf.call(te,I,N):ke(te,[I],N,Ee,Ge);throw new TypeError("val must be string, number or Buffer")}function ke(te,I,N,Ee,Ge){let st=1,ut=te.length,cr=I.length;if(Ee!==void 0&&(Ee=String(Ee).toLowerCase(),Ee==="ucs2"||Ee==="ucs-2"||Ee==="utf16le"||Ee==="utf-16le")){if(te.length<2||I.length<2)return-1;st=2,ut/=2,cr/=2,N/=2}function jt(dr,Wt){return st===1?dr[Wt]:dr.readUInt16BE(Wt*st)}let Lt;if(Ge){let dr=-1;for(Lt=N;Ltut&&(N=ut-cr),Lt=N;Lt>=0;Lt--){let dr=!0;for(let Wt=0;WtGe&&(Ee=Ge)):Ee=Ge;const st=I.length;Ee>st/2&&(Ee=st/2);let ut;for(ut=0;ut>>0,isFinite(Ee)?(Ee=Ee>>>0,Ge===void 0&&(Ge="utf8")):(Ge=Ee,Ee=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");const st=this.length-N;if((Ee===void 0||Ee>st)&&(Ee=st),I.length>0&&(Ee<0||N<0)||N>this.length)throw new RangeError("Attempt to write outside buffer bounds");Ge||(Ge="utf8");let ut=!1;for(;;)switch(Ge){case"hex":return Ce(this,I,N,Ee);case"utf8":case"utf-8":return we(this,I,N,Ee);case"ascii":case"latin1":case"binary":return D(this,I,N,Ee);case"base64":return p(this,I,N,Ee);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return m(this,I,N,Ee);default:if(ut)throw new TypeError("Unknown encoding: "+Ge);Ge=(""+Ge).toLowerCase(),ut=!0}},C.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function b(te,I,N){return I===0&&N===te.length?Be.fromByteArray(te):Be.fromByteArray(te.slice(I,N))}function u(te,I,N){N=Math.min(te.length,N);const Ee=[];let Ge=I;for(;Ge239?4:st>223?3:st>191?2:1;if(Ge+cr<=N){let jt,Lt,dr,Wt;switch(cr){case 1:st<128&&(ut=st);break;case 2:jt=te[Ge+1],(jt&192)===128&&(Wt=(st&31)<<6|jt&63,Wt>127&&(ut=Wt));break;case 3:jt=te[Ge+1],Lt=te[Ge+2],(jt&192)===128&&(Lt&192)===128&&(Wt=(st&15)<<12|(jt&63)<<6|Lt&63,Wt>2047&&(Wt<55296||Wt>57343)&&(ut=Wt));break;case 4:jt=te[Ge+1],Lt=te[Ge+2],dr=te[Ge+3],(jt&192)===128&&(Lt&192)===128&&(dr&192)===128&&(Wt=(st&15)<<18|(jt&63)<<12|(Lt&63)<<6|dr&63,Wt>65535&&Wt<1114112&&(ut=Wt))}}ut===null?(ut=65533,cr=1):ut>65535&&(ut-=65536,Ee.push(ut>>>10&1023|55296),ut=56320|ut&1023),Ee.push(ut),Ge+=cr}return v(Ee)}const h=4096;function v(te){const I=te.length;if(I<=h)return String.fromCharCode.apply(String,te);let N="",Ee=0;for(;EeEe)&&(N=Ee);let Ge="";for(let st=I;stEe&&(I=Ee),N<0?(N+=Ee,N<0&&(N=0)):N>Ee&&(N=Ee),NN)throw new RangeError("Trying to access beyond buffer length")}C.prototype.readUintLE=C.prototype.readUIntLE=function(I,N,Ee){I=I>>>0,N=N>>>0,Ee||q(I,N,this.length);let Ge=this[I],st=1,ut=0;for(;++ut>>0,N=N>>>0,Ee||q(I,N,this.length);let Ge=this[I+--N],st=1;for(;N>0&&(st*=256);)Ge+=this[I+--N]*st;return Ge},C.prototype.readUint8=C.prototype.readUInt8=function(I,N){return I=I>>>0,N||q(I,1,this.length),this[I]},C.prototype.readUint16LE=C.prototype.readUInt16LE=function(I,N){return I=I>>>0,N||q(I,2,this.length),this[I]|this[I+1]<<8},C.prototype.readUint16BE=C.prototype.readUInt16BE=function(I,N){return I=I>>>0,N||q(I,2,this.length),this[I]<<8|this[I+1]},C.prototype.readUint32LE=C.prototype.readUInt32LE=function(I,N){return I=I>>>0,N||q(I,4,this.length),(this[I]|this[I+1]<<8|this[I+2]<<16)+this[I+3]*16777216},C.prototype.readUint32BE=C.prototype.readUInt32BE=function(I,N){return I=I>>>0,N||q(I,4,this.length),this[I]*16777216+(this[I+1]<<16|this[I+2]<<8|this[I+3])},C.prototype.readBigUInt64LE=zt(function(I){I=I>>>0,ot(I,"offset");const N=this[I],Ee=this[I+7];(N===void 0||Ee===void 0)&&Ke(I,this.length-8);const Ge=N+this[++I]*2**8+this[++I]*2**16+this[++I]*2**24,st=this[++I]+this[++I]*2**8+this[++I]*2**16+Ee*2**24;return BigInt(Ge)+(BigInt(st)<>>0,ot(I,"offset");const N=this[I],Ee=this[I+7];(N===void 0||Ee===void 0)&&Ke(I,this.length-8);const Ge=N*2**24+this[++I]*2**16+this[++I]*2**8+this[++I],st=this[++I]*2**24+this[++I]*2**16+this[++I]*2**8+Ee;return(BigInt(Ge)<>>0,N=N>>>0,Ee||q(I,N,this.length);let Ge=this[I],st=1,ut=0;for(;++ut=st&&(Ge-=Math.pow(2,8*N)),Ge},C.prototype.readIntBE=function(I,N,Ee){I=I>>>0,N=N>>>0,Ee||q(I,N,this.length);let Ge=N,st=1,ut=this[I+--Ge];for(;Ge>0&&(st*=256);)ut+=this[I+--Ge]*st;return st*=128,ut>=st&&(ut-=Math.pow(2,8*N)),ut},C.prototype.readInt8=function(I,N){return I=I>>>0,N||q(I,1,this.length),this[I]&128?(255-this[I]+1)*-1:this[I]},C.prototype.readInt16LE=function(I,N){I=I>>>0,N||q(I,2,this.length);const Ee=this[I]|this[I+1]<<8;return Ee&32768?Ee|4294901760:Ee},C.prototype.readInt16BE=function(I,N){I=I>>>0,N||q(I,2,this.length);const Ee=this[I+1]|this[I]<<8;return Ee&32768?Ee|4294901760:Ee},C.prototype.readInt32LE=function(I,N){return I=I>>>0,N||q(I,4,this.length),this[I]|this[I+1]<<8|this[I+2]<<16|this[I+3]<<24},C.prototype.readInt32BE=function(I,N){return I=I>>>0,N||q(I,4,this.length),this[I]<<24|this[I+1]<<16|this[I+2]<<8|this[I+3]},C.prototype.readBigInt64LE=zt(function(I){I=I>>>0,ot(I,"offset");const N=this[I],Ee=this[I+7];(N===void 0||Ee===void 0)&&Ke(I,this.length-8);const Ge=this[I+4]+this[I+5]*2**8+this[I+6]*2**16+(Ee<<24);return(BigInt(Ge)<>>0,ot(I,"offset");const N=this[I],Ee=this[I+7];(N===void 0||Ee===void 0)&&Ke(I,this.length-8);const Ge=(N<<24)+this[++I]*2**16+this[++I]*2**8+this[++I];return(BigInt(Ge)<>>0,N||q(I,4,this.length),de.read(this,I,!0,23,4)},C.prototype.readFloatBE=function(I,N){return I=I>>>0,N||q(I,4,this.length),de.read(this,I,!1,23,4)},C.prototype.readDoubleLE=function(I,N){return I=I>>>0,N||q(I,8,this.length),de.read(this,I,!0,52,8)},C.prototype.readDoubleBE=function(I,N){return I=I>>>0,N||q(I,8,this.length),de.read(this,I,!1,52,8)};function x(te,I,N,Ee,Ge,st){if(!C.isBuffer(te))throw new TypeError('"buffer" argument must be a Buffer instance');if(I>Ge||Ite.length)throw new RangeError("Index out of range")}C.prototype.writeUintLE=C.prototype.writeUIntLE=function(I,N,Ee,Ge){if(I=+I,N=N>>>0,Ee=Ee>>>0,!Ge){const cr=Math.pow(2,8*Ee)-1;x(this,I,N,Ee,cr,0)}let st=1,ut=0;for(this[N]=I&255;++ut>>0,Ee=Ee>>>0,!Ge){const cr=Math.pow(2,8*Ee)-1;x(this,I,N,Ee,cr,0)}let st=Ee-1,ut=1;for(this[N+st]=I&255;--st>=0&&(ut*=256);)this[N+st]=I/ut&255;return N+Ee},C.prototype.writeUint8=C.prototype.writeUInt8=function(I,N,Ee){return I=+I,N=N>>>0,Ee||x(this,I,N,1,255,0),this[N]=I&255,N+1},C.prototype.writeUint16LE=C.prototype.writeUInt16LE=function(I,N,Ee){return I=+I,N=N>>>0,Ee||x(this,I,N,2,65535,0),this[N]=I&255,this[N+1]=I>>>8,N+2},C.prototype.writeUint16BE=C.prototype.writeUInt16BE=function(I,N,Ee){return I=+I,N=N>>>0,Ee||x(this,I,N,2,65535,0),this[N]=I>>>8,this[N+1]=I&255,N+2},C.prototype.writeUint32LE=C.prototype.writeUInt32LE=function(I,N,Ee){return I=+I,N=N>>>0,Ee||x(this,I,N,4,4294967295,0),this[N+3]=I>>>24,this[N+2]=I>>>16,this[N+1]=I>>>8,this[N]=I&255,N+4},C.prototype.writeUint32BE=C.prototype.writeUInt32BE=function(I,N,Ee){return I=+I,N=N>>>0,Ee||x(this,I,N,4,4294967295,0),this[N]=I>>>24,this[N+1]=I>>>16,this[N+2]=I>>>8,this[N+3]=I&255,N+4};function ge(te,I,N,Ee,Ge){De(I,Ee,Ge,te,N,7);let st=Number(I&BigInt(4294967295));te[N++]=st,st=st>>8,te[N++]=st,st=st>>8,te[N++]=st,st=st>>8,te[N++]=st;let ut=Number(I>>BigInt(32)&BigInt(4294967295));return te[N++]=ut,ut=ut>>8,te[N++]=ut,ut=ut>>8,te[N++]=ut,ut=ut>>8,te[N++]=ut,N}function Me(te,I,N,Ee,Ge){De(I,Ee,Ge,te,N,7);let st=Number(I&BigInt(4294967295));te[N+7]=st,st=st>>8,te[N+6]=st,st=st>>8,te[N+5]=st,st=st>>8,te[N+4]=st;let ut=Number(I>>BigInt(32)&BigInt(4294967295));return te[N+3]=ut,ut=ut>>8,te[N+2]=ut,ut=ut>>8,te[N+1]=ut,ut=ut>>8,te[N]=ut,N+8}C.prototype.writeBigUInt64LE=zt(function(I,N=0){return ge(this,I,N,BigInt(0),BigInt("0xffffffffffffffff"))}),C.prototype.writeBigUInt64BE=zt(function(I,N=0){return Me(this,I,N,BigInt(0),BigInt("0xffffffffffffffff"))}),C.prototype.writeIntLE=function(I,N,Ee,Ge){if(I=+I,N=N>>>0,!Ge){const jt=Math.pow(2,8*Ee-1);x(this,I,N,Ee,jt-1,-jt)}let st=0,ut=1,cr=0;for(this[N]=I&255;++st>0)-cr&255;return N+Ee},C.prototype.writeIntBE=function(I,N,Ee,Ge){if(I=+I,N=N>>>0,!Ge){const jt=Math.pow(2,8*Ee-1);x(this,I,N,Ee,jt-1,-jt)}let st=Ee-1,ut=1,cr=0;for(this[N+st]=I&255;--st>=0&&(ut*=256);)I<0&&cr===0&&this[N+st+1]!==0&&(cr=1),this[N+st]=(I/ut>>0)-cr&255;return N+Ee},C.prototype.writeInt8=function(I,N,Ee){return I=+I,N=N>>>0,Ee||x(this,I,N,1,127,-128),I<0&&(I=255+I+1),this[N]=I&255,N+1},C.prototype.writeInt16LE=function(I,N,Ee){return I=+I,N=N>>>0,Ee||x(this,I,N,2,32767,-32768),this[N]=I&255,this[N+1]=I>>>8,N+2},C.prototype.writeInt16BE=function(I,N,Ee){return I=+I,N=N>>>0,Ee||x(this,I,N,2,32767,-32768),this[N]=I>>>8,this[N+1]=I&255,N+2},C.prototype.writeInt32LE=function(I,N,Ee){return I=+I,N=N>>>0,Ee||x(this,I,N,4,2147483647,-2147483648),this[N]=I&255,this[N+1]=I>>>8,this[N+2]=I>>>16,this[N+3]=I>>>24,N+4},C.prototype.writeInt32BE=function(I,N,Ee){return I=+I,N=N>>>0,Ee||x(this,I,N,4,2147483647,-2147483648),I<0&&(I=4294967295+I+1),this[N]=I>>>24,this[N+1]=I>>>16,this[N+2]=I>>>8,this[N+3]=I&255,N+4},C.prototype.writeBigInt64LE=zt(function(I,N=0){return ge(this,I,N,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),C.prototype.writeBigInt64BE=zt(function(I,N=0){return Me(this,I,N,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function ne(te,I,N,Ee,Ge,st){if(N+Ee>te.length)throw new RangeError("Index out of range");if(N<0)throw new RangeError("Index out of range")}function _e(te,I,N,Ee,Ge){return I=+I,N=N>>>0,Ge||ne(te,I,N,4,34028234663852886e22,-34028234663852886e22),de.write(te,I,N,Ee,23,4),N+4}C.prototype.writeFloatLE=function(I,N,Ee){return _e(this,I,N,!0,Ee)},C.prototype.writeFloatBE=function(I,N,Ee){return _e(this,I,N,!1,Ee)};function Ve(te,I,N,Ee,Ge){return I=+I,N=N>>>0,Ge||ne(te,I,N,8,17976931348623157e292,-17976931348623157e292),de.write(te,I,N,Ee,52,8),N+8}C.prototype.writeDoubleLE=function(I,N,Ee){return Ve(this,I,N,!0,Ee)},C.prototype.writeDoubleBE=function(I,N,Ee){return Ve(this,I,N,!1,Ee)},C.prototype.copy=function(I,N,Ee,Ge){if(!C.isBuffer(I))throw new TypeError("argument should be a Buffer");if(Ee||(Ee=0),!Ge&&Ge!==0&&(Ge=this.length),N>=I.length&&(N=I.length),N||(N=0),Ge>0&&Ge=this.length)throw new RangeError("Index out of range");if(Ge<0)throw new RangeError("sourceEnd out of bounds");Ge>this.length&&(Ge=this.length),I.length-N>>0,Ee=Ee===void 0?this.length:Ee>>>0,I||(I=0);let st;if(typeof I=="number")for(st=N;st4294967296?Ge=le(String(N)):typeof N=="bigint"&&(Ge=String(N),(N>BigInt(2)**BigInt(32)||N<-(BigInt(2)**BigInt(32)))&&(Ge=le(Ge)),Ge+="n"),Ee+=` It must be ${I}. Received ${Ge}`,Ee},RangeError);function le(te){let I="",N=te.length;const Ee=te[0]==="-"?1:0;for(;N>=Ee+4;N-=3)I=`_${te.slice(N-3,N)}${I}`;return`${te.slice(0,N)}${I}`}function Te(te,I,N){ot(I,"offset"),(te[I]===void 0||te[I+N]===void 0)&&Ke(I,te.length-(N+1))}function De(te,I,N,Ee,Ge,st){if(te>N||te3?I===0||I===BigInt(0)?cr=`>= 0${ut} and < 2${ut} ** ${(st+1)*8}${ut}`:cr=`>= -(2${ut} ** ${(st+1)*8-1}${ut}) and < 2 ** ${(st+1)*8-1}${ut}`:cr=`>= ${I}${ut} and <= ${N}${ut}`,new it.ERR_OUT_OF_RANGE("value",cr,te)}Te(Ee,Ge,st)}function ot(te,I){if(typeof te!="number")throw new it.ERR_INVALID_ARG_TYPE(I,"number",te)}function Ke(te,I,N){throw Math.floor(te)!==te?(ot(te,N),new it.ERR_OUT_OF_RANGE(N||"offset","an integer",te)):I<0?new it.ERR_BUFFER_OUT_OF_BOUNDS:new it.ERR_OUT_OF_RANGE(N||"offset",`>= ${N?1:0} and <= ${I}`,te)}const Xe=/[^+/0-9A-Za-z-_]/g;function lt(te){if(te=te.split("=")[0],te=te.trim().replace(Xe,""),te.length<2)return"";for(;te.length%4!==0;)te=te+"=";return te}function ze(te,I){I=I||1/0;let N;const Ee=te.length;let Ge=null;const st=[];for(let ut=0;ut55295&&N<57344){if(!Ge){if(N>56319){(I-=3)>-1&&st.push(239,191,189);continue}else if(ut+1===Ee){(I-=3)>-1&&st.push(239,191,189);continue}Ge=N;continue}if(N<56320){(I-=3)>-1&&st.push(239,191,189),Ge=N;continue}N=(Ge-55296<<10|N-56320)+65536}else Ge&&(I-=3)>-1&&st.push(239,191,189);if(Ge=null,N<128){if((I-=1)<0)break;st.push(N)}else if(N<2048){if((I-=2)<0)break;st.push(N>>6|192,N&63|128)}else if(N<65536){if((I-=3)<0)break;st.push(N>>12|224,N>>6&63|128,N&63|128)}else if(N<1114112){if((I-=4)<0)break;st.push(N>>18|240,N>>12&63|128,N>>6&63|128,N&63|128)}else throw new Error("Invalid code point")}return st}function Ye(te){const I=[];for(let N=0;N>8,Ge=N%256,st.push(Ge),st.push(Ee);return st}function at(te){return Be.toByteArray(lt(te))}function pt(te,I,N,Ee){let Ge;for(Ge=0;Ge=I.length||Ge>=te.length);++Ge)I[Ge+N]=te[Ge];return Ge}function Dt(te,I){return te instanceof I||te!=null&&te.constructor!=null&&te.constructor.name!=null&&te.constructor.name===I.name}function Ct(te){return te!==te}const Tt=function(){const te="0123456789abcdef",I=new Array(256);for(let N=0;N<16;++N){const Ee=N*16;for(let Ge=0;Ge<16;++Ge)I[Ee+Ge]=te[N]+te[Ge]}return I}();function zt(te){return typeof BigInt>"u"?kt:te}function kt(){throw new Error("BigInt not supported")}},89386:(gt,ee,Ie)=>{"use strict";var pe=ee;pe.version=Ie(4789).rE,pe.utils=Ie(17316),pe.rand=Ie(65442),pe.curve=Ie(81869),pe.curves=Ie(83189),pe.ec=Ie(17566),pe.eddsa=Ie(13609)},56200:(gt,ee,Ie)=>{"use strict";var pe=Ie(54619),Be=Ie(17316),de=Be.getNAF,Ae=Be.getJSF,w=Be.assert;function ce(C,L){this.type=C,this.p=new pe(L.p,16),this.red=L.prime?pe.red(L.prime):pe.mont(this.p),this.zero=new pe(0).toRed(this.red),this.one=new pe(1).toRed(this.red),this.two=new pe(2).toRed(this.red),this.n=L.n&&new pe(L.n,16),this.g=L.g&&this.pointFromJSON(L.g,L.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var A=this.n&&this.p.div(this.n);!A||A.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}gt.exports=ce,ce.prototype.point=function(){throw new Error("Not implemented")},ce.prototype.validate=function(){throw new Error("Not implemented")},ce.prototype._fixedNafMul=function(L,A){w(L.precomputed);var R=L._getDoubles(),B=de(A,1,this._bitLength),U=(1<=F;Se--)J=(J<<1)+B[Se];P.push(J)}for(var Pe=this.jpoint(null,null,null),ie=this.jpoint(null,null,null),W=U;W>0;W--){for(F=0;F=0;J--){for(var Se=0;J>=0&&P[J]===0;J--)Se++;if(J>=0&&Se++,F=F.dblp(Se),J<0)break;var Pe=P[J];w(Pe!==0),L.type==="affine"?Pe>0?F=F.mixedAdd(U[Pe-1>>1]):F=F.mixedAdd(U[-Pe-1>>1].neg()):Pe>0?F=F.add(U[Pe-1>>1]):F=F.add(U[-Pe-1>>1].neg())}return L.type==="affine"?F.toP():F},ce.prototype._wnafMulAdd=function(L,A,R,B,U){var P=this._wnafT1,F=this._wnafT2,J=this._wnafT3,Se=0,Pe,ie,W;for(Pe=0;Pe=1;Pe-=2){var re=Pe-1,V=Pe;if(P[re]!==1||P[V]!==1){J[re]=de(R[re],P[re],this._bitLength),J[V]=de(R[V],P[V],this._bitLength),Se=Math.max(J[re].length,Se),Se=Math.max(J[V].length,Se);continue}var ke=[A[re],null,null,A[V]];A[re].y.cmp(A[V].y)===0?(ke[1]=A[re].add(A[V]),ke[2]=A[re].toJ().mixedAdd(A[V].neg())):A[re].y.cmp(A[V].y.redNeg())===0?(ke[1]=A[re].toJ().mixedAdd(A[V]),ke[2]=A[re].add(A[V].neg())):(ke[1]=A[re].toJ().mixedAdd(A[V]),ke[2]=A[re].toJ().mixedAdd(A[V].neg()));var Ce=[-3,-1,-5,-7,0,7,5,1,3],we=Ae(R[re],R[V]);for(Se=Math.max(we[0].length,Se),J[re]=new Array(Se),J[V]=new Array(Se),ie=0;ie=0;Pe--){for(var u=0;Pe>=0;){var h=!0;for(ie=0;ie=0&&u++,m=m.dblp(u),Pe<0)break;for(ie=0;ie0?W=F[ie][v-1>>1]:v<0&&(W=F[ie][-v-1>>1].neg()),W.type==="affine"?m=m.mixedAdd(W):m=m.add(W))}}for(Pe=0;Pe=Math.ceil((L.bitLength()+1)/A.step):!1},z.prototype._getDoubles=function(L,A){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var R=[this],B=this,U=0;U{"use strict";var pe=Ie(17316),Be=Ie(54619),de=Ie(91193),Ae=Ie(56200),w=pe.assert;function ce(C){this.twisted=(C.a|0)!==1,this.mOneA=this.twisted&&(C.a|0)===-1,this.extended=this.mOneA,Ae.call(this,"edwards",C),this.a=new Be(C.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new Be(C.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new Be(C.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),w(!this.twisted||this.c.fromRed().cmpn(1)===0),this.oneC=(C.c|0)===1}de(ce,Ae),gt.exports=ce,ce.prototype._mulA=function(L){return this.mOneA?L.redNeg():this.a.redMul(L)},ce.prototype._mulC=function(L){return this.oneC?L:this.c.redMul(L)},ce.prototype.jpoint=function(L,A,R,B){return this.point(L,A,R,B)},ce.prototype.pointFromX=function(L,A){L=new Be(L,16),L.red||(L=L.toRed(this.red));var R=L.redSqr(),B=this.c2.redSub(this.a.redMul(R)),U=this.one.redSub(this.c2.redMul(this.d).redMul(R)),P=B.redMul(U.redInvm()),F=P.redSqrt();if(F.redSqr().redSub(P).cmp(this.zero)!==0)throw new Error("invalid point");var J=F.fromRed().isOdd();return(A&&!J||!A&&J)&&(F=F.redNeg()),this.point(L,F)},ce.prototype.pointFromY=function(L,A){L=new Be(L,16),L.red||(L=L.toRed(this.red));var R=L.redSqr(),B=R.redSub(this.c2),U=R.redMul(this.d).redMul(this.c2).redSub(this.a),P=B.redMul(U.redInvm());if(P.cmp(this.zero)===0){if(A)throw new Error("invalid point");return this.point(this.zero,L)}var F=P.redSqrt();if(F.redSqr().redSub(P).cmp(this.zero)!==0)throw new Error("invalid point");return F.fromRed().isOdd()!==A&&(F=F.redNeg()),this.point(F,L)},ce.prototype.validate=function(L){if(L.isInfinity())return!0;L.normalize();var A=L.x.redSqr(),R=L.y.redSqr(),B=A.redMul(this.a).redAdd(R),U=this.c2.redMul(this.one.redAdd(this.d.redMul(A).redMul(R)));return B.cmp(U)===0};function z(C,L,A,R,B){Ae.BasePoint.call(this,C,"projective"),L===null&&A===null&&R===null?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new Be(L,16),this.y=new Be(A,16),this.z=R?new Be(R,16):this.curve.one,this.t=B&&new Be(B,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}de(z,Ae.BasePoint),ce.prototype.pointFromJSON=function(L){return z.fromJSON(this,L)},ce.prototype.point=function(L,A,R,B){return new z(this,L,A,R,B)},z.fromJSON=function(L,A){return new z(L,A[0],A[1],A[2])},z.prototype.inspect=function(){return this.isInfinity()?"":""},z.prototype.isInfinity=function(){return this.x.cmpn(0)===0&&(this.y.cmp(this.z)===0||this.zOne&&this.y.cmp(this.curve.c)===0)},z.prototype._extDbl=function(){var L=this.x.redSqr(),A=this.y.redSqr(),R=this.z.redSqr();R=R.redIAdd(R);var B=this.curve._mulA(L),U=this.x.redAdd(this.y).redSqr().redISub(L).redISub(A),P=B.redAdd(A),F=P.redSub(R),J=B.redSub(A),Se=U.redMul(F),Pe=P.redMul(J),ie=U.redMul(J),W=F.redMul(P);return this.curve.point(Se,Pe,W,ie)},z.prototype._projDbl=function(){var L=this.x.redAdd(this.y).redSqr(),A=this.x.redSqr(),R=this.y.redSqr(),B,U,P,F,J,Se;if(this.curve.twisted){F=this.curve._mulA(A);var Pe=F.redAdd(R);this.zOne?(B=L.redSub(A).redSub(R).redMul(Pe.redSub(this.curve.two)),U=Pe.redMul(F.redSub(R)),P=Pe.redSqr().redSub(Pe).redSub(Pe)):(J=this.z.redSqr(),Se=Pe.redSub(J).redISub(J),B=L.redSub(A).redISub(R).redMul(Se),U=Pe.redMul(F.redSub(R)),P=Pe.redMul(Se))}else F=A.redAdd(R),J=this.curve._mulC(this.z).redSqr(),Se=F.redSub(J).redSub(J),B=this.curve._mulC(L.redISub(F)).redMul(Se),U=this.curve._mulC(F).redMul(A.redISub(R)),P=F.redMul(Se);return this.curve.point(B,U,P)},z.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},z.prototype._extAdd=function(L){var A=this.y.redSub(this.x).redMul(L.y.redSub(L.x)),R=this.y.redAdd(this.x).redMul(L.y.redAdd(L.x)),B=this.t.redMul(this.curve.dd).redMul(L.t),U=this.z.redMul(L.z.redAdd(L.z)),P=R.redSub(A),F=U.redSub(B),J=U.redAdd(B),Se=R.redAdd(A),Pe=P.redMul(F),ie=J.redMul(Se),W=P.redMul(Se),H=F.redMul(J);return this.curve.point(Pe,ie,H,W)},z.prototype._projAdd=function(L){var A=this.z.redMul(L.z),R=A.redSqr(),B=this.x.redMul(L.x),U=this.y.redMul(L.y),P=this.curve.d.redMul(B).redMul(U),F=R.redSub(P),J=R.redAdd(P),Se=this.x.redAdd(this.y).redMul(L.x.redAdd(L.y)).redISub(B).redISub(U),Pe=A.redMul(F).redMul(Se),ie,W;return this.curve.twisted?(ie=A.redMul(J).redMul(U.redSub(this.curve._mulA(B))),W=F.redMul(J)):(ie=A.redMul(J).redMul(U.redSub(B)),W=this.curve._mulC(F).redMul(J)),this.curve.point(Pe,ie,W)},z.prototype.add=function(L){return this.isInfinity()?L:L.isInfinity()?this:this.curve.extended?this._extAdd(L):this._projAdd(L)},z.prototype.mul=function(L){return this._hasDoubles(L)?this.curve._fixedNafMul(this,L):this.curve._wnafMul(this,L)},z.prototype.mulAdd=function(L,A,R){return this.curve._wnafMulAdd(1,[this,A],[L,R],2,!1)},z.prototype.jmulAdd=function(L,A,R){return this.curve._wnafMulAdd(1,[this,A],[L,R],2,!0)},z.prototype.normalize=function(){if(this.zOne)return this;var L=this.z.redInvm();return this.x=this.x.redMul(L),this.y=this.y.redMul(L),this.t&&(this.t=this.t.redMul(L)),this.z=this.curve.one,this.zOne=!0,this},z.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},z.prototype.getX=function(){return this.normalize(),this.x.fromRed()},z.prototype.getY=function(){return this.normalize(),this.y.fromRed()},z.prototype.eq=function(L){return this===L||this.getX().cmp(L.getX())===0&&this.getY().cmp(L.getY())===0},z.prototype.eqXToP=function(L){var A=L.toRed(this.curve.red).redMul(this.z);if(this.x.cmp(A)===0)return!0;for(var R=L.clone(),B=this.curve.redN.redMul(this.z);;){if(R.iadd(this.curve.n),R.cmp(this.curve.p)>=0)return!1;if(A.redIAdd(B),this.x.cmp(A)===0)return!0}},z.prototype.toP=z.prototype.normalize,z.prototype.mixedAdd=z.prototype.add},81869:(gt,ee,Ie)=>{"use strict";var pe=ee;pe.base=Ie(56200),pe.short=Ie(36343),pe.mont=Ie(26631),pe.edwards=Ie(35437)},26631:(gt,ee,Ie)=>{"use strict";var pe=Ie(54619),Be=Ie(91193),de=Ie(56200),Ae=Ie(17316);function w(z){de.call(this,"mont",z),this.a=new pe(z.a,16).toRed(this.red),this.b=new pe(z.b,16).toRed(this.red),this.i4=new pe(4).toRed(this.red).redInvm(),this.two=new pe(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}Be(w,de),gt.exports=w,w.prototype.validate=function(C){var L=C.normalize().x,A=L.redSqr(),R=A.redMul(L).redAdd(A.redMul(this.a)).redAdd(L),B=R.redSqrt();return B.redSqr().cmp(R)===0};function ce(z,C,L){de.BasePoint.call(this,z,"projective"),C===null&&L===null?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new pe(C,16),this.z=new pe(L,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}Be(ce,de.BasePoint),w.prototype.decodePoint=function(C,L){return this.point(Ae.toArray(C,L),1)},w.prototype.point=function(C,L){return new ce(this,C,L)},w.prototype.pointFromJSON=function(C){return ce.fromJSON(this,C)},ce.prototype.precompute=function(){},ce.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},ce.fromJSON=function(C,L){return new ce(C,L[0],L[1]||C.one)},ce.prototype.inspect=function(){return this.isInfinity()?"":""},ce.prototype.isInfinity=function(){return this.z.cmpn(0)===0},ce.prototype.dbl=function(){var C=this.x.redAdd(this.z),L=C.redSqr(),A=this.x.redSub(this.z),R=A.redSqr(),B=L.redSub(R),U=L.redMul(R),P=B.redMul(R.redAdd(this.curve.a24.redMul(B)));return this.curve.point(U,P)},ce.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},ce.prototype.diffAdd=function(C,L){var A=this.x.redAdd(this.z),R=this.x.redSub(this.z),B=C.x.redAdd(C.z),U=C.x.redSub(C.z),P=U.redMul(A),F=B.redMul(R),J=L.z.redMul(P.redAdd(F).redSqr()),Se=L.x.redMul(P.redISub(F).redSqr());return this.curve.point(J,Se)},ce.prototype.mul=function(C){for(var L=C.clone(),A=this,R=this.curve.point(null,null),B=this,U=[];L.cmpn(0)!==0;L.iushrn(1))U.push(L.andln(1));for(var P=U.length-1;P>=0;P--)U[P]===0?(A=A.diffAdd(R,B),R=R.dbl()):(R=A.diffAdd(R,B),A=A.dbl());return R},ce.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},ce.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},ce.prototype.eq=function(C){return this.getX().cmp(C.getX())===0},ce.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},ce.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},36343:(gt,ee,Ie)=>{"use strict";var pe=Ie(17316),Be=Ie(54619),de=Ie(91193),Ae=Ie(56200),w=pe.assert;function ce(L){Ae.call(this,"short",L),this.a=new Be(L.a,16).toRed(this.red),this.b=new Be(L.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=this.a.fromRed().cmpn(0)===0,this.threeA=this.a.fromRed().sub(this.p).cmpn(-3)===0,this.endo=this._getEndomorphism(L),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}de(ce,Ae),gt.exports=ce,ce.prototype._getEndomorphism=function(A){if(!(!this.zeroA||!this.g||!this.n||this.p.modn(3)!==1)){var R,B;if(A.beta)R=new Be(A.beta,16).toRed(this.red);else{var U=this._getEndoRoots(this.p);R=U[0].cmp(U[1])<0?U[0]:U[1],R=R.toRed(this.red)}if(A.lambda)B=new Be(A.lambda,16);else{var P=this._getEndoRoots(this.n);this.g.mul(P[0]).x.cmp(this.g.x.redMul(R))===0?B=P[0]:(B=P[1],w(this.g.mul(B).x.cmp(this.g.x.redMul(R))===0))}var F;return A.basis?F=A.basis.map(function(J){return{a:new Be(J.a,16),b:new Be(J.b,16)}}):F=this._getEndoBasis(B),{beta:R,lambda:B,basis:F}}},ce.prototype._getEndoRoots=function(A){var R=A===this.p?this.red:Be.mont(A),B=new Be(2).toRed(R).redInvm(),U=B.redNeg(),P=new Be(3).toRed(R).redNeg().redSqrt().redMul(B),F=U.redAdd(P).fromRed(),J=U.redSub(P).fromRed();return[F,J]},ce.prototype._getEndoBasis=function(A){for(var R=this.n.ushrn(Math.floor(this.n.bitLength()/2)),B=A,U=this.n.clone(),P=new Be(1),F=new Be(0),J=new Be(0),Se=new Be(1),Pe,ie,W,H,re,V,ke,Ce=0,we,D;B.cmpn(0)!==0;){var p=U.div(B);we=U.sub(p.mul(B)),D=J.sub(p.mul(P));var m=Se.sub(p.mul(F));if(!W&&we.cmp(R)<0)Pe=ke.neg(),ie=P,W=we.neg(),H=D;else if(W&&++Ce===2)break;ke=we,U=B,B=we,J=P,P=D,Se=F,F=m}re=we.neg(),V=D;var b=W.sqr().add(H.sqr()),u=re.sqr().add(V.sqr());return u.cmp(b)>=0&&(re=Pe,V=ie),W.negative&&(W=W.neg(),H=H.neg()),re.negative&&(re=re.neg(),V=V.neg()),[{a:W,b:H},{a:re,b:V}]},ce.prototype._endoSplit=function(A){var R=this.endo.basis,B=R[0],U=R[1],P=U.b.mul(A).divRound(this.n),F=B.b.neg().mul(A).divRound(this.n),J=P.mul(B.a),Se=F.mul(U.a),Pe=P.mul(B.b),ie=F.mul(U.b),W=A.sub(J).sub(Se),H=Pe.add(ie).neg();return{k1:W,k2:H}},ce.prototype.pointFromX=function(A,R){A=new Be(A,16),A.red||(A=A.toRed(this.red));var B=A.redSqr().redMul(A).redIAdd(A.redMul(this.a)).redIAdd(this.b),U=B.redSqrt();if(U.redSqr().redSub(B).cmp(this.zero)!==0)throw new Error("invalid point");var P=U.fromRed().isOdd();return(R&&!P||!R&&P)&&(U=U.redNeg()),this.point(A,U)},ce.prototype.validate=function(A){if(A.inf)return!0;var R=A.x,B=A.y,U=this.a.redMul(R),P=R.redSqr().redMul(R).redIAdd(U).redIAdd(this.b);return B.redSqr().redISub(P).cmpn(0)===0},ce.prototype._endoWnafMulAdd=function(A,R,B){for(var U=this._endoWnafT1,P=this._endoWnafT2,F=0;F":""},z.prototype.isInfinity=function(){return this.inf},z.prototype.add=function(A){if(this.inf)return A;if(A.inf)return this;if(this.eq(A))return this.dbl();if(this.neg().eq(A))return this.curve.point(null,null);if(this.x.cmp(A.x)===0)return this.curve.point(null,null);var R=this.y.redSub(A.y);R.cmpn(0)!==0&&(R=R.redMul(this.x.redSub(A.x).redInvm()));var B=R.redSqr().redISub(this.x).redISub(A.x),U=R.redMul(this.x.redSub(B)).redISub(this.y);return this.curve.point(B,U)},z.prototype.dbl=function(){if(this.inf)return this;var A=this.y.redAdd(this.y);if(A.cmpn(0)===0)return this.curve.point(null,null);var R=this.curve.a,B=this.x.redSqr(),U=A.redInvm(),P=B.redAdd(B).redIAdd(B).redIAdd(R).redMul(U),F=P.redSqr().redISub(this.x.redAdd(this.x)),J=P.redMul(this.x.redSub(F)).redISub(this.y);return this.curve.point(F,J)},z.prototype.getX=function(){return this.x.fromRed()},z.prototype.getY=function(){return this.y.fromRed()},z.prototype.mul=function(A){return A=new Be(A,16),this.isInfinity()?this:this._hasDoubles(A)?this.curve._fixedNafMul(this,A):this.curve.endo?this.curve._endoWnafMulAdd([this],[A]):this.curve._wnafMul(this,A)},z.prototype.mulAdd=function(A,R,B){var U=[this,R],P=[A,B];return this.curve.endo?this.curve._endoWnafMulAdd(U,P):this.curve._wnafMulAdd(1,U,P,2)},z.prototype.jmulAdd=function(A,R,B){var U=[this,R],P=[A,B];return this.curve.endo?this.curve._endoWnafMulAdd(U,P,!0):this.curve._wnafMulAdd(1,U,P,2,!0)},z.prototype.eq=function(A){return this===A||this.inf===A.inf&&(this.inf||this.x.cmp(A.x)===0&&this.y.cmp(A.y)===0)},z.prototype.neg=function(A){if(this.inf)return this;var R=this.curve.point(this.x,this.y.redNeg());if(A&&this.precomputed){var B=this.precomputed,U=function(P){return P.neg()};R.precomputed={naf:B.naf&&{wnd:B.naf.wnd,points:B.naf.points.map(U)},doubles:B.doubles&&{step:B.doubles.step,points:B.doubles.points.map(U)}}}return R},z.prototype.toJ=function(){if(this.inf)return this.curve.jpoint(null,null,null);var A=this.curve.jpoint(this.x,this.y,this.curve.one);return A};function C(L,A,R,B){Ae.BasePoint.call(this,L,"jacobian"),A===null&&R===null&&B===null?(this.x=this.curve.one,this.y=this.curve.one,this.z=new Be(0)):(this.x=new Be(A,16),this.y=new Be(R,16),this.z=new Be(B,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}de(C,Ae.BasePoint),ce.prototype.jpoint=function(A,R,B){return new C(this,A,R,B)},C.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var A=this.z.redInvm(),R=A.redSqr(),B=this.x.redMul(R),U=this.y.redMul(R).redMul(A);return this.curve.point(B,U)},C.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},C.prototype.add=function(A){if(this.isInfinity())return A;if(A.isInfinity())return this;var R=A.z.redSqr(),B=this.z.redSqr(),U=this.x.redMul(R),P=A.x.redMul(B),F=this.y.redMul(R.redMul(A.z)),J=A.y.redMul(B.redMul(this.z)),Se=U.redSub(P),Pe=F.redSub(J);if(Se.cmpn(0)===0)return Pe.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var ie=Se.redSqr(),W=ie.redMul(Se),H=U.redMul(ie),re=Pe.redSqr().redIAdd(W).redISub(H).redISub(H),V=Pe.redMul(H.redISub(re)).redISub(F.redMul(W)),ke=this.z.redMul(A.z).redMul(Se);return this.curve.jpoint(re,V,ke)},C.prototype.mixedAdd=function(A){if(this.isInfinity())return A.toJ();if(A.isInfinity())return this;var R=this.z.redSqr(),B=this.x,U=A.x.redMul(R),P=this.y,F=A.y.redMul(R).redMul(this.z),J=B.redSub(U),Se=P.redSub(F);if(J.cmpn(0)===0)return Se.cmpn(0)!==0?this.curve.jpoint(null,null,null):this.dbl();var Pe=J.redSqr(),ie=Pe.redMul(J),W=B.redMul(Pe),H=Se.redSqr().redIAdd(ie).redISub(W).redISub(W),re=Se.redMul(W.redISub(H)).redISub(P.redMul(ie)),V=this.z.redMul(J);return this.curve.jpoint(H,re,V)},C.prototype.dblp=function(A){if(A===0)return this;if(this.isInfinity())return this;if(!A)return this.dbl();var R;if(this.curve.zeroA||this.curve.threeA){var B=this;for(R=0;R=0)return!1;if(B.redIAdd(P),this.x.cmp(B)===0)return!0}},C.prototype.inspect=function(){return this.isInfinity()?"":""},C.prototype.isInfinity=function(){return this.z.cmpn(0)===0}},83189:(gt,ee,Ie)=>{"use strict";var pe=ee,Be=Ie(61631),de=Ie(81869),Ae=Ie(17316),w=Ae.assert;function ce(L){L.type==="short"?this.curve=new de.short(L):L.type==="edwards"?this.curve=new de.edwards(L):this.curve=new de.mont(L),this.g=this.curve.g,this.n=this.curve.n,this.hash=L.hash,w(this.g.validate(),"Invalid curve"),w(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}pe.PresetCurve=ce;function z(L,A){Object.defineProperty(pe,L,{configurable:!0,enumerable:!0,get:function(){var R=new ce(A);return Object.defineProperty(pe,L,{configurable:!0,enumerable:!0,value:R}),R}})}z("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:Be.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),z("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:Be.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),z("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:Be.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),z("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:Be.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),z("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:Be.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),z("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:Be.sha256,gRed:!1,g:["9"]}),z("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:Be.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});var C;try{C=Ie(74796)}catch{C=void 0}z("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:Be.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",C]})},17566:(gt,ee,Ie)=>{"use strict";var pe=Ie(54619),Be=Ie(52519),de=Ie(17316),Ae=Ie(83189),w=Ie(65442),ce=de.assert,z=Ie(96073),C=Ie(89136);function L(A){if(!(this instanceof L))return new L(A);typeof A=="string"&&(ce(Object.prototype.hasOwnProperty.call(Ae,A),"Unknown curve "+A),A=Ae[A]),A instanceof Ae.PresetCurve&&(A={curve:A}),this.curve=A.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=A.curve.g,this.g.precompute(A.curve.n.bitLength()+1),this.hash=A.hash||A.curve.hash}gt.exports=L,L.prototype.keyPair=function(R){return new z(this,R)},L.prototype.keyFromPrivate=function(R,B){return z.fromPrivate(this,R,B)},L.prototype.keyFromPublic=function(R,B){return z.fromPublic(this,R,B)},L.prototype.genKeyPair=function(R){R||(R={});for(var B=new Be({hash:this.hash,pers:R.pers,persEnc:R.persEnc||"utf8",entropy:R.entropy||w(this.hash.hmacStrength),entropyEnc:R.entropy&&R.entropyEnc||"utf8",nonce:this.n.toArray()}),U=this.n.byteLength(),P=this.n.sub(new pe(2));;){var F=new pe(B.generate(U));if(!(F.cmp(P)>0))return F.iaddn(1),this.keyFromPrivate(F)}},L.prototype._truncateToN=function(R,B){var U=R.byteLength()*8-this.n.bitLength();return U>0&&(R=R.ushrn(U)),!B&&R.cmp(this.n)>=0?R.sub(this.n):R},L.prototype.sign=function(R,B,U,P){typeof U=="object"&&(P=U,U=null),P||(P={}),B=this.keyFromPrivate(B,U),R=this._truncateToN(new pe(R,16));for(var F=this.n.byteLength(),J=B.getPrivate().toArray("be",F),Se=R.toArray("be",F),Pe=new Be({hash:this.hash,entropy:J,nonce:Se,pers:P.pers,persEnc:P.persEnc||"utf8"}),ie=this.n.sub(new pe(1)),W=0;;W++){var H=P.k?P.k(W):new pe(Pe.generate(this.n.byteLength()));if(H=this._truncateToN(H,!0),!(H.cmpn(1)<=0||H.cmp(ie)>=0)){var re=this.g.mul(H);if(!re.isInfinity()){var V=re.getX(),ke=V.umod(this.n);if(ke.cmpn(0)!==0){var Ce=H.invm(this.n).mul(ke.mul(B.getPrivate()).iadd(R));if(Ce=Ce.umod(this.n),Ce.cmpn(0)!==0){var we=(re.getY().isOdd()?1:0)|(V.cmp(ke)!==0?2:0);return P.canonical&&Ce.cmp(this.nh)>0&&(Ce=this.n.sub(Ce),we^=1),new C({r:ke,s:Ce,recoveryParam:we})}}}}}},L.prototype.verify=function(R,B,U,P){R=this._truncateToN(new pe(R,16)),U=this.keyFromPublic(U,P),B=new C(B,"hex");var F=B.r,J=B.s;if(F.cmpn(1)<0||F.cmp(this.n)>=0||J.cmpn(1)<0||J.cmp(this.n)>=0)return!1;var Se=J.invm(this.n),Pe=Se.mul(R).umod(this.n),ie=Se.mul(F).umod(this.n),W;return this.curve._maxwellTrick?(W=this.g.jmulAdd(Pe,U.getPublic(),ie),W.isInfinity()?!1:W.eqXToP(F)):(W=this.g.mulAdd(Pe,U.getPublic(),ie),W.isInfinity()?!1:W.getX().umod(this.n).cmp(F)===0)},L.prototype.recoverPubKey=function(A,R,B,U){ce((3&B)===B,"The recovery param is more than two bits"),R=new C(R,U);var P=this.n,F=new pe(A),J=R.r,Se=R.s,Pe=B&1,ie=B>>1;if(J.cmp(this.curve.p.umod(this.curve.n))>=0&&ie)throw new Error("Unable to find sencond key candinate");ie?J=this.curve.pointFromX(J.add(this.curve.n),Pe):J=this.curve.pointFromX(J,Pe);var W=R.r.invm(P),H=P.sub(F).mul(W).umod(P),re=Se.mul(W).umod(P);return this.g.mulAdd(H,J,re)},L.prototype.getKeyRecoveryParam=function(A,R,B,U){if(R=new C(R,U),R.recoveryParam!==null)return R.recoveryParam;for(var P=0;P<4;P++){var F;try{F=this.recoverPubKey(A,R,P)}catch{continue}if(F.eq(B))return P}throw new Error("Unable to find valid recovery factor")}},96073:(gt,ee,Ie)=>{"use strict";var pe=Ie(54619),Be=Ie(17316),de=Be.assert;function Ae(w,ce){this.ec=w,this.priv=null,this.pub=null,ce.priv&&this._importPrivate(ce.priv,ce.privEnc),ce.pub&&this._importPublic(ce.pub,ce.pubEnc)}gt.exports=Ae,Ae.fromPublic=function(ce,z,C){return z instanceof Ae?z:new Ae(ce,{pub:z,pubEnc:C})},Ae.fromPrivate=function(ce,z,C){return z instanceof Ae?z:new Ae(ce,{priv:z,privEnc:C})},Ae.prototype.validate=function(){var ce=this.getPublic();return ce.isInfinity()?{result:!1,reason:"Invalid public key"}:ce.validate()?ce.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},Ae.prototype.getPublic=function(ce,z){return typeof ce=="string"&&(z=ce,ce=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),z?this.pub.encode(z,ce):this.pub},Ae.prototype.getPrivate=function(ce){return ce==="hex"?this.priv.toString(16,2):this.priv},Ae.prototype._importPrivate=function(ce,z){this.priv=new pe(ce,z||16),this.priv=this.priv.umod(this.ec.curve.n)},Ae.prototype._importPublic=function(ce,z){if(ce.x||ce.y){this.ec.curve.type==="mont"?de(ce.x,"Need x coordinate"):(this.ec.curve.type==="short"||this.ec.curve.type==="edwards")&&de(ce.x&&ce.y,"Need both x and y coordinate"),this.pub=this.ec.curve.point(ce.x,ce.y);return}this.pub=this.ec.curve.decodePoint(ce,z)},Ae.prototype.derive=function(ce){return ce.validate()||de(ce.validate(),"public point not validated"),ce.mul(this.priv).getX()},Ae.prototype.sign=function(ce,z,C){return this.ec.sign(ce,this,z,C)},Ae.prototype.verify=function(ce,z){return this.ec.verify(ce,z,this)},Ae.prototype.inspect=function(){return""}},89136:(gt,ee,Ie)=>{"use strict";var pe=Ie(54619),Be=Ie(17316),de=Be.assert;function Ae(L,A){if(L instanceof Ae)return L;this._importDER(L,A)||(de(L.r&&L.s,"Signature without r or s"),this.r=new pe(L.r,16),this.s=new pe(L.s,16),L.recoveryParam===void 0?this.recoveryParam=null:this.recoveryParam=L.recoveryParam)}gt.exports=Ae;function w(){this.place=0}function ce(L,A){var R=L[A.place++];if(!(R&128))return R;var B=R&15;if(B===0||B>4||L[A.place]===0)return!1;for(var U=0,P=0,F=A.place;P>>=0;return U<=127?!1:(A.place=F,U)}function z(L){for(var A=0,R=L.length-1;!L[A]&&!(L[A+1]&128)&&A>>3);for(L.push(R|128);--R;)L.push(A>>>(R<<3)&255);L.push(A)}Ae.prototype.toDER=function(A){var R=this.r.toArray(),B=this.s.toArray();for(R[0]&128&&(R=[0].concat(R)),B[0]&128&&(B=[0].concat(B)),R=z(R),B=z(B);!B[0]&&!(B[1]&128);)B=B.slice(1);var U=[2];C(U,R.length),U=U.concat(R),U.push(2),C(U,B.length);var P=U.concat(B),F=[48];return C(F,P.length),F=F.concat(P),Be.encode(F,A)}},13609:(gt,ee,Ie)=>{"use strict";var pe=Ie(61631),Be=Ie(83189),de=Ie(17316),Ae=de.assert,w=de.parseBytes,ce=Ie(13594),z=Ie(33871);function C(L){if(Ae(L==="ed25519","only tested with ed25519 so far"),!(this instanceof C))return new C(L);L=Be[L].curve,this.curve=L,this.g=L.g,this.g.precompute(L.n.bitLength()+1),this.pointClass=L.point().constructor,this.encodingLength=Math.ceil(L.n.bitLength()/8),this.hash=pe.sha512}gt.exports=C,C.prototype.sign=function(A,R){A=w(A);var B=this.keyFromSecret(R),U=this.hashInt(B.messagePrefix(),A),P=this.g.mul(U),F=this.encodePoint(P),J=this.hashInt(F,B.pubBytes(),A).mul(B.priv()),Se=U.add(J).umod(this.curve.n);return this.makeSignature({R:P,S:Se,Rencoded:F})},C.prototype.verify=function(A,R,B){if(A=w(A),R=this.makeSignature(R),R.S().gte(R.eddsa.curve.n)||R.S().isNeg())return!1;var U=this.keyFromPublic(B),P=this.hashInt(R.Rencoded(),U.pubBytes(),A),F=this.g.mul(R.S()),J=R.R().add(U.pub().mul(P));return J.eq(F)},C.prototype.hashInt=function(){for(var A=this.hash(),R=0;R{"use strict";var pe=Ie(17316),Be=pe.assert,de=pe.parseBytes,Ae=pe.cachedProperty;function w(ce,z){this.eddsa=ce,this._secret=de(z.secret),ce.isPoint(z.pub)?this._pub=z.pub:this._pubBytes=de(z.pub)}w.fromPublic=function(z,C){return C instanceof w?C:new w(z,{pub:C})},w.fromSecret=function(z,C){return C instanceof w?C:new w(z,{secret:C})},w.prototype.secret=function(){return this._secret},Ae(w,"pubBytes",function(){return this.eddsa.encodePoint(this.pub())}),Ae(w,"pub",function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())}),Ae(w,"privBytes",function(){var z=this.eddsa,C=this.hash(),L=z.encodingLength-1,A=C.slice(0,z.encodingLength);return A[0]&=248,A[L]&=127,A[L]|=64,A}),Ae(w,"priv",function(){return this.eddsa.decodeInt(this.privBytes())}),Ae(w,"hash",function(){return this.eddsa.hash().update(this.secret()).digest()}),Ae(w,"messagePrefix",function(){return this.hash().slice(this.eddsa.encodingLength)}),w.prototype.sign=function(z){return Be(this._secret,"KeyPair can only verify"),this.eddsa.sign(z,this)},w.prototype.verify=function(z,C){return this.eddsa.verify(z,C,this)},w.prototype.getSecret=function(z){return Be(this._secret,"KeyPair is public only"),pe.encode(this.secret(),z)},w.prototype.getPublic=function(z){return pe.encode(this.pubBytes(),z)},gt.exports=w},33871:(gt,ee,Ie)=>{"use strict";var pe=Ie(54619),Be=Ie(17316),de=Be.assert,Ae=Be.cachedProperty,w=Be.parseBytes;function ce(z,C){this.eddsa=z,typeof C!="object"&&(C=w(C)),Array.isArray(C)&&(de(C.length===z.encodingLength*2,"Signature has invalid size"),C={R:C.slice(0,z.encodingLength),S:C.slice(z.encodingLength)}),de(C.R&&C.S,"Signature without R or S"),z.isPoint(C.R)&&(this._R=C.R),C.S instanceof pe&&(this._S=C.S),this._Rencoded=Array.isArray(C.R)?C.R:C.Rencoded,this._Sencoded=Array.isArray(C.S)?C.S:C.Sencoded}Ae(ce,"S",function(){return this.eddsa.decodeInt(this.Sencoded())}),Ae(ce,"R",function(){return this.eddsa.decodePoint(this.Rencoded())}),Ae(ce,"Rencoded",function(){return this.eddsa.encodePoint(this.R())}),Ae(ce,"Sencoded",function(){return this.eddsa.encodeInt(this.S())}),ce.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},ce.prototype.toHex=function(){return Be.encode(this.toBytes(),"hex").toUpperCase()},gt.exports=ce},74796:gt=>{gt.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},17316:(gt,ee,Ie)=>{"use strict";var pe=ee,Be=Ie(54619),de=Ie(35578),Ae=Ie(94209);pe.assert=de,pe.toArray=Ae.toArray,pe.zero2=Ae.zero2,pe.toHex=Ae.toHex,pe.encode=Ae.encode;function w(A,R,B){var U=new Array(Math.max(A.bitLength(),B)+1),P;for(P=0;P(F>>1)-1?Se=(F>>1)-Pe:Se=Pe,J.isubn(Se)):Se=0,U[P]=Se,J.iushrn(1)}return U}pe.getNAF=w;function ce(A,R){var B=[[],[]];A=A.clone(),R=R.clone();for(var U=0,P=0,F;A.cmpn(-U)>0||R.cmpn(-P)>0;){var J=A.andln(3)+U&3,Se=R.andln(3)+P&3;J===3&&(J=-1),Se===3&&(Se=-1);var Pe;J&1?(F=A.andln(7)+U&7,(F===3||F===5)&&Se===2?Pe=-J:Pe=J):Pe=0,B[0].push(Pe);var ie;Se&1?(F=R.andln(7)+P&7,(F===3||F===5)&&J===2?ie=-Se:ie=Se):ie=0,B[1].push(ie),2*U===Pe+1&&(U=1-U),2*P===ie+1&&(P=1-P),A.iushrn(1),R.iushrn(1)}return B}pe.getJSF=ce;function z(A,R,B){var U="_"+R;A.prototype[R]=function(){return this[U]!==void 0?this[U]:this[U]=B.call(this)}}pe.cachedProperty=z;function C(A){return typeof A=="string"?pe.toArray(A,"hex"):A}pe.parseBytes=C;function L(A){return new Be(A,"hex","le")}pe.intFromLE=L},49935:(gt,ee,Ie)=>{"use strict";var pe;pe={value:!0},pe=pe=ee.So=pe=void 0;const Be=Ie(6896),de=Ie(73460);pe=(0,de.wrapHash)(Be.keccak_224),ee.So=(()=>{const Ae=(0,de.wrapHash)(Be.keccak_256);return Ae.create=Be.keccak_256.create,Ae})(),pe=(0,de.wrapHash)(Be.keccak_384),pe=(0,de.wrapHash)(Be.keccak_512)},73460:function(gt,ee,Ie){"use strict";gt=Ie.nmd(gt);var pe=this&&this.__importDefault||function(R){return R&&R.__esModule?R:{default:R}};Object.defineProperty(ee,"__esModule",{value:!0}),ee.crypto=ee.wrapHash=ee.equalsBytes=ee.hexToBytes=ee.bytesToUtf8=ee.utf8ToBytes=ee.createView=ee.concatBytes=ee.toHex=ee.bytesToHex=ee.assertBytes=ee.assertBool=void 0;const Be=pe(Ie(74684)),de=Ie(73554),Ae=Be.default.bool;ee.assertBool=Ae;const w=Be.default.bytes;ee.assertBytes=w;var ce=Ie(73554);Object.defineProperty(ee,"bytesToHex",{enumerable:!0,get:function(){return ce.bytesToHex}}),Object.defineProperty(ee,"toHex",{enumerable:!0,get:function(){return ce.bytesToHex}}),Object.defineProperty(ee,"concatBytes",{enumerable:!0,get:function(){return ce.concatBytes}}),Object.defineProperty(ee,"createView",{enumerable:!0,get:function(){return ce.createView}}),Object.defineProperty(ee,"utf8ToBytes",{enumerable:!0,get:function(){return ce.utf8ToBytes}});function z(R){if(!(R instanceof Uint8Array))throw new TypeError(`bytesToUtf8 expected Uint8Array, got ${typeof R}`);return new TextDecoder().decode(R)}ee.bytesToUtf8=z;function C(R){const B=R.startsWith("0x")?R.substring(2):R;return(0,de.hexToBytes)(B)}ee.hexToBytes=C;function L(R,B){if(R.length!==B.length)return!1;for(let U=0;U(Be.default.bytes(B),R(B))}ee.wrapHash=A,ee.crypto=(()=>{const R=typeof self=="object"&&"crypto"in self?self.crypto:void 0,B=typeof gt.require=="function"&>.require.bind(gt);return{node:B&&!R?B("crypto"):void 0,web:R}})()},61631:(gt,ee,Ie)=>{var pe=ee;pe.utils=Ie(27905),pe.common=Ie(14427),pe.sha=Ie(61822),pe.ripemd=Ie(47317),pe.hmac=Ie(67309),pe.sha1=pe.sha.sha1,pe.sha256=pe.sha.sha256,pe.sha224=pe.sha.sha224,pe.sha384=pe.sha.sha384,pe.sha512=pe.sha.sha512,pe.ripemd160=pe.ripemd.ripemd160},14427:(gt,ee,Ie)=>{"use strict";var pe=Ie(27905),Be=Ie(35578);function de(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}ee.BlockHash=de,de.prototype.update=function(w,ce){if(w=pe.toArray(w,ce),this.pending?this.pending=this.pending.concat(w):this.pending=w,this.pendingTotal+=w.length,this.pending.length>=this._delta8){w=this.pending;var z=w.length%this._delta8;this.pending=w.slice(w.length-z,w.length),this.pending.length===0&&(this.pending=null),w=pe.join32(w,0,w.length-z,this.endian);for(var C=0;C>>24&255,C[L++]=w>>>16&255,C[L++]=w>>>8&255,C[L++]=w&255}else for(C[L++]=w&255,C[L++]=w>>>8&255,C[L++]=w>>>16&255,C[L++]=w>>>24&255,C[L++]=0,C[L++]=0,C[L++]=0,C[L++]=0,A=8;A{"use strict";var pe=Ie(27905),Be=Ie(35578);function de(Ae,w,ce){if(!(this instanceof de))return new de(Ae,w,ce);this.Hash=Ae,this.blockSize=Ae.blockSize/8,this.outSize=Ae.outSize/8,this.inner=null,this.outer=null,this._init(pe.toArray(w,ce))}gt.exports=de,de.prototype._init=function(w){w.length>this.blockSize&&(w=new this.Hash().update(w).digest()),Be(w.length<=this.blockSize);for(var ce=w.length;ce{"use strict";var pe=Ie(27905),Be=Ie(14427),de=pe.rotl32,Ae=pe.sum32,w=pe.sum32_3,ce=pe.sum32_4,z=Be.BlockHash;function C(){if(!(this instanceof C))return new C;z.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}pe.inherits(C,z),ee.ripemd160=C,C.blockSize=512,C.outSize=160,C.hmacStrength=192,C.padLength=64,C.prototype._update=function(Se,Pe){for(var ie=this.h[0],W=this.h[1],H=this.h[2],re=this.h[3],V=this.h[4],ke=ie,Ce=W,we=H,D=re,p=V,m=0;m<80;m++){var b=Ae(de(ce(ie,L(m,W,H,re),Se[B[m]+Pe],A(m)),P[m]),V);ie=V,V=re,re=de(H,10),H=W,W=b,b=Ae(de(ce(ke,L(79-m,Ce,we,D),Se[U[m]+Pe],R(m)),F[m]),p),ke=p,p=D,D=de(we,10),we=Ce,Ce=b}b=w(this.h[1],H,D),this.h[1]=w(this.h[2],re,p),this.h[2]=w(this.h[3],V,ke),this.h[3]=w(this.h[4],ie,Ce),this.h[4]=w(this.h[0],W,we),this.h[0]=b},C.prototype._digest=function(Se){return Se==="hex"?pe.toHex32(this.h,"little"):pe.split32(this.h,"little")};function L(J,Se,Pe,ie){return J<=15?Se^Pe^ie:J<=31?Se&Pe|~Se&ie:J<=47?(Se|~Pe)^ie:J<=63?Se&ie|Pe&~ie:Se^(Pe|~ie)}function A(J){return J<=15?0:J<=31?1518500249:J<=47?1859775393:J<=63?2400959708:2840853838}function R(J){return J<=15?1352829926:J<=31?1548603684:J<=47?1836072691:J<=63?2053994217:0}var B=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],U=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],P=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],F=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},61822:(gt,ee,Ie)=>{"use strict";ee.sha1=Ie(12750),ee.sha224=Ie(37485),ee.sha256=Ie(77292),ee.sha384=Ie(40696),ee.sha512=Ie(58889)},12750:(gt,ee,Ie)=>{"use strict";var pe=Ie(27905),Be=Ie(14427),de=Ie(45660),Ae=pe.rotl32,w=pe.sum32,ce=pe.sum32_5,z=de.ft_1,C=Be.BlockHash,L=[1518500249,1859775393,2400959708,3395469782];function A(){if(!(this instanceof A))return new A;C.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}pe.inherits(A,C),gt.exports=A,A.blockSize=512,A.outSize=160,A.hmacStrength=80,A.padLength=64,A.prototype._update=function(B,U){for(var P=this.W,F=0;F<16;F++)P[F]=B[U+F];for(;F{"use strict";var pe=Ie(27905),Be=Ie(77292);function de(){if(!(this instanceof de))return new de;Be.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}pe.inherits(de,Be),gt.exports=de,de.blockSize=512,de.outSize=224,de.hmacStrength=192,de.padLength=64,de.prototype._digest=function(w){return w==="hex"?pe.toHex32(this.h.slice(0,7),"big"):pe.split32(this.h.slice(0,7),"big")}},77292:(gt,ee,Ie)=>{"use strict";var pe=Ie(27905),Be=Ie(14427),de=Ie(45660),Ae=Ie(35578),w=pe.sum32,ce=pe.sum32_4,z=pe.sum32_5,C=de.ch32,L=de.maj32,A=de.s0_256,R=de.s1_256,B=de.g0_256,U=de.g1_256,P=Be.BlockHash,F=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function J(){if(!(this instanceof J))return new J;P.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=F,this.W=new Array(64)}pe.inherits(J,P),gt.exports=J,J.blockSize=512,J.outSize=256,J.hmacStrength=192,J.padLength=64,J.prototype._update=function(Pe,ie){for(var W=this.W,H=0;H<16;H++)W[H]=Pe[ie+H];for(;H{"use strict";var pe=Ie(27905),Be=Ie(58889);function de(){if(!(this instanceof de))return new de;Be.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}pe.inherits(de,Be),gt.exports=de,de.blockSize=1024,de.outSize=384,de.hmacStrength=192,de.padLength=128,de.prototype._digest=function(w){return w==="hex"?pe.toHex32(this.h.slice(0,12),"big"):pe.split32(this.h.slice(0,12),"big")}},58889:(gt,ee,Ie)=>{"use strict";var pe=Ie(27905),Be=Ie(14427),de=Ie(35578),Ae=pe.rotr64_hi,w=pe.rotr64_lo,ce=pe.shr64_hi,z=pe.shr64_lo,C=pe.sum64,L=pe.sum64_hi,A=pe.sum64_lo,R=pe.sum64_4_hi,B=pe.sum64_4_lo,U=pe.sum64_5_hi,P=pe.sum64_5_lo,F=Be.BlockHash,J=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function Se(){if(!(this instanceof Se))return new Se;F.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=J,this.W=new Array(160)}pe.inherits(Se,F),gt.exports=Se,Se.blockSize=1024,Se.outSize=512,Se.hmacStrength=192,Se.padLength=128,Se.prototype._prepareBlock=function(u,h){for(var v=this.W,T=0;T<32;T++)v[T]=u[h+T];for(;T{"use strict";var pe=Ie(27905),Be=pe.rotr32;function de(R,B,U,P){if(R===0)return Ae(B,U,P);if(R===1||R===3)return ce(B,U,P);if(R===2)return w(B,U,P)}ee.ft_1=de;function Ae(R,B,U){return R&B^~R&U}ee.ch32=Ae;function w(R,B,U){return R&B^R&U^B&U}ee.maj32=w;function ce(R,B,U){return R^B^U}ee.p32=ce;function z(R){return Be(R,2)^Be(R,13)^Be(R,22)}ee.s0_256=z;function C(R){return Be(R,6)^Be(R,11)^Be(R,25)}ee.s1_256=C;function L(R){return Be(R,7)^Be(R,18)^R>>>3}ee.g0_256=L;function A(R){return Be(R,17)^Be(R,19)^R>>>10}ee.g1_256=A},27905:(gt,ee,Ie)=>{"use strict";var pe=Ie(35578),Be=Ie(91193);ee.inherits=Be;function de(m,b){return(m.charCodeAt(b)&64512)!==55296||b<0||b+1>=m.length?!1:(m.charCodeAt(b+1)&64512)===56320}function Ae(m,b){if(Array.isArray(m))return m.slice();if(!m)return[];var u=[];if(typeof m=="string")if(b){if(b==="hex")for(m=m.replace(/[^a-z0-9]+/ig,""),m.length%2!==0&&(m="0"+m),v=0;v>6|192,u[h++]=T&63|128):de(m,v)?(T=65536+((T&1023)<<10)+(m.charCodeAt(++v)&1023),u[h++]=T>>18|240,u[h++]=T>>12&63|128,u[h++]=T>>6&63|128,u[h++]=T&63|128):(u[h++]=T>>12|224,u[h++]=T>>6&63|128,u[h++]=T&63|128)}else for(v=0;v>>24|m>>>8&65280|m<<8&16711680|(m&255)<<24;return b>>>0}ee.htonl=ce;function z(m,b){for(var u="",h=0;h>>0}return T}ee.join32=A;function R(m,b){for(var u=new Array(m.length*4),h=0,v=0;h>>24,u[v+1]=T>>>16&255,u[v+2]=T>>>8&255,u[v+3]=T&255):(u[v+3]=T>>>24,u[v+2]=T>>>16&255,u[v+1]=T>>>8&255,u[v]=T&255)}return u}ee.split32=R;function B(m,b){return m>>>b|m<<32-b}ee.rotr32=B;function U(m,b){return m<>>32-b}ee.rotl32=U;function P(m,b){return m+b>>>0}ee.sum32=P;function F(m,b,u){return m+b+u>>>0}ee.sum32_3=F;function J(m,b,u,h){return m+b+u+h>>>0}ee.sum32_4=J;function Se(m,b,u,h,v){return m+b+u+h+v>>>0}ee.sum32_5=Se;function Pe(m,b,u,h){var v=m[b],T=m[b+1],E=h+T>>>0,g=(E>>0,m[b+1]=E}ee.sum64=Pe;function ie(m,b,u,h){var v=b+h>>>0,T=(v>>0}ee.sum64_hi=ie;function W(m,b,u,h){var v=b+h;return v>>>0}ee.sum64_lo=W;function H(m,b,u,h,v,T,E,g){var S=0,q=b;q=q+h>>>0,S+=q>>0,S+=q>>0,S+=q>>0}ee.sum64_4_hi=H;function re(m,b,u,h,v,T,E,g){var S=b+h+T+g;return S>>>0}ee.sum64_4_lo=re;function V(m,b,u,h,v,T,E,g,S,q){var x=0,ge=b;ge=ge+h>>>0,x+=ge>>0,x+=ge>>0,x+=ge>>0,x+=ge>>0}ee.sum64_5_hi=V;function ke(m,b,u,h,v,T,E,g,S,q){var x=b+h+T+g+q;return x>>>0}ee.sum64_5_lo=ke;function Ce(m,b,u){var h=b<<32-u|m>>>u;return h>>>0}ee.rotr64_hi=Ce;function we(m,b,u){var h=m<<32-u|b>>>u;return h>>>0}ee.rotr64_lo=we;function D(m,b,u){return m>>>u}ee.shr64_hi=D;function p(m,b,u){var h=m<<32-u|b>>>u;return h>>>0}ee.shr64_lo=p},52519:(gt,ee,Ie)=>{"use strict";var pe=Ie(61631),Be=Ie(94209),de=Ie(35578);function Ae(w){if(!(this instanceof Ae))return new Ae(w);this.hash=w.hash,this.predResist=!!w.predResist,this.outLen=this.hash.outSize,this.minEntropy=w.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var ce=Be.toArray(w.entropy,w.entropyEnc||"hex"),z=Be.toArray(w.nonce,w.nonceEnc||"hex"),C=Be.toArray(w.pers,w.persEnc||"hex");de(ce.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(ce,z,C)}gt.exports=Ae,Ae.prototype._init=function(ce,z,C){var L=ce.concat(z).concat(C);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var A=0;A=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(ce.concat(C||[])),this._reseed=1},Ae.prototype.generate=function(ce,z,C,L){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");typeof z!="string"&&(L=C,C=z,z=null),C&&(C=Be.toArray(C,L||"hex"),this._update(C));for(var A=[];A.length{/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ee.read=function(Ie,pe,Be,de,Ae){var w,ce,z=Ae*8-de-1,C=(1<>1,A=-7,R=Be?Ae-1:0,B=Be?-1:1,U=Ie[pe+R];for(R+=B,w=U&(1<<-A)-1,U>>=-A,A+=z;A>0;w=w*256+Ie[pe+R],R+=B,A-=8);for(ce=w&(1<<-A)-1,w>>=-A,A+=de;A>0;ce=ce*256+Ie[pe+R],R+=B,A-=8);if(w===0)w=1-L;else{if(w===C)return ce?NaN:(U?-1:1)*(1/0);ce=ce+Math.pow(2,de),w=w-L}return(U?-1:1)*ce*Math.pow(2,w-de)},ee.write=function(Ie,pe,Be,de,Ae,w){var ce,z,C,L=w*8-Ae-1,A=(1<>1,B=Ae===23?Math.pow(2,-24)-Math.pow(2,-77):0,U=de?0:w-1,P=de?1:-1,F=pe<0||pe===0&&1/pe<0?1:0;for(pe=Math.abs(pe),isNaN(pe)||pe===1/0?(z=isNaN(pe)?1:0,ce=A):(ce=Math.floor(Math.log(pe)/Math.LN2),pe*(C=Math.pow(2,-ce))<1&&(ce--,C*=2),ce+R>=1?pe+=B/C:pe+=B*Math.pow(2,1-R),pe*C>=2&&(ce++,C/=2),ce+R>=A?(z=0,ce=A):ce+R>=1?(z=(pe*C-1)*Math.pow(2,Ae),ce=ce+R):(z=pe*Math.pow(2,R-1)*Math.pow(2,Ae),ce=0));Ae>=8;Ie[Be+U]=z&255,U+=P,z/=256,Ae-=8);for(ce=ce<0;Ie[Be+U]=ce&255,U+=P,ce/=256,L-=8);Ie[Be+U-P]|=F*128}},91193:gt=>{typeof Object.create=="function"?gt.exports=function(Ie,pe){pe&&(Ie.super_=pe,Ie.prototype=Object.create(pe.prototype,{constructor:{value:Ie,enumerable:!1,writable:!0,configurable:!0}}))}:gt.exports=function(Ie,pe){if(pe){Ie.super_=pe;var Be=function(){};Be.prototype=pe.prototype,Ie.prototype=new Be,Ie.prototype.constructor=Ie}}},29969:(gt,ee,Ie)=>{Ie(49047),gt.exports=self.fetch.bind(self)},31943:(gt,ee,Ie)=>{var pe=Ie(47406).stringify,Be=Ie(98800);gt.exports=function(de){return{parse:Be(de),stringify:pe}},gt.exports.parse=Be(),gt.exports.stringify=pe},98800:(gt,ee,Ie)=>{var pe=null;const Be=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,de=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/;var Ae=function(w){"use strict";var ce={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(w!=null){if(w.strict===!0&&(ce.strict=!0),w.storeAsString===!0&&(ce.storeAsString=!0),ce.alwaysParseAsBig=w.alwaysParseAsBig===!0?w.alwaysParseAsBig:!1,ce.useNativeBigInt=w.useNativeBigInt===!0?w.useNativeBigInt:!1,typeof w.constructorAction<"u")if(w.constructorAction==="error"||w.constructorAction==="ignore"||w.constructorAction==="preserve")ce.constructorAction=w.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${w.constructorAction}`);if(typeof w.protoAction<"u")if(w.protoAction==="error"||w.protoAction==="ignore"||w.protoAction==="preserve")ce.protoAction=w.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${w.protoAction}`)}var z,C,L={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` +`,r:"\r",t:" "},A,R=function(W){throw{name:"SyntaxError",message:W,at:z,text:A}},B=function(W){return W&&W!==C&&R("Expected '"+W+"' instead of '"+C+"'"),C=A.charAt(z),z+=1,C},U=function(){var W,H="";for(C==="-"&&(H="-",B("-"));C>="0"&&C<="9";)H+=C,B();if(C===".")for(H+=".";B()&&C>="0"&&C<="9";)H+=C;if(C==="e"||C==="E")for(H+=C,B(),(C==="-"||C==="+")&&(H+=C,B());C>="0"&&C<="9";)H+=C,B();if(W=+H,!isFinite(W))R("Bad number");else return pe==null&&(pe=Ie(63303)),H.length>15?ce.storeAsString?H:ce.useNativeBigInt?BigInt(H):new pe(H):ce.alwaysParseAsBig?ce.useNativeBigInt?BigInt(W):new pe(W):W},P=function(){var W,H,re="",V;if(C==='"')for(var ke=z;B();){if(C==='"')return z-1>ke&&(re+=A.substring(ke,z-1)),B(),re;if(C==="\\"){if(z-1>ke&&(re+=A.substring(ke,z-1)),B(),C==="u"){for(V=0,H=0;H<4&&(W=parseInt(B(),16),!!isFinite(W));H+=1)V=V*16+W;re+=String.fromCharCode(V)}else if(typeof L[C]=="string")re+=L[C];else break;ke=z}}R("Bad string")},F=function(){for(;C&&C<=" ";)B()},J=function(){switch(C){case"t":return B("t"),B("r"),B("u"),B("e"),!0;case"f":return B("f"),B("a"),B("l"),B("s"),B("e"),!1;case"n":return B("n"),B("u"),B("l"),B("l"),null}R("Unexpected '"+C+"'")},Se,Pe=function(){var W=[];if(C==="["){if(B("["),F(),C==="]")return B("]"),W;for(;C;){if(W.push(Se()),F(),C==="]")return B("]"),W;B(","),F()}}R("Bad array")},ie=function(){var W,H=Object.create(null);if(C==="{"){if(B("{"),F(),C==="}")return B("}"),H;for(;C;){if(W=P(),F(),B(":"),ce.strict===!0&&Object.hasOwnProperty.call(H,W)&&R('Duplicate key "'+W+'"'),Be.test(W)===!0?ce.protoAction==="error"?R("Object contains forbidden prototype property"):ce.protoAction==="ignore"?Se():H[W]=Se():de.test(W)===!0?ce.constructorAction==="error"?R("Object contains forbidden constructor property"):ce.constructorAction==="ignore"?Se():H[W]=Se():H[W]=Se(),F(),C==="}")return B("}"),H;B(","),F()}}R("Bad object")};return Se=function(){switch(F(),C){case"{":return ie();case"[":return Pe();case'"':return P();case"-":return U();default:return C>="0"&&C<="9"?U():J()}},function(W,H){var re;return A=W+"",z=0,C=" ",re=Se(),F(),C&&R("Syntax error"),typeof H=="function"?function V(ke,Ce){var we,D,p=ke[Ce];return p&&typeof p=="object"&&Object.keys(p).forEach(function(m){D=V(p,m),D!==void 0?p[m]=D:delete p[m]}),H.call(ke,Ce,p)}({"":re},""):re}};gt.exports=Ae},47406:(gt,ee,Ie)=>{var pe=Ie(63303),Be=gt.exports;(function(){"use strict";function de(B){return B<10?"0"+B:B}var Ae=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,w=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,ce,z,C={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},L;function A(B){return w.lastIndex=0,w.test(B)?'"'+B.replace(w,function(U){var P=C[U];return typeof P=="string"?P:"\\u"+("0000"+U.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+B+'"'}function R(B,U){var P,F,J,Se,Pe=ce,ie,W=U[B],H=W!=null&&(W instanceof pe||pe.isBigNumber(W));switch(W&&typeof W=="object"&&typeof W.toJSON=="function"&&(W=W.toJSON(B)),typeof L=="function"&&(W=L.call(U,B,W)),typeof W){case"string":return H?W:A(W);case"number":return isFinite(W)?String(W):"null";case"boolean":case"null":case"bigint":return String(W);case"object":if(!W)return"null";if(ce+=z,ie=[],Object.prototype.toString.apply(W)==="[object Array]"){for(Se=W.length,P=0;P{gt.exports=ee;function ee(Ie,pe){if(!Ie)throw new Error(pe||"Assertion failed")}ee.equal=function(pe,Be,de){if(pe!=Be)throw new Error(de||"Assertion failed: "+pe+" != "+Be)}},94209:(gt,ee)=>{"use strict";var Ie=ee;function pe(Ae,w){if(Array.isArray(Ae))return Ae.slice();if(!Ae)return[];var ce=[];if(typeof Ae!="string"){for(var z=0;z>8,A=C&255;L?ce.push(L,A):ce.push(A)}return ce}Ie.toArray=pe;function Be(Ae){return Ae.length===1?"0"+Ae:Ae}Ie.zero2=Be;function de(Ae){for(var w="",ce=0;ce{(function(ee){var Ie;gt.exports=ee()})(function(){return function ee(Ie,pe,Be){function de(ce,z){if(!pe[ce]){if(!Ie[ce]){var C=void 0;if(!z&&C)return require(ce,!0);if(Ae)return Ae(ce,!0);throw new Error("Cannot find module '"+ce+"'")}z=pe[ce]={exports:{}},Ie[ce][0].call(z.exports,function(L){var A=Ie[ce][1][L];return de(A||L)},z,z.exports,ee,Ie,pe,Be)}return pe[ce].exports}for(var Ae=void 0,w=0;w>16),p((65280&V)>>8),p(255&V);return ke==2?p(255&(V=W(H.charAt(re))<<2|W(H.charAt(re+1))>>4)):ke==1&&(p((V=W(H.charAt(re))<<10|W(H.charAt(re+1))<<4|W(H.charAt(re+2))>>2)>>8&255),p(255&V)),Ce},R.fromByteArray=function(H){var re,V,ke,Ce,we=H.length%3,D="";function p(m){return"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(m)}for(re=0,ke=H.length-we;re>18&63)+p(Ce>>12&63)+p(Ce>>6&63)+p(63&Ce);switch(we){case 1:D=(D+=p((V=H[H.length-1])>>2))+p(V<<4&63)+"==";break;case 2:D=(D=(D+=p((V=(H[H.length-2]<<8)+H[H.length-1])>>10))+p(V>>4&63))+p(V<<2&63)+"="}return D}})(pe===void 0?this.base64js={}:pe)}).call(this,ee("lYpoI2"),typeof self<"u"?self:typeof window<"u"?window:{},ee("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/base64-js/lib/b64.js","/node_modules/gulp-browserify/node_modules/base64-js/lib")},{buffer:3,lYpoI2:11}],3:[function(ee,Ie,pe){(function(Be,de,U,w,ce,z,C,L,A){var R=ee("base64-js"),B=ee("ieee754");function U(ne,_e,Ve){if(!(this instanceof U))return new U(ne,_e,Ve);var it,ft,le,Te,De=typeof ne;if(_e==="base64"&&De=="string")for(ne=(Te=ne).trim?Te.trim():Te.replace(/^\s+|\s+$/g,"");ne.length%4!=0;)ne+="=";if(De=="number")it=u(ne);else if(De=="string")it=U.byteLength(ne,_e);else{if(De!="object")throw new Error("First argument needs to be a number, array or string.");it=u(ne.length)}if(U._useTypedArrays?ft=U._augment(new Uint8Array(it)):((ft=this).length=it,ft._isBuffer=!0),U._useTypedArrays&&typeof ne.byteLength=="number")ft._set(ne);else if(h(Te=ne)||U.isBuffer(Te)||Te&&typeof Te=="object"&&typeof Te.length=="number")for(le=0;le>8,Te=Te%256,De.push(Te),De.push(le);return De}(_e),ne,Ve,it)}function J(ne,_e,Ve){var it="";Ve=Math.min(ne.length,Ve);for(var ft=_e;ft>>0)):(_e+1>>0),ft}function ie(ne,_e,Ve,it){if(it||(Me(typeof Ve=="boolean","missing or invalid endian"),Me(_e!=null,"missing offset"),Me(_e+1>>8*(it?le:1-le)}function ke(ne,_e,Ve,it,ft){if(ft||(Me(_e!=null,"missing value"),Me(typeof it=="boolean","missing or invalid endian"),Me(Ve!=null,"missing offset"),Me(Ve+3>>8*(it?le:3-le)&255}function Ce(ne,_e,Ve,it,ft){ft||(Me(_e!=null,"missing value"),Me(typeof it=="boolean","missing or invalid endian"),Me(Ve!=null,"missing offset"),Me(Ve+1this.length&&(it=this.length);var ft=(it=ne.length-_e=this.length))return this[ne]},U.prototype.readUInt16LE=function(ne,_e){return Se(this,ne,!0,_e)},U.prototype.readUInt16BE=function(ne,_e){return Se(this,ne,!1,_e)},U.prototype.readUInt32LE=function(ne,_e){return Pe(this,ne,!0,_e)},U.prototype.readUInt32BE=function(ne,_e){return Pe(this,ne,!1,_e)},U.prototype.readInt8=function(ne,_e){if(_e||(Me(ne!=null,"missing offset"),Me(ne=this.length))return 128&this[ne]?-1*(255-this[ne]+1):this[ne]},U.prototype.readInt16LE=function(ne,_e){return ie(this,ne,!0,_e)},U.prototype.readInt16BE=function(ne,_e){return ie(this,ne,!1,_e)},U.prototype.readInt32LE=function(ne,_e){return W(this,ne,!0,_e)},U.prototype.readInt32BE=function(ne,_e){return W(this,ne,!1,_e)},U.prototype.readFloatLE=function(ne,_e){return H(this,ne,!0,_e)},U.prototype.readFloatBE=function(ne,_e){return H(this,ne,!1,_e)},U.prototype.readDoubleLE=function(ne,_e){return re(this,ne,!0,_e)},U.prototype.readDoubleBE=function(ne,_e){return re(this,ne,!1,_e)},U.prototype.writeUInt8=function(ne,_e,Ve){Ve||(Me(ne!=null,"missing value"),Me(_e!=null,"missing offset"),Me(_e=this.length||(this[_e]=ne)},U.prototype.writeUInt16LE=function(ne,_e,Ve){V(this,ne,_e,!0,Ve)},U.prototype.writeUInt16BE=function(ne,_e,Ve){V(this,ne,_e,!1,Ve)},U.prototype.writeUInt32LE=function(ne,_e,Ve){ke(this,ne,_e,!0,Ve)},U.prototype.writeUInt32BE=function(ne,_e,Ve){ke(this,ne,_e,!1,Ve)},U.prototype.writeInt8=function(ne,_e,Ve){Ve||(Me(ne!=null,"missing value"),Me(_e!=null,"missing offset"),Me(_e=this.length||(0<=ne?this.writeUInt8(ne,_e,Ve):this.writeUInt8(255+ne+1,_e,Ve))},U.prototype.writeInt16LE=function(ne,_e,Ve){Ce(this,ne,_e,!0,Ve)},U.prototype.writeInt16BE=function(ne,_e,Ve){Ce(this,ne,_e,!1,Ve)},U.prototype.writeInt32LE=function(ne,_e,Ve){we(this,ne,_e,!0,Ve)},U.prototype.writeInt32BE=function(ne,_e,Ve){we(this,ne,_e,!1,Ve)},U.prototype.writeFloatLE=function(ne,_e,Ve){D(this,ne,_e,!0,Ve)},U.prototype.writeFloatBE=function(ne,_e,Ve){D(this,ne,_e,!1,Ve)},U.prototype.writeDoubleLE=function(ne,_e,Ve){p(this,ne,_e,!0,Ve)},U.prototype.writeDoubleBE=function(ne,_e,Ve){p(this,ne,_e,!1,Ve)},U.prototype.fill=function(ne,_e,Ve){if(_e=_e||0,Ve=Ve||this.length,Me(typeof(ne=typeof(ne=ne||0)=="string"?ne.charCodeAt(0):ne)=="number"&&!isNaN(ne),"value is not a number"),Me(_e<=Ve,"end < start"),Ve!==_e&&this.length!==0){Me(0<=_e&&_e"},U.prototype.toArrayBuffer=function(){if(typeof Uint8Array>"u")throw new Error("Buffer.toArrayBuffer not supported in this browser");if(U._useTypedArrays)return new U(this).buffer;for(var ne=new Uint8Array(this.length),_e=0,Ve=ne.length;_e=_e.length||ft>=ne.length);ft++)_e[ft+Ve]=ne[ft];return ft}function S(ne){try{return decodeURIComponent(ne)}catch{return"\uFFFD"}}function q(ne,_e){Me(typeof ne=="number","cannot write a non-number as a number"),Me(0<=ne,"specified a negative value for writing an unsigned value"),Me(ne<=_e,"value is larger than maximum value for type"),Me(Math.floor(ne)===ne,"value has a fractional component")}function x(ne,_e,Ve){Me(typeof ne=="number","cannot write a non-number as a number"),Me(ne<=_e,"value larger than maximum allowed value"),Me(Ve<=ne,"value smaller than minimum allowed value"),Me(Math.floor(ne)===ne,"value has a fractional component")}function ge(ne,_e,Ve){Me(typeof ne=="number","cannot write a non-number as a number"),Me(ne<=_e,"value larger than maximum allowed value"),Me(Ve<=ne,"value smaller than minimum allowed value")}function Me(ne,_e){if(!ne)throw new Error(_e||"Failed assertion")}U._augment=function(ne){return ne._isBuffer=!0,ne._get=ne.get,ne._set=ne.set,ne.get=m.get,ne.set=m.set,ne.write=m.write,ne.toString=m.toString,ne.toLocaleString=m.toString,ne.toJSON=m.toJSON,ne.copy=m.copy,ne.slice=m.slice,ne.readUInt8=m.readUInt8,ne.readUInt16LE=m.readUInt16LE,ne.readUInt16BE=m.readUInt16BE,ne.readUInt32LE=m.readUInt32LE,ne.readUInt32BE=m.readUInt32BE,ne.readInt8=m.readInt8,ne.readInt16LE=m.readInt16LE,ne.readInt16BE=m.readInt16BE,ne.readInt32LE=m.readInt32LE,ne.readInt32BE=m.readInt32BE,ne.readFloatLE=m.readFloatLE,ne.readFloatBE=m.readFloatBE,ne.readDoubleLE=m.readDoubleLE,ne.readDoubleBE=m.readDoubleBE,ne.writeUInt8=m.writeUInt8,ne.writeUInt16LE=m.writeUInt16LE,ne.writeUInt16BE=m.writeUInt16BE,ne.writeUInt32LE=m.writeUInt32LE,ne.writeUInt32BE=m.writeUInt32BE,ne.writeInt8=m.writeInt8,ne.writeInt16LE=m.writeInt16LE,ne.writeInt16BE=m.writeInt16BE,ne.writeInt32LE=m.writeInt32LE,ne.writeInt32BE=m.writeInt32BE,ne.writeFloatLE=m.writeFloatLE,ne.writeFloatBE=m.writeFloatBE,ne.writeDoubleLE=m.writeDoubleLE,ne.writeDoubleBE=m.writeDoubleBE,ne.fill=m.fill,ne.inspect=m.inspect,ne.toArrayBuffer=m.toArrayBuffer,ne}}).call(this,ee("lYpoI2"),typeof self<"u"?self:typeof window<"u"?window:{},ee("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/buffer/index.js","/node_modules/gulp-browserify/node_modules/buffer")},{"base64-js":2,buffer:3,ieee754:10,lYpoI2:11}],4:[function(ee,Ie,pe){(function(Be,de,R,w,ce,z,C,L,A){var R=ee("buffer").Buffer,B=4,U=new R(B);U.fill(0),Ie.exports={hash:function(P,F,J,Se){for(var Pe=F(function(V,ke){V.length%B!=0&&(Ce=V.length+(B-V.length%B),V=R.concat([V,U],Ce));for(var Ce,we=[],D=ke?V.readInt32BE:V.readInt32LE,p=0;pJ?b=m(b):b.length>5]|=128<>>9<<4)]=W;for(var H=1732584193,re=-271733879,V=-1732584194,ke=271733878,Ce=0;Ce>>32-V,H)}function P(ie,W,H,re,V,ke,Ce){return U(W&H|~W&re,ie,W,V,ke,Ce)}function F(ie,W,H,re,V,ke,Ce){return U(W&re|H&~re,ie,W,V,ke,Ce)}function J(ie,W,H,re,V,ke,Ce){return U(W^H^re,ie,W,V,ke,Ce)}function Se(ie,W,H,re,V,ke,Ce){return U(H^(W|~re),ie,W,V,ke,Ce)}function Pe(ie,W){var H=(65535&ie)+(65535&W);return(ie>>16)+(W>>16)+(H>>16)<<16|65535&H}Ie.exports=function(ie){return R.hash(ie,B,16)}}).call(this,ee("lYpoI2"),typeof self<"u"?self:typeof window<"u"?window:{},ee("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/md5.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./helpers":4,buffer:3,lYpoI2:11}],7:[function(ee,Ie,pe){(function(Be,de,Ae,w,ce,z,C,L,A){var R;Ie.exports=R||function(B){for(var U,P=new Array(B),F=0;F>>((3&F)<<3)&255;return P}}).call(this,ee("lYpoI2"),typeof self<"u"?self:typeof window<"u"?window:{},ee("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/rng.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{buffer:3,lYpoI2:11}],8:[function(ee,Ie,pe){(function(Be,de,Ae,w,ce,z,C,L,A){var R=ee("./helpers");function B(F,J){F[J>>5]|=128<<24-J%32,F[15+(J+64>>9<<4)]=J;for(var Se,Pe,ie,W=Array(80),H=1732584193,re=-271733879,V=-1732584194,ke=271733878,Ce=-1009589776,we=0;we>16)+(J>>16)+(Se>>16)<<16|65535&Se}function P(F,J){return F<>>32-J}Ie.exports=function(F){return R.hash(F,B,20,!0)}}).call(this,ee("lYpoI2"),typeof self<"u"?self:typeof window<"u"?window:{},ee("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/sha.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./helpers":4,buffer:3,lYpoI2:11}],9:[function(ee,Ie,pe){(function(Be,de,Ae,w,ce,z,C,L,A){function R(J,Se){var Pe=(65535&J)+(65535&Se);return(J>>16)+(Se>>16)+(Pe>>16)<<16|65535&Pe}function B(J,Se){var Pe,ie=new Array(1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298),W=new Array(1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225),H=new Array(64);J[Se>>5]|=128<<24-Se%32,J[15+(Se+64>>9<<4)]=Se;for(var re,V,ke=0;ke>>Se|J<<32-Se},F=function(J,Se){return J>>>Se};Ie.exports=function(J){return U.hash(J,B,32,!0)}}).call(this,ee("lYpoI2"),typeof self<"u"?self:typeof window<"u"?window:{},ee("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/sha256.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./helpers":4,buffer:3,lYpoI2:11}],10:[function(ee,Ie,pe){(function(Be,de,Ae,w,ce,z,C,L,A){pe.read=function(R,B,U,P,ke){var J,Se,Pe=8*ke-P-1,ie=(1<>1,H=-7,re=U?ke-1:0,V=U?-1:1,ke=R[B+re];for(re+=V,J=ke&(1<<-H)-1,ke>>=-H,H+=Pe;0>=-H,H+=P;0>1,re=F===23?Math.pow(2,-24)-Math.pow(2,-77):0,V=P?0:Ce-1,ke=P?1:-1,Ce=B<0||B===0&&1/B<0?1:0;for(B=Math.abs(B),isNaN(B)||B===1/0?(Pe=isNaN(B)?1:0,Se=W):(Se=Math.floor(Math.log(B)/Math.LN2),B*(P=Math.pow(2,-Se))<1&&(Se--,P*=2),2<=(B+=1<=Se+H?re/P:re*Math.pow(2,1-H))*P&&(Se++,P/=2),W<=Se+H?(Pe=0,Se=W):1<=Se+H?(Pe=(B*P-1)*Math.pow(2,F),Se+=H):(Pe=B*Math.pow(2,H-1)*Math.pow(2,F),Se=0));8<=F;R[U+V]=255&Pe,V+=ke,Pe/=256,F-=8);for(Se=Se<{"use strict";var pe;/** + * @license React + * react-jsx-runtime.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Be=Ie(22155),de=Symbol.for("react.element"),Ae=Symbol.for("react.fragment"),w=Object.prototype.hasOwnProperty,ce=Be.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,z={key:!0,ref:!0,__self:!0,__source:!0};function C(L,A,R){var B,U={},P=null,F=null;R!==void 0&&(P=""+R),A.key!==void 0&&(P=""+A.key),A.ref!==void 0&&(F=A.ref);for(B in A)w.call(A,B)&&!z.hasOwnProperty(B)&&(U[B]=A[B]);if(L&&L.defaultProps)for(B in A=L.defaultProps,A)U[B]===void 0&&(U[B]=A[B]);return{$$typeof:de,type:L,key:P,ref:F,props:U,_owner:ce.current}}pe=Ae,pe=C,pe=C},66018:(gt,ee)=>{"use strict";/** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Ie=Symbol.for("react.element"),pe=Symbol.for("react.portal"),Be=Symbol.for("react.fragment"),de=Symbol.for("react.strict_mode"),Ae=Symbol.for("react.profiler"),w=Symbol.for("react.provider"),ce=Symbol.for("react.context"),z=Symbol.for("react.forward_ref"),C=Symbol.for("react.suspense"),L=Symbol.for("react.memo"),A=Symbol.for("react.lazy"),R=Symbol.iterator;function B(S){return S===null||typeof S!="object"?null:(S=R&&S[R]||S["@@iterator"],typeof S=="function"?S:null)}var U={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},P=Object.assign,F={};function J(S,q,x){this.props=S,this.context=q,this.refs=F,this.updater=x||U}J.prototype.isReactComponent={},J.prototype.setState=function(S,q){if(typeof S!="object"&&typeof S!="function"&&S!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,S,q,"setState")},J.prototype.forceUpdate=function(S){this.updater.enqueueForceUpdate(this,S,"forceUpdate")};function Se(){}Se.prototype=J.prototype;function Pe(S,q,x){this.props=S,this.context=q,this.refs=F,this.updater=x||U}var ie=Pe.prototype=new Se;ie.constructor=Pe,P(ie,J.prototype),ie.isPureReactComponent=!0;var W=Array.isArray,H=Object.prototype.hasOwnProperty,re={current:null},V={key:!0,ref:!0,__self:!0,__source:!0};function ke(S,q,x){var ge,Me={},ne=null,_e=null;if(q!=null)for(ge in q.ref!==void 0&&(_e=q.ref),q.key!==void 0&&(ne=""+q.key),q)H.call(q,ge)&&!V.hasOwnProperty(ge)&&(Me[ge]=q[ge]);var Ve=arguments.length-2;if(Ve===1)Me.children=x;else if(1{"use strict";gt.exports=Ie(66018)},65723:(gt,ee,Ie)=>{"use strict";Ie(62921)},51383:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0}),ee.chromeLink=void 0;const pe=Ie(62958),Be=de=>(0,pe.createBaseLink)({postMessage(Ae){de.port.postMessage(Ae)},addMessageListener(Ae){de.port.onMessage.addListener(Ae)},removeMessageListener(Ae){de.port.onMessage.removeListener(Ae)},addCloseListener(Ae){de.port.onDisconnect.addListener(Ae)},removeCloseListener(Ae){de.port.onDisconnect.removeListener(Ae)}});ee.chromeLink=Be},6201:function(gt,ee,Ie){"use strict";var pe=this&&this.__createBinding||(Object.create?function(de,Ae,w,ce){ce===void 0&&(ce=w);var z=Object.getOwnPropertyDescriptor(Ae,w);(!z||("get"in z?!Ae.__esModule:z.writable||z.configurable))&&(z={enumerable:!0,get:function(){return Ae[w]}}),Object.defineProperty(de,ce,z)}:function(de,Ae,w,ce){ce===void 0&&(ce=w),de[ce]=Ae[w]}),Be=this&&this.__exportStar||function(de,Ae){for(var w in de)w!=="default"&&!Object.prototype.hasOwnProperty.call(Ae,w)&&pe(Ae,de,w)};Object.defineProperty(ee,"__esModule",{value:!0}),Be(Ie(51383),ee),Be(Ie(40649),ee),Be(Ie(88059),ee)},62958:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0}),ee.createBaseLink=void 0;const pe=Ie(83931),Be=Ie(33067),de=Ie(95402),Ae=w=>ce=>({op:z})=>(0,Be.observable)(C=>{const L=[],{id:A,type:R,path:B}=z;try{const U=ce.transformer.serialize(z.input),P=()=>{C.error(new pe.TRPCClientError("Port disconnected prematurely"))};w.addCloseListener(P),L.push(()=>w.removeCloseListener(P));const F=J=>{if(!(0,de.isTRPCResponse)(J))return;const{trpc:Se}=J;if(A===Se.id){if("error"in Se)return C.error(pe.TRPCClientError.from(Se));C.next({result:Object.assign(Object.assign({},Se.result),(!Se.result.type||Se.result.type==="data")&&{type:"data",data:ce.transformer.deserialize(Se.result.data)})}),(R!=="subscription"||Se.result.type==="stopped")&&C.complete()}};w.addMessageListener(F),L.push(()=>w.removeMessageListener(F)),w.postMessage({trpc:{id:A,jsonrpc:void 0,method:R,params:{path:B,input:U}}})}catch(U){C.error(new pe.TRPCClientError(U instanceof Error?U.message:"Unknown error"))}return()=>{R==="subscription"&&w.postMessage({trpc:{id:A,jsonrpc:void 0,method:"subscription.stop"}}),L.forEach(U=>U())}});ee.createBaseLink=Ae},88059:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0}),ee.popupLink=void 0;const pe=Ie(76913),Be=Ie(62958),de=Ae=>{const w=new Map,ce=new Set;let z=null;async function C(L){if(!z||z.closed){z=Ae.createPopup(),await Promise.race([new Promise(A=>{var R;try{(R=z?.addEventListener)===null||R===void 0||R.call(z,"load",A)}catch{}}),new Promise(A=>{L.addEventListener("message",R=>{R.data===pe.TRPC_BROWSER_LOADED_EVENT&&A()})}),new Promise(A=>{console.warn("Could not detect if popup loading succeeded after 15s timeout, continuing anyway"),setTimeout(A,15e3)})]);try{if(!z.addEventListener)throw new Error("popupWindow.addEventListener is not a function");z.addEventListener("beforeunload",()=>{z=null})}catch{const R=setInterval(()=>{z&&z.closed&&(z=null,ce.forEach(B=>{B()}),clearInterval(R))},1e3)}}return z}return(0,Be.createBaseLink)({async postMessage(L){return(await C(Ae.listenWindow)).postMessage(L,{targetOrigin:Ae.postOrigin})},addMessageListener(L){const A=R=>{L(R.data)};w.set(L,A),Ae.listenWindow.addEventListener("message",A)},removeMessageListener(L){const A=w.get(L);A&&Ae.listenWindow.removeEventListener("message",A)},addCloseListener(L){Ae.listenWindow.addEventListener("beforeunload",L),ce.add(L)},removeCloseListener(L){Ae.listenWindow.removeEventListener("beforeunload",L),ce.delete(L)}})};ee.popupLink=de},40649:(gt,ee,Ie)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0}),ee.windowLink=void 0;const pe=Ie(62958),Be=de=>{var Ae;const w=new Map,ce=de.window,z=(Ae=de.postWindow)!==null&&Ae!==void 0?Ae:ce;return(0,pe.createBaseLink)({postMessage(C){z.postMessage(C,{targetOrigin:de.postOrigin})},addMessageListener(C){const L=A=>{C(A.data)};w.set(C,L),ce.addEventListener("message",L)},removeMessageListener(C){const L=w.get(C);L&&ce.removeEventListener("message",L)},addCloseListener(C){ce.addEventListener("beforeunload",C)},removeCloseListener(C){ce.removeEventListener("beforeunload",C)}})};ee.windowLink=Be},76913:(gt,ee)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0}),ee.TRPC_BROWSER_LOADED_EVENT=void 0,ee.TRPC_BROWSER_LOADED_EVENT="TRPC_BROWSER::POPUP_LOADED"},95402:(gt,ee)=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0}),ee.isTRPCRequestWithId=ee.isTRPCRequest=ee.isTRPCResponse=ee.isTRPCMessage=void 0;function Ie(z){return typeof z=="object"&&z!==null&&!Array.isArray(z)}function pe(z){return z==null}function Be(z){return!!(Ie(z)&&"trpc"in z&&Ie(z.trpc))}ee.isTRPCMessage=Be;function de(z){return Be(z)&&"id"in z.trpc&&!pe(z.trpc.id)}function Ae(z){return de(z)&&("error"in z.trpc||"result"in z.trpc)}ee.isTRPCResponse=Ae;function w(z){return de(z)&&"method"in z.trpc}ee.isTRPCRequest=w;function ce(z){return w(z)&&de(z)}ee.isTRPCRequestWithId=ce},65747:function(gt,ee,Ie){var pe;(function(Be,de){"use strict";var Ae="1.0.38",w="",ce="?",z="function",C="undefined",L="object",A="string",R="major",B="model",U="name",P="type",F="vendor",J="version",Se="architecture",Pe="console",ie="mobile",W="tablet",H="smarttv",re="wearable",V="embedded",ke=500,Ce="Amazon",we="Apple",D="ASUS",p="BlackBerry",m="Browser",b="Chrome",u="Edge",h="Firefox",v="Google",T="Huawei",E="LG",g="Microsoft",S="Motorola",q="Opera",x="Samsung",ge="Sharp",Me="Sony",ne="Xiaomi",_e="Zebra",Ve="Facebook",it="Chromium OS",ft="Mac OS",le=function(Tt,zt){var kt={};for(var te in Tt)zt[te]&&zt[te].length%2===0?kt[te]=zt[te].concat(Tt[te]):kt[te]=Tt[te];return kt},Te=function(Tt){for(var zt={},kt=0;kt0?Ee.length===2?typeof Ee[1]==z?this[Ee[0]]=Ee[1].call(this,st):this[Ee[0]]=Ee[1]:Ee.length===3?typeof Ee[1]===z&&!(Ee[1].exec&&Ee[1].test)?this[Ee[0]]=st?Ee[1].call(this,st,Ee[2]):de:this[Ee[0]]=st?st.replace(Ee[1],Ee[2]):de:Ee.length===4&&(this[Ee[0]]=st?Ee[3].call(this,st.replace(Ee[1],Ee[2])):de):this[Ee]=st||de;kt+=2}},ze=function(Tt,zt){for(var kt in zt)if(typeof zt[kt]===L&&zt[kt].length>0){for(var te=0;te2&&(Ge[B]="iPad",Ge[P]=W),Ge},this.getEngine=function(){var Ge={};return Ge[U]=de,Ge[J]=de,lt.call(Ge,te,N.engine),Ge},this.getOS=function(){var Ge={};return Ge[U]=de,Ge[J]=de,lt.call(Ge,te,N.os),Ee&&!Ge[U]&&I&&I.platform&&I.platform!="Unknown"&&(Ge[U]=I.platform.replace(/chrome os/i,it).replace(/macos/i,ft)),Ge},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return te},this.setUA=function(Ge){return te=typeof Ge===A&&Ge.length>ke?Xe(Ge,ke):Ge,this},this.setUA(te),this};pt.VERSION=Ae,pt.BROWSER=Te([U,J,R]),pt.CPU=Te([Se]),pt.DEVICE=Te([B,F,P,Pe,ie,H,W,re,V]),pt.ENGINE=pt.OS=Te([U,J]),typeof ee!==C?(C!=="object"&>.exports&&(ee=gt.exports=pt),ee.UAParser=pt):z==="function"&&Ie.amdO?(pe=function(){return pt}.call(ee,Ie,ee,gt),pe!==de&&(gt.exports=pe)):typeof Be!==C&&(Be.UAParser=pt);var Dt=typeof Be!==C&&(Be.jQuery||Be.Zepto);if(Dt&&!Dt.ua){var Ct=new pt;Dt.ua=Ct.getResult(),Dt.ua.get=function(){return Ct.getUA()},Dt.ua.set=function(Tt){Ct.setUA(Tt);var zt=Ct.getResult();for(var kt in zt)Dt.ua[kt]=zt[kt]}}})(typeof window=="object"?window:this)},62797:function(gt,ee,Ie){var pe,Be;(function(de,Ae,w){gt.exports?gt.exports=w():(pe=w,Be=typeof pe=="function"?pe.call(ee,Ie,ee,gt):pe,Be!==void 0&&(gt.exports=Be))})("urljoin",this,function(){function de(Ae){var w=[];if(Ae.length===0)return"";if(typeof Ae[0]!="string")throw new TypeError("Url must be a string. Received "+Ae[0]);if(Ae[0].match(/^[^/:]+:\/*$/)&&Ae.length>1){var ce=Ae.shift();Ae[0]=ce+Ae[0]}Ae[0].match(/^file:\/\/\//)?Ae[0]=Ae[0].replace(/^([^/:]+):\/*/,"$1:///"):Ae[0]=Ae[0].replace(/^([^/:]+):\/*/,"$1://");for(var z=0;z0&&(C=C.replace(/^[\/]+/,"")),z0?"?":"")+A.join("&"),L}return function(){var Ae;return typeof arguments[0]=="object"?Ae=arguments[0]:Ae=[].slice.call(arguments),de(Ae)}})},49047:(gt,ee,Ie)=>{"use strict";Ie.r(ee),Ie.d(ee,{DOMException:()=>ke,Headers:()=>L,Request:()=>ie,Response:()=>re,fetch:()=>Ce});var pe=typeof globalThis<"u"&&globalThis||typeof self<"u"&&self||typeof Ie.g<"u"&&Ie.g||{},Be={searchParams:"URLSearchParams"in pe,iterable:"Symbol"in pe&&"iterator"in Symbol,blob:"FileReader"in pe&&"Blob"in pe&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in pe,arrayBuffer:"ArrayBuffer"in pe};function de(we){return we&&DataView.prototype.isPrototypeOf(we)}if(Be.arrayBuffer)var Ae=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],w=ArrayBuffer.isView||function(we){return we&&Ae.indexOf(Object.prototype.toString.call(we))>-1};function ce(we){if(typeof we!="string"&&(we=String(we)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(we)||we==="")throw new TypeError('Invalid character in header field name: "'+we+'"');return we.toLowerCase()}function z(we){return typeof we!="string"&&(we=String(we)),we}function C(we){var D={next:function(){var p=we.shift();return{done:p===void 0,value:p}}};return Be.iterable&&(D[Symbol.iterator]=function(){return D}),D}function L(we){this.map={},we instanceof L?we.forEach(function(D,p){this.append(p,D)},this):Array.isArray(we)?we.forEach(function(D){if(D.length!=2)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+D.length);this.append(D[0],D[1])},this):we&&Object.getOwnPropertyNames(we).forEach(function(D){this.append(D,we[D])},this)}L.prototype.append=function(we,D){we=ce(we),D=z(D);var p=this.map[we];this.map[we]=p?p+", "+D:D},L.prototype.delete=function(we){delete this.map[ce(we)]},L.prototype.get=function(we){return we=ce(we),this.has(we)?this.map[we]:null},L.prototype.has=function(we){return this.map.hasOwnProperty(ce(we))},L.prototype.set=function(we,D){this.map[ce(we)]=z(D)},L.prototype.forEach=function(we,D){for(var p in this.map)this.map.hasOwnProperty(p)&&we.call(D,this.map[p],p,this)},L.prototype.keys=function(){var we=[];return this.forEach(function(D,p){we.push(p)}),C(we)},L.prototype.values=function(){var we=[];return this.forEach(function(D){we.push(D)}),C(we)},L.prototype.entries=function(){var we=[];return this.forEach(function(D,p){we.push([p,D])}),C(we)},Be.iterable&&(L.prototype[Symbol.iterator]=L.prototype.entries);function A(we){if(!we._noBody){if(we.bodyUsed)return Promise.reject(new TypeError("Already read"));we.bodyUsed=!0}}function R(we){return new Promise(function(D,p){we.onload=function(){D(we.result)},we.onerror=function(){p(we.error)}})}function B(we){var D=new FileReader,p=R(D);return D.readAsArrayBuffer(we),p}function U(we){var D=new FileReader,p=R(D),m=/charset=([A-Za-z0-9_-]+)/.exec(we.type),b=m?m[1]:"utf-8";return D.readAsText(we,b),p}function P(we){for(var D=new Uint8Array(we),p=new Array(D.length),m=0;m-1?D:we}function ie(we,D){if(!(this instanceof ie))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');D=D||{};var p=D.body;if(we instanceof ie){if(we.bodyUsed)throw new TypeError("Already read");this.url=we.url,this.credentials=we.credentials,D.headers||(this.headers=new L(we.headers)),this.method=we.method,this.mode=we.mode,this.signal=we.signal,!p&&we._bodyInit!=null&&(p=we._bodyInit,we.bodyUsed=!0)}else this.url=String(we);if(this.credentials=D.credentials||this.credentials||"same-origin",(D.headers||!this.headers)&&(this.headers=new L(D.headers)),this.method=Pe(D.method||this.method||"GET"),this.mode=D.mode||this.mode||null,this.signal=D.signal||this.signal||function(){if("AbortController"in pe){var u=new AbortController;return u.signal}}(),this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&p)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(p),(this.method==="GET"||this.method==="HEAD")&&(D.cache==="no-store"||D.cache==="no-cache")){var m=/([?&])_=[^&]*/;if(m.test(this.url))this.url=this.url.replace(m,"$1_="+new Date().getTime());else{var b=/\?/;this.url+=(b.test(this.url)?"&":"?")+"_="+new Date().getTime()}}}ie.prototype.clone=function(){return new ie(this,{body:this._bodyInit})};function W(we){var D=new FormData;return we.trim().split("&").forEach(function(p){if(p){var m=p.split("="),b=m.shift().replace(/\+/g," "),u=m.join("=").replace(/\+/g," ");D.append(decodeURIComponent(b),decodeURIComponent(u))}}),D}function H(we){var D=new L,p=we.replace(/\r?\n[\t ]+/g," ");return p.split("\r").map(function(m){return m.indexOf(` +`)===0?m.substr(1,m.length):m}).forEach(function(m){var b=m.split(":"),u=b.shift().trim();if(u){var h=b.join(":").trim();try{D.append(u,h)}catch(v){console.warn("Response "+v.message)}}}),D}J.call(ie.prototype);function re(we,D){if(!(this instanceof re))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');if(D||(D={}),this.type="default",this.status=D.status===void 0?200:D.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].");this.ok=this.status>=200&&this.status<300,this.statusText=D.statusText===void 0?"":""+D.statusText,this.headers=new L(D.headers),this.url=D.url||"",this._initBody(we)}J.call(re.prototype),re.prototype.clone=function(){return new re(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new L(this.headers),url:this.url})},re.error=function(){var we=new re(null,{status:200,statusText:""});return we.ok=!1,we.status=0,we.type="error",we};var V=[301,302,303,307,308];re.redirect=function(we,D){if(V.indexOf(D)===-1)throw new RangeError("Invalid status code");return new re(null,{status:D,headers:{location:we}})};var ke=pe.DOMException;try{new ke}catch{ke=function(D,p){this.message=D,this.name=p;var m=Error(D);this.stack=m.stack},ke.prototype=Object.create(Error.prototype),ke.prototype.constructor=ke}function Ce(we,D){return new Promise(function(p,m){var b=new ie(we,D);if(b.signal&&b.signal.aborted)return m(new ke("Aborted","AbortError"));var u=new XMLHttpRequest;function h(){u.abort()}u.onload=function(){var E={statusText:u.statusText,headers:H(u.getAllResponseHeaders()||"")};b.url.indexOf("file://")===0&&(u.status<200||u.status>599)?E.status=200:E.status=u.status,E.url="responseURL"in u?u.responseURL:E.headers.get("X-Request-URL");var g="response"in u?u.response:u.responseText;setTimeout(function(){p(new re(g,E))},0)},u.onerror=function(){setTimeout(function(){m(new TypeError("Network request failed"))},0)},u.ontimeout=function(){setTimeout(function(){m(new TypeError("Network request timed out"))},0)},u.onabort=function(){setTimeout(function(){m(new ke("Aborted","AbortError"))},0)};function v(E){try{return E===""&&pe.location.href?pe.location.href:E}catch{return E}}if(u.open(b.method,v(b.url),!0),b.credentials==="include"?u.withCredentials=!0:b.credentials==="omit"&&(u.withCredentials=!1),"responseType"in u&&(Be.blob?u.responseType="blob":Be.arrayBuffer&&(u.responseType="arraybuffer")),D&&typeof D.headers=="object"&&!(D.headers instanceof L||pe.Headers&&D.headers instanceof pe.Headers)){var T=[];Object.getOwnPropertyNames(D.headers).forEach(function(E){T.push(ce(E)),u.setRequestHeader(E,z(D.headers[E]))}),b.headers.forEach(function(E,g){T.indexOf(g)===-1&&u.setRequestHeader(g,E)})}else b.headers.forEach(function(E,g){u.setRequestHeader(g,E)});b.signal&&(b.signal.addEventListener("abort",h),u.onreadystatechange=function(){u.readyState===4&&b.signal.removeEventListener("abort",h)}),u.send(typeof b._bodyInit>"u"?null:b._bodyInit)})}Ce.polyfill=!0,pe.fetch||(pe.fetch=Ce,pe.Headers=L,pe.Request=ie,pe.Response=re)},57175:()=>{},39322:()=>{},44507:()=>{},3713:()=>{},4789:gt=>{"use strict";gt.exports={rE:"6.5.7"}}},Ia={};function fr(gt){var ee=Ia[gt];if(ee!==void 0)return ee.exports;var Ie=Ia[gt]={id:gt,loaded:!1,exports:{}};return Qa[gt].call(Ie.exports,Ie,Ie.exports,fr),Ie.loaded=!0,Ie.exports}fr.amdO={},fr.d=(gt,ee)=>{for(var Ie in ee)fr.o(ee,Ie)&&!fr.o(gt,Ie)&&Object.defineProperty(gt,Ie,{enumerable:!0,get:ee[Ie]})},fr.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),fr.o=(gt,ee)=>Object.prototype.hasOwnProperty.call(gt,ee),fr.r=gt=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(gt,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(gt,"__esModule",{value:!0})},fr.nmd=gt=>(gt.paths=[],gt.children||(gt.children=[]),gt);var LY={};(()=>{"use strict";var Is,Cs;var gt={};fr.r(gt);var ee={};fr.r(ee);var Ie={};fr.r(Ie),fr.d(Ie,{EBlockTag:()=>s6,EDAMode:()=>c6,EDataAvailabilityMode:()=>o6,ESimulationFlag:()=>du,ETransactionExecutionStatus:()=>X1,ETransactionFinalityStatus:()=>i6,ETransactionStatus:()=>uu,ETransactionType:()=>Ns,ETransactionVersion:()=>To,ETransactionVersion2:()=>f6,ETransactionVersion3:()=>d6,Errors:()=>gt,SPEC:()=>ee});var pe={};fr.r(pe),fr.d(pe,{Permission:()=>Q1,TypedDataRevision:()=>jn});var Be={};fr.r(Be),fr.d(Be,{API:()=>Ie,EBlockTag:()=>s6,EDAMode:()=>c6,EDataAvailabilityMode:()=>o6,ESimulationFlag:()=>du,ETransactionExecutionStatus:()=>X1,ETransactionFinalityStatus:()=>i6,ETransactionStatus:()=>uu,ETransactionType:()=>Ns,ETransactionVersion:()=>To,ETransactionVersion2:()=>f6,ETransactionVersion3:()=>d6,Errors:()=>gt,Permission:()=>Q1,SPEC:()=>ee,TypedDataRevision:()=>jn,WALLET_API:()=>pe});var de={};fr.r(de),fr.d(de,{DO:()=>gu,OG:()=>ab,My:()=>of,Ph:()=>cf,lX:()=>rb,Id:()=>mu,fg:()=>A6,qj:()=>Vi,aT:()=>Qo,aY:()=>sf,lq:()=>td,z:()=>nb,Q5:()=>yu});var Ae={};fr.r(Ae),fr.d(Ae,{OG:()=>dh,My:()=>rc,Ph:()=>Za,lX:()=>yb,Id:()=>id,fg:()=>s4,qj:()=>Si,aT:()=>nc,ME:()=>fh,aY:()=>Bs,lq:()=>ad,z:()=>_b,IV:()=>vb,Q5:()=>xu});var w={};fr.r(w),fr.d(w,{poseidon:()=>p4,splitConstants:()=>Zk,validateOpts:()=>h4});var ce={};fr.r(ce),fr.d(ce,{DER:()=>Oo,SWUFpSqrtRatio:()=>_4,mapToCurveSimpleSWU:()=>Qk,weierstrass:()=>y4,weierstrassPoints:()=>m4});var z={};fr.r(z),fr.d(z,{CURVE:()=>nI,Fp251:()=>M4,MAX_VALUE:()=>lf,ProjectivePoint:()=>cd,Signature:()=>hh,_poseidonMDS:()=>B4,_starkCurve:()=>eI,computeHashOnElements:()=>dI,ethSigToPrivate:()=>aI,getAccountPath:()=>sI,getPublicKey:()=>S4,getSharedSecret:()=>tI,getStarkKey:()=>ku,grindKey:()=>O4,keccak:()=>fi,pedersen:()=>No,poseidonBasic:()=>Cb,poseidonCreate:()=>hI,poseidonHash:()=>bh,poseidonHashFunc:()=>pI,poseidonHashMany:()=>ta,poseidonHashSingle:()=>bI,poseidonSmall:()=>Cu,sign:()=>od,utils:()=>Su,verify:()=>rI});var C={};fr.r(C),fr.d(C,{poseidon:()=>kI,splitConstants:()=>SI,validateOpts:()=>H4});var L={};fr.r(L),fr.d(L,{DER:()=>oc,SWUFpSqrtRatio:()=>q4,mapToCurveSimpleSWU:()=>BI,weierstrass:()=>z4,weierstrassPoints:()=>V4});const A=e=>{};var R=typeof global=="object"&&global&&global.Object===Object&&global;const B=R;var U=typeof self=="object"&&self&&self.Object===Object&&self,P=B||U||Function("return this")();const F=P;var J=F.Symbol;const Se=J;var Pe=Object.prototype,ie=Pe.hasOwnProperty,W=Pe.toString,H=Se?Se.toStringTag:void 0;function re(e){var t=ie.call(e,H),r=e[H];try{e[H]=void 0;var n=!0}catch{}var a=W.call(e);return n&&(t?e[H]=r:delete e[H]),a}const V=re;var ke=Object.prototype,Ce=ke.toString;function we(e){return Ce.call(e)}const D=we;var p="[object Null]",m="[object Undefined]",b=Se?Se.toStringTag:void 0;function u(e){return e==null?e===void 0?m:p:b&&b in Object(e)?V(e):D(e)}const h=u;function v(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}const T=v;var E="[object AsyncFunction]",g="[object Function]",S="[object GeneratorFunction]",q="[object Proxy]";function x(e){if(!T(e))return!1;var t=h(e);return t==g||t==S||t==E||t==q}const ge=x;var Me=F["__core-js_shared__"];const ne=Me;var _e=function(){var e=/[^.]+$/.exec(ne&&ne.keys&&ne.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Ve(e){return!!_e&&_e in e}const it=Ve;var ft=Function.prototype,le=ft.toString;function Te(e){if(e!=null){try{return le.call(e)}catch{}try{return e+""}catch{}}return""}const De=Te;var ot=/[\\^$.*+?()[\]{}|]/g,Ke=/^\[object .+?Constructor\]$/,Xe=Function.prototype,lt=Object.prototype,ze=Xe.toString,Ye=lt.hasOwnProperty,bt=RegExp("^"+ze.call(Ye).replace(ot,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function at(e){if(!T(e)||it(e))return!1;var t=ge(e)?bt:Ke;return t.test(De(e))}const pt=at;function Dt(e,t){return e?.[t]}const Ct=Dt;function Tt(e,t){var r=Ct(e,t);return pt(r)?r:void 0}const zt=Tt;var kt=zt(Object,"create");const te=kt;function I(){this.__data__=te?te(null):{},this.size=0}const N=I;function Ee(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}const Ge=Ee;var st="__lodash_hash_undefined__",ut=Object.prototype,cr=ut.hasOwnProperty;function jt(e){var t=this.__data__;if(te){var r=t[e];return r===st?void 0:r}return cr.call(t,e)?t[e]:void 0}const Lt=jt;var dr=Object.prototype,Wt=dr.hasOwnProperty;function Sr(e){var t=this.__data__;return te?t[e]!==void 0:Wt.call(t,e)}const Jc=Sr;var Ir="__lodash_hash_undefined__";function Cr(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=te&&t===void 0?Ir:t,this}const Xc=Cr;function gr(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t-1}const tn=nf;function fn(e,t){var r=this.__data__,n=wr(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}const Xo=fn;function Bn(e){var t=-1,r=e==null?0:e.length;for(this.clear();++ti,r=(i,s)=>o=>i(s(o)),n=e.map(i=>i.encode).reduceRight(r,t),a=e.map(i=>i.decode).reduce(r,t);return{encode:n,decode:a}}function ei(e){return{encode:t=>{if(!Array.isArray(t)||t.length&&typeof t[0]!="number")throw new Error("alphabet.encode input should be an array of numbers");return t.map(r=>{if(r<0||r>=e.length)throw new Error(`Digit index outside alphabet: ${r} (alphabet: ${e.length})`);return e[r]})},decode:t=>{if(!Array.isArray(t)||t.length&&typeof t[0]!="string")throw new Error("alphabet.decode input should be array of strings");return t.map(r=>{if(typeof r!="string")throw new Error(`alphabet.decode: not string element=${r}`);const n=e.indexOf(r);if(n===-1)throw new Error(`Unknown letter: "${r}". Allowed: ${e}`);return n})}}}function ti(e=""){if(typeof e!="string")throw new Error("join separator should be string");return{encode:t=>{if(!Array.isArray(t)||t.length&&typeof t[0]!="string")throw new Error("join.encode input should be array of strings");for(let r of t)if(typeof r!="string")throw new Error(`join.encode: non-string input=${r}`);return t.join(e)},decode:t=>{if(typeof t!="string")throw new Error("join.decode input should be string");return t.split(e)}}}function hu(e,t="="){if(typeof t!="string")throw new Error("padding chr should be string");return{encode(r){if(!Array.isArray(r)||r.length&&typeof r[0]!="string")throw new Error("padding.encode input should be array of strings");for(let n of r)if(typeof n!="string")throw new Error(`padding.encode: non-string input=${n}`);for(;r.length*e%8;)r.push(t);return r},decode(r){if(!Array.isArray(r)||r.length&&typeof r[0]!="string")throw new Error("padding.encode input should be array of strings");for(let a of r)if(typeof a!="string")throw new Error(`padding.decode: non-string input=${a}`);let n=r.length;if(n*e%8)throw new Error("Invalid padding: string should have whole number of bytes");for(;n>0&&r[n-1]===t;n--)if(!((n-1)*e%8))throw new Error("Invalid padding: string has too much padding");return r.slice(0,n)}}}function u6(e){if(typeof e!="function")throw new Error("normalize fn should be function");return{encode:t=>t,decode:t=>e(t)}}function eb(e,t,r){if(t<2)throw new Error(`convertRadix: wrong from=${t}, base cannot be less than 2`);if(r<2)throw new Error(`convertRadix: wrong to=${r}, base cannot be less than 2`);if(!Array.isArray(e))throw new Error("convertRadix: data should be array");if(!e.length)return[];let n=0;const a=[],i=Array.from(e);for(i.forEach(s=>{if(s<0||s>=t)throw new Error(`Wrong integer: ${s}`)});;){let s=0,o=!0;for(let c=n;ct?l6(t,e%t):e,J0=(e,t)=>e+(t-l6(e,t));function X0(e,t,r,n){if(!Array.isArray(e))throw new Error("convertRadix2: data should be array");if(t<=0||t>32)throw new Error(`convertRadix2: wrong from=${t}`);if(r<=0||r>32)throw new Error(`convertRadix2: wrong to=${r}`);if(J0(t,r)>32)throw new Error(`convertRadix2: carry overflow from=${t} to=${r} carryBits=${J0(t,r)}`);let a=0,i=0;const s=2**r-1,o=[];for(const c of e){if(c>=2**t)throw new Error(`convertRadix2: invalid data word=${c} from=${t}`);if(a=a<32)throw new Error(`convertRadix2: carry overflow pos=${i} from=${t}`);for(i+=t;i>=r;i-=r)o.push((a>>i-r&s)>>>0);a&=2**i-1}if(a=a<=t)throw new Error("Excess padding");if(!n&&a)throw new Error(`Non-zero padding: ${a}`);return n&&i>0&&o.push(a>>>0),o}function h6(e){return{encode:t=>{if(!lu(t))throw new Error("radix.encode input should be Uint8Array");return eb(Array.from(t),2**8,e)},decode:t=>{if(!Array.isArray(t)||t.length&&typeof t[0]!="number")throw new Error("radix.decode input should be array of numbers");return Uint8Array.from(eb(t,e,2**8))}}}function ci(e,t=!1){if(e<=0||e>32)throw new Error("radix2: bits should be in (0..32]");if(J0(8,e)>32||J0(e,8)>32)throw new Error("radix2: carry overflow");return{encode:r=>{if(!lu(r))throw new Error("radix2.encode input should be Uint8Array");return X0(Array.from(r),8,e,!t)},decode:r=>{if(!Array.isArray(r)||r.length&&typeof r[0]!="number")throw new Error("radix2.decode input should be array of numbers");return Uint8Array.from(X0(r,e,8,t))}}}function p6(e){if(typeof e!="function")throw new Error("unsafeWrapper fn should be function");return function(...t){try{return e.apply(null,t)}catch{}}}function b6(e,t){if(typeof t!="function")throw new Error("checksum fn should be function");return{encode(r){if(!lu(r))throw new Error("checksum.encode: input should be Uint8Array");const n=t(r).slice(0,e),a=new Uint8Array(r.length+e);return a.set(r),a.set(n,r.length),a},decode(r){if(!lu(r))throw new Error("checksum.decode: input should be Uint8Array");const n=r.slice(0,-e),a=t(n).slice(0,e),i=r.slice(-e);for(let s=0;se.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1"))),pu=qa(ci(6),ei("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),hu(6),ti("")),$Y=qa(ci(6),ei("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),ti("")),yS=qa(ci(6),ei("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),hu(6),ti("")),VY=qa(ci(6),ei("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),ti("")),eh=(e=>qa(h6(58),ei(e),ti("")))("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),qY=null,ZY=null,g6=[0,2,3,5,6,7,9,10,11],_S={encode(e){let t="";for(let r=0;rqa(b6(4,t=>e(e(t))),eh),GY=null,tb=qa(ei("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),ti("")),m6=null;function bu(e){const t=e>>25;let r=(e&33554431)<<5;for(let n=0;n>n&1)===1&&(r^=m6[n]);return r}function y6(e,t,r=1){const n=e.length;let a=1;for(let i=0;i126)throw new Error(`Invalid prefix (${e})`);a=bu(a)^s>>5}a=bu(a);for(let i=0;iM)throw new TypeError(`Length ${j} exceeds limit ${M}`);const G=l.toLowerCase(),$=y6(G,y,t);return`${G}1${tb.encode(y)}${$}`}function o(l,y=90){if(typeof l!="string")throw new Error(`bech32.decode input should be string, not ${typeof l}`);if(l.length<8||y!==!1&&l.length>y)throw new TypeError(`Wrong string length: ${l.length} (${l}). Expected (8..${y})`);const M=l.toLowerCase();if(l!==M&&l!==l.toUpperCase())throw new Error("String must be lowercase or uppercase");const j=M.lastIndexOf("1");if(j===0||j===-1)throw new Error('Letter "1" must be present between prefix and data only');const G=M.slice(0,j),$=M.slice(j+1);if($.length<6)throw new Error("Data must be at least 6 characters long");const fe=tb.decode($).slice(0,-6),he=y6(G,fe,t);if(!$.endsWith(he))throw new Error(`Invalid checksum in ${l}: expected "${he}"`);return{prefix:G,words:fe}}const c=p6(o);function d(l){const{prefix:y,words:M}=o(l,!1);return{prefix:y,words:M,bytes:n(M)}}return{encode:s,decode:o,decodeToBytes:d,decodeUnsafe:c,fromWords:n,fromWordsUnsafe:i,toWords:a}}const YY=null,JY=null,th={utf8:{encode:e=>new TextDecoder().decode(e),decode:e=>new TextEncoder().encode(e)},hex:qa(ci(4),ei("0123456789abcdef"),ti(""),u6(e=>{if(typeof e!="string"||e.length%2)throw new TypeError(`hex.decode: expected string, got ${typeof e} with length ${e.length}`);return e.toLowerCase()})),base16:gS,base32:mS,base64:pu,base64url:yS,base58:eh,base58xmr:_S},_6="Invalid encoding type. Available types: utf8, hex, base16, base32, base64, base64url, base58, base58xmr",eJ=(e,t)=>{if(typeof e!="string"||!th.hasOwnProperty(e))throw new TypeError(_6);if(!lu(t))throw new TypeError("bytesToString() expects Uint8Array");return th[e].encode(t)},tJ=null,rJ=(e,t)=>{if(!th.hasOwnProperty(e))throw new TypeError(_6);if(typeof t!="string")throw new TypeError("stringToBytes() expects string");return th[e].decode(t)},nJ=null;/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const v6=null,rh=BigInt(1),vS=BigInt(2);function sf(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function gu(e){if(!sf(e))throw new Error("Uint8Array expected")}const wS=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function of(e){gu(e);let t="";for(let r=0;r=So._0&&e<=So._9)return e-So._0;if(e>=So._A&&e<=So._F)return e-(So._A-10);if(e>=So._a&&e<=So._f)return e-(So._a-10)}function Qo(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);const t=e.length,r=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);const n=new Uint8Array(r);for(let a=0,i=0;av6;e>>=rh,t+=1);return t}function cJ(e,t){return e>>BigInt(t)&rh}function fJ(e,t,r){return e|(r?rh:v6)<(vS<new Uint8Array(e),x6=e=>Uint8Array.from(e);function A6(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=ib(e),a=ib(e),i=0;const s=()=>{n.fill(1),a.fill(0),i=0},o=(...y)=>r(a,n,...y),c=(y=ib())=>{a=o(x6([0]),y),n=o(),y.length!==0&&(a=o(x6([1]),y),n=o())},d=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let y=0;const M=[];for(;y{s(),c(y);let j;for(;!(j=M(d()));)c();return s(),j}}const xS={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||sf(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function yu(e,t,r={}){const n=(a,i,s)=>{const o=xS[i];if(typeof o!="function")throw new Error(`Invalid validator "${i}", expected function`);const c=e[a];if(!(s&&c===void 0)&&!o(c,e))throw new Error(`Invalid param ${String(a)}=${c} (${typeof c}), expected ${i}`)};for(const[a,i]of Object.entries(t))n(a,i,!1);for(const[a,i]of Object.entries(r))n(a,i,!0);return e}function _u(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function AS(e){if(typeof e!="boolean")throw new Error(`boolean expected, not ${e}`)}function TS(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function ff(e,...t){if(!TS(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function T6(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");_u(e.outputLen),_u(e.blockLen)}function df(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function sb(e,t){ff(e);const r=t.outputLen;if(e.length>ob&nh)}:{h:Number(e>>ob&nh)|0,l:Number(e&nh)|0}}function k6(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let a=0;aBigInt(e>>>0)<>>0),kS=(e,t,r)=>e>>>r,IS=(e,t,r)=>e<<32-r|t>>>r,CS=(e,t,r)=>e>>>r|t<<32-r,OS=(e,t,r)=>e<<32-r|t>>>r,NS=(e,t,r)=>e<<64-r|t>>>r-32,RS=(e,t,r)=>e>>>r-32|t<<64-r,MS=(e,t)=>t,BS=(e,t)=>e,I6=(e,t,r)=>e<>>32-r,C6=(e,t,r)=>t<>>32-r,O6=(e,t,r)=>t<>>64-r,N6=(e,t,r)=>e<>>64-r;function PS(e,t,r,n){const a=(t>>>0)+(n>>>0);return{h:e+r+(a/2**32|0)|0,l:a|0}}const yJ={fromBig:S6,split:k6,toBig:SS,shrSH:kS,shrSL:IS,rotrSH:CS,rotrSL:OS,rotrBH:NS,rotrBL:RS,rotr32H:MS,rotr32L:BS,rotlSH:I6,rotlSL:C6,rotlBH:O6,rotlBL:N6,add:PS,add3L:(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),add3H:(e,t,r,n)=>t+r+n+(e/2**32|0)|0,add4L:(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),add4H:(e,t,r,n,a)=>t+r+n+a+(e/2**32|0)|0,add5H:(e,t,r,n,a,i)=>t+r+n+a+i+(e/2**32|0)|0,add5L:(e,t,r,n,a)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(a>>>0)},_J=null,cb=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function vJ(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}const wJ=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),DS=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),fb=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Rs=(e,t)=>e<<32-t|e>>>t,EJ=(e,t)=>e<>>32-t>>>0,R6=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,LS=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255,xJ=null;function M6(e){for(let t=0;tt.toString(16).padStart(2,"0"));function AJ(e){abytes(e);let t="";for(let r=0;r=ko._0&&e<=ko._9)return e-ko._0;if(e>=ko._A&&e<=ko._F)return e-(ko._A-10);if(e>=ko._a&&e<=ko._f)return e-(ko._a-10)}function TJ(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);const t=e.length,r=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);const n=new Uint8Array(r);for(let a=0,i=0;a{};async function SJ(e,t,r){let n=Date.now();for(let a=0;a=0&&ie().update(rd(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function IJ(e){const t=(n,a)=>e(a).update(rd(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function CJ(e){const t=(n,a)=>e(a).update(rd(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function VS(e=32){if(cb&&typeof cb.getRandomValues=="function")return cb.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}const D6=[],L6=[],U6=[],zS=BigInt(0),vu=BigInt(1),qS=BigInt(2),ZS=BigInt(7),KS=BigInt(256),GS=BigInt(113);for(let e=0,t=vu,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],D6.push(2*(5*n+r)),L6.push((e+1)*(e+2)/2%64);let a=zS;for(let i=0;i<7;i++)t=(t<>ZS)*GS)%KS,t&qS&&(a^=vu<<(vu<r>32?O6(e,t,r):I6(e,t,r),H6=(e,t,r)=>r>32?N6(e,t,r):C6(e,t,r);function JS(e,t=24){const r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let s=0;s<10;s++)r[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){const o=(s+8)%10,c=(s+2)%10,d=r[c],l=r[c+1],y=F6(d,l,1)^r[o],M=H6(d,l,1)^r[o+1];for(let j=0;j<50;j+=10)e[s+j]^=y,e[s+j+1]^=M}let a=e[2],i=e[3];for(let s=0;s<24;s++){const o=L6[s],c=F6(a,i,o),d=H6(a,i,o),l=D6[s];a=e[l],i=e[l+1],e[l]=c,e[l+1]=d}for(let s=0;s<50;s+=10){for(let o=0;o<10;o++)r[o]=e[s+o];for(let o=0;o<10;o++)e[s+o]^=~r[(o+2)%10]&r[(o+4)%10]}e[0]^=WS[n],e[1]^=YS[n]}r.fill(0)}class ah extends db{constructor(t,r,n,a=!1,i=24){if(super(),this.blockLen=t,this.suffix=r,this.outputLen=n,this.enableXOF=a,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,_u(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=DS(this.state)}keccak(){R6||M6(this.state32),JS(this.state32,this.rounds),R6||M6(this.state32),this.posOut=0,this.pos=0}update(t){df(this);const{blockLen:r,state:n}=this;t=rd(t);const a=t.length;for(let i=0;i=n&&this.keccak();const s=Math.min(n-this.posOut,i-a);t.set(r.subarray(this.posOut,this.posOut+s),a),this.posOut+=s,a+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return _u(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(sb(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){const{blockLen:r,suffix:n,outputLen:a,rounds:i,enableXOF:s}=this;return t||(t=new ah(r,n,a,s,i)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=i,t.suffix=n,t.outputLen=a,t.enableXOF=s,t.destroyed=this.destroyed,t}}const XS=(e,t,r)=>P6(()=>new ah(t,e,r)),OJ=null,NJ=null,RJ=null,MJ=null,BJ=null,QS=XS(1,136,256/8),PJ=null,DJ=null,LJ=(e,t,r)=>wrapXOFConstructorWithOpts((n={})=>new ah(t,e,n.dkLen===void 0?r:n.dkLen,!0)),UJ=null,FJ=null;function wu(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function ek(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function tk(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function ih(e,...t){if(!tk(e))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function j6(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");wu(e.outputLen),wu(e.blockLen)}function uf(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function ub(e,t){ih(e);const r=t.outputLen;if(e.length>lb&sh)}:{h:Number(e>>lb&sh)|0,l:Number(e&sh)|0}}function V6(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let a=0;aBigInt(e>>>0)<>>0),nk=(e,t,r)=>e>>>r,ak=(e,t,r)=>e<<32-r|t>>>r,ik=(e,t,r)=>e>>>r|t<<32-r,sk=(e,t,r)=>e<<32-r|t>>>r,ok=(e,t,r)=>e<<64-r|t>>>r-32,ck=(e,t,r)=>e>>>r-32|t<<64-r,fk=(e,t)=>t,dk=(e,t)=>e,z6=(e,t,r)=>e<>>32-r,q6=(e,t,r)=>t<>>32-r,Z6=(e,t,r)=>t<>>64-r,K6=(e,t,r)=>e<>>64-r;function uk(e,t,r,n){const a=(t>>>0)+(n>>>0);return{h:e+r+(a/2**32|0)|0,l:a|0}}const GJ={fromBig:$6,split:V6,toBig:rk,shrSH:nk,shrSL:ak,rotrSH:ik,rotrSL:sk,rotrBH:ok,rotrBL:ck,rotr32H:fk,rotr32L:dk,rotlSH:z6,rotlSL:q6,rotlBH:Z6,rotlBL:K6,add:uk,add3L:(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),add3H:(e,t,r,n)=>t+r+n+(e/2**32|0)|0,add4L:(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),add4H:(e,t,r,n,a)=>t+r+n+a+(e/2**32|0)|0,add5H:(e,t,r,n,a,i)=>t+r+n+a+i+(e/2**32|0)|0,add5L:(e,t,r,n,a)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(a>>>0)},WJ=null,hb=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */const YJ=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),lk=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));function pb(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}const bb=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Ms=(e,t)=>e<<32-t|e>>>t;if(!(new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68))throw new Error("Non little-endian hardware is not supported");const hk=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function XJ(e){if(!pb(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r=Io._0&&e<=Io._9)return e-Io._0;if(e>=Io._A&&e<=Io._F)return e-(Io._A-10);if(e>=Io._a&&e<=Io._f)return e-(Io._a-10)}function QJ(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);const t=e.length,r=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);const n=new Uint8Array(r);for(let a=0,i=0;a{};async function eX(e,t,r){let n=Date.now();for(let a=0;a=0&&ie().update(nd(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function rX(e){const t=(n,a)=>e(a).update(nd(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function nX(e){const t=(n,a)=>e(a).update(nd(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function mk(e=32){if(hb&&typeof hb.getRandomValues=="function")return hb.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}const[J6,X6,Q6]=[[],[],[]],yk=BigInt(0),Eu=BigInt(1),_k=BigInt(2),vk=BigInt(7),wk=BigInt(256),Ek=BigInt(113);for(let e=0,t=Eu,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],J6.push(2*(5*n+r)),X6.push((e+1)*(e+2)/2%64);let a=yk;for(let i=0;i<7;i++)t=(t<>vk)*Ek)%wk,t&_k&&(a^=Eu<<(Eu<r>32?Z6(e,t,r):z6(e,t,r),t4=(e,t,r)=>r>32?K6(e,t,r):q6(e,t,r);function Tk(e,t=24){const r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let s=0;s<10;s++)r[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){const o=(s+8)%10,c=(s+2)%10,d=r[c],l=r[c+1],y=e4(d,l,1)^r[o],M=t4(d,l,1)^r[o+1];for(let j=0;j<50;j+=10)e[s+j]^=y,e[s+j+1]^=M}let a=e[2],i=e[3];for(let s=0;s<24;s++){const o=X6[s],c=e4(a,i,o),d=t4(a,i,o),l=J6[s];a=e[l],i=e[l+1],e[l]=c,e[l+1]=d}for(let s=0;s<50;s+=10){for(let o=0;o<10;o++)r[o]=e[s+o];for(let o=0;o<10;o++)e[s+o]^=~r[(o+2)%10]&r[(o+4)%10]}e[0]^=xk[n],e[1]^=Ak[n]}r.fill(0)}class oh extends gb{constructor(t,r,n,a=!1,i=24){if(super(),this.blockLen=t,this.suffix=r,this.outputLen=n,this.enableXOF=a,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,wu(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=lk(this.state)}keccak(){Tk(this.state32,this.rounds),this.posOut=0,this.pos=0}update(t){uf(this);const{blockLen:r,state:n}=this;t=nd(t);const a=t.length;for(let i=0;i=n&&this.keccak();const s=Math.min(n-this.posOut,i-a);t.set(r.subarray(this.posOut,this.posOut+s),a),this.posOut+=s,a+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return wu(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(ub(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){const{blockLen:r,suffix:n,outputLen:a,rounds:i,enableXOF:s}=this;return t||(t=new oh(r,n,a,s,i)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=i,t.suffix=n,t.outputLen=a,t.enableXOF=s,t.destroyed=this.destroyed,t}}const Sk=(e,t,r)=>Y6(()=>new oh(t,e,r)),aX=null,iX=null,sX=null,oX=null,cX=null,kk=Sk(1,136,256/8),fX=null,dX=null,uX=(e,t,r)=>wrapXOFConstructorWithOpts((n={})=>new oh(t,e,n.dkLen===void 0?r:n.dkLen,!0)),lX=null,hX=null;function Ik(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);const a=BigInt(32),i=BigInt(4294967295),s=Number(r>>a&i),o=Number(r&i),c=n?4:0,d=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+d,o,n)}class Ck extends gb{constructor(t,r,n,a){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=bb(this.buffer)}update(t){uf(this);const{view:r,buffer:n,blockLen:a}=this;t=nd(t);const i=t.length;for(let s=0;sa-s&&(this.process(n,0),s=0);for(let y=s;yl.length)throw new Error("_sha2: outputLen bigger than state");for(let y=0;ye&t^~e&r,Nk=(e,t,r)=>e&t^e&r^t&r,Rk=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ec=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),tc=new Uint32Array(64);class r4 extends Ck{constructor(){super(64,32,8,!1),this.A=ec[0]|0,this.B=ec[1]|0,this.C=ec[2]|0,this.D=ec[3]|0,this.E=ec[4]|0,this.F=ec[5]|0,this.G=ec[6]|0,this.H=ec[7]|0}get(){const{A:t,B:r,C:n,D:a,E:i,F:s,G:o,H:c}=this;return[t,r,n,a,i,s,o,c]}set(t,r,n,a,i,s,o,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=a|0,this.E=i|0,this.F=s|0,this.G=o|0,this.H=c|0}process(t,r){for(let y=0;y<16;y++,r+=4)tc[y]=t.getUint32(r,!1);for(let y=16;y<64;y++){const M=tc[y-15],j=tc[y-2],G=Ms(M,7)^Ms(M,18)^M>>>3,$=Ms(j,17)^Ms(j,19)^j>>>10;tc[y]=$+tc[y-7]+G+tc[y-16]|0}let{A:n,B:a,C:i,D:s,E:o,F:c,G:d,H:l}=this;for(let y=0;y<64;y++){const M=Ms(o,6)^Ms(o,11)^Ms(o,25),j=l+M+Ok(o,c,d)+Rk[y]+tc[y]|0,$=(Ms(n,2)^Ms(n,13)^Ms(n,22))+Nk(n,a,i)|0;l=d,d=c,c=o,o=s+j|0,s=i,i=a,a=n,n=j+$|0}n=n+this.A|0,a=a+this.B|0,i=i+this.C|0,s=s+this.D|0,o=o+this.E|0,c=c+this.F|0,d=d+this.G|0,l=l+this.H|0,this.set(n,a,i,s,o,c,d,l)}roundClean(){tc.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}class pX extends r4{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}const mb=Y6(()=>new r4),bX=null;/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const n4=BigInt(0),ch=BigInt(1),Mk=BigInt(2);function Bs(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}const Bk=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function rc(e){if(!Bs(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r=Co._0&&e<=Co._9)return e-Co._0;if(e>=Co._A&&e<=Co._F)return e-(Co._A-10);if(e>=Co._a&&e<=Co._f)return e-(Co._a-10)}function nc(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);const t=e.length,r=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);const n=new Uint8Array(r);for(let a=0,i=0;an4;e>>=ch,t+=1);return t}function _X(e,t){return e>>BigInt(t)&ch}const vX=(e,t,r)=>e|(r?ch:n4)<(Mk<new Uint8Array(e),i4=e=>Uint8Array.from(e);function s4(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=wb(e),a=wb(e),i=0;const s=()=>{n.fill(1),a.fill(0),i=0},o=(...y)=>r(a,n,...y),c=(y=wb())=>{a=o(i4([0]),y),n=o(),y.length!==0&&(a=o(i4([1]),y),n=o())},d=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let y=0;const M=[];for(;y{s(),c(y);let j;for(;!(j=M(d()));)c();return s(),j}}const Dk={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||Bs(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function xu(e,t,r={}){const n=(a,i,s)=>{const o=Dk[i];if(typeof o!="function")throw new Error(`Invalid validator "${i}", expected function`);const c=e[a];if(!(s&&c===void 0)&&!o(c,e))throw new Error(`Invalid param ${String(a)}=${c} (${typeof c}), expected ${i}`)};for(const[a,i]of Object.entries(t))n(a,i,!1);for(const[a,i]of Object.entries(r))n(a,i,!0);return e}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Ea=BigInt(0),$n=BigInt(1),ac=BigInt(2),Lk=BigInt(3),Eb=BigInt(4),o4=BigInt(5),c4=BigInt(8),Uk=BigInt(9),Fk=BigInt(16);function Pa(e,t){const r=e%t;return r>=Ea?r:t+r}function Hk(e,t,r){if(r<=Ea||t 0");if(r===$n)return Ea;let n=$n;for(;t>Ea;)t&$n&&(n=n*e%r),e=e*e%r,t>>=$n;return n}function wX(e,t,r){let n=e;for(;t-- >Ea;)n*=n,n%=r;return n}function Au(e,t){if(e===Ea||t<=Ea)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=Pa(e,t),n=t,a=Ea,i=$n,s=$n,o=Ea;for(;r!==Ea;){const d=n/r,l=n%r,y=a-s*d,M=i-o*d;n=r,r=l,a=s,i=o,s=y,o=M}if(n!==$n)throw new Error("invert: does not exist");return Pa(a,t)}function jk(e){const t=(e-$n)/ac;let r,n,a;for(r=e-$n,n=0;r%ac===Ea;r/=ac,n++);for(a=ac;a(Pa(e,t)&$n)===$n,Vk=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function uh(e){const t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Vk.reduce((n,a)=>(n[a]="function",n),t);return xu(e,r)}function f4(e,t,r){if(r 0");if(r===Ea)return e.ONE;if(r===$n)return t;let n=e.ONE,a=t;for(;r>Ea;)r&$n&&(n=e.mul(n,a)),a=e.sqr(a),r>>=$n;return n}function zk(e,t){const r=new Array(t.length),n=t.reduce((i,s,o)=>e.is0(s)?i:(r[o]=i,e.mul(i,s)),e.ONE),a=e.inv(n);return t.reduceRight((i,s,o)=>e.is0(s)?i:(r[o]=e.mul(i,r[o]),e.mul(i,s)),a),r}function xX(e,t,r){return e.mul(t,typeof r=="bigint"?Au(r,e.ORDER):e.inv(r))}function AX(e){const t=(e.ORDER-$n)/ac;return r=>{const n=e.pow(r,t);return e.eql(n,e.ZERO)||e.eql(n,e.ONE)}}function xb(e,t){const r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function d4(e,t,r=!1,n={}){if(e<=Ea)throw new Error(`Expected Field ORDER > 0, got ${e}`);const{nBitLength:a,nByteLength:i}=xb(e,t);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");const s=$k(e),o=Object.freeze({ORDER:e,BITS:a,BYTES:i,MASK:dh(a),ZERO:Ea,ONE:$n,create:c=>Pa(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Ea<=c&&cc===Ea,isOdd:c=>(c&$n)===$n,neg:c=>Pa(-c,e),eql:(c,d)=>c===d,sqr:c=>Pa(c*c,e),add:(c,d)=>Pa(c+d,e),sub:(c,d)=>Pa(c-d,e),mul:(c,d)=>Pa(c*d,e),pow:(c,d)=>f4(o,c,d),div:(c,d)=>Pa(c*Au(d,e),e),sqrN:c=>c*c,addN:(c,d)=>c+d,subN:(c,d)=>c-d,mulN:(c,d)=>c*d,inv:c=>Au(c,e),sqrt:n.sqrt||(c=>s(o,c)),invertBatch:c=>zk(o,c),cmov:(c,d,l)=>l?d:c,toBytes:c=>r?_b(c,i):ad(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return r?yb(c):Za(c)}});return Object.freeze(o)}function TX(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");const r=e.sqrt(t);return e.isOdd(r)?r:e.neg(r)}function SX(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");const r=e.sqrt(t);return e.isOdd(r)?e.neg(r):r}function kX(e,t,r=!1){e=ensureBytes("privateHash",e);const n=e.length,a=xb(t).nByteLength+8;if(a<24||n1024)throw new Error(`hashToPrivateScalar: expected ${a}-1024 bytes of input, got ${n}`);const i=r?bytesToNumberLE(e):bytesToNumberBE(e);return Pa(i,t-$n)+$n}function u4(e){if(typeof e!="bigint")throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function l4(e){const t=u4(e);return t+Math.ceil(t/2)}function qk(e,t,r=!1){const n=e.length,a=u4(t),i=l4(t);if(n<16||n1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);const s=r?Za(e):yb(e),o=Pa(s,t-$n)+$n;return r?_b(o,a):ad(o,a)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function h4(e){const{Fp:t,mds:r,reversePartialPowIdx:n,roundConstants:a}=e,{roundsFull:i,roundsPartial:s,sboxPower:o,t:c}=e;uh(t);for(const G of["t","roundsFull","roundsPartial"])if(typeof e[G]!="number"||!Number.isSafeInteger(e[G]))throw new Error(`Poseidon: invalid param ${G}=${e[G]} (${typeof e[G]})`);if(!Array.isArray(r)||r.length!==c)throw new Error("Poseidon: wrong MDS matrix");const d=r.map(G=>{if(!Array.isArray(G)||G.length!==c)throw new Error(`Poseidon MDS matrix row: ${G}`);return G.map($=>{if(typeof $!="bigint")throw new Error(`Poseidon MDS matrix value=${$}`);return t.create($)})});if(n!==void 0&&typeof n!="boolean")throw new Error(`Poseidon: invalid param reversePartialPowIdx=${n}`);if(i%2!==0)throw new Error(`Poseidon roundsFull is not even: ${i}`);const l=i+s;if(!Array.isArray(a)||a.length!==l)throw new Error("Poseidon: wrong round constants");const y=a.map(G=>{if(!Array.isArray(G)||G.length!==c)throw new Error(`Poseidon wrong round constants: ${G}`);return G.map($=>{if(typeof $!="bigint"||!t.isValid($))throw new Error(`Poseidon wrong round constant=${$}`);return t.create($)})});if(!o||![3,5,7].includes(o))throw new Error(`Poseidon wrong sboxPower=${o}`);const M=BigInt(o);let j=G=>f4(t,G,M);return o===3?j=G=>t.mul(t.sqrN(G),G):o===5&&(j=G=>t.mul(t.sqrN(t.sqrN(G)),G)),Object.freeze({...e,rounds:l,sboxFn:j,roundConstants:y,mds:d})}function Zk(e,t){if(typeof t!="number")throw new Error("poseidonSplitConstants: wrong t");if(!Array.isArray(e)||e.length%t)throw new Error("poseidonSplitConstants: wrong rc");const r=[];let n=[];for(let a=0;a(j=j.map((fe,he)=>r.add(fe,a[$][he])),G?j=j.map(fe=>o(fe)):j[l]=o(j[l]),j=n.map(fe=>fe.reduce((he,Oe,We)=>r.add(he,r.mulN(Oe,j[We])),r.ZERO)),j),M=function(G){if(!Array.isArray(G)||G.length!==c)throw new Error(`Poseidon: wrong values (expected array of bigints with length ${c})`);G=G.map(fe=>{if(typeof fe!="bigint")throw new Error(`Poseidon: wrong value=${fe} (${typeof fe})`);return r.create(fe)});let $=0;for(let fe=0;fe{const s=i.negate();return a?s:i},n=a=>{const i=Math.ceil(t/a)+1,s=2**(a-1);return{windows:i,windowSize:s}};return{constTimeNegate:r,unsafeLadder(a,i){let s=e.ZERO,o=a;for(;i>Kk;)i&Ab&&(s=s.add(o)),o=o.double(),i>>=Ab;return s},precomputeWindow(a,i){const{windows:s,windowSize:o}=n(i),c=[];let d=a,l=d;for(let y=0;y>=j,fe>c&&(fe-=M,s+=Ab);const he=$,Oe=$+Math.abs(fe)-1,We=G%2!==0,et=fe<0;fe===0?l=l.add(r(We,i[he])):d=d.add(r(et,i[Oe]))}return{p:d,f:l}},wNAFCached(a,i,s,o){const c=a._WINDOW_SIZE||1;let d=i.get(a);return d||(d=this.precomputeWindow(a,c),c!==1&&i.set(a,o(d))),this.wNAF(c,d,s)}}}function b4(e){return uh(e.Fp),xu(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...xb(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Wk(e){const t=b4(e);xu(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:r,Fp:n,a}=t;if(r){if(!n.eql(a,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}const{Ph:Yk,aT:Jk}=Ae,Oo={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){const{Err:t}=Oo;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");const r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:Yk(n),l:e.subarray(r+2)}},toSig(e){const{Err:t}=Oo,r=typeof e=="string"?Jk(e):e;if(!Bs(r))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");const{d:a,l:i}=Oo._parseInt(r.subarray(2)),{d:s,l:o}=Oo._parseInt(i);if(o.length)throw new t("Invalid signature: left bytes after parsing");return{r:a,s}},hexFromSig(e){const t=d=>Number.parseInt(d[0],16)&8?"00"+d:d,r=d=>{const l=d.toString(16);return l.length&1?`0${l}`:l},n=t(r(e.s)),a=t(r(e.r)),i=n.length/2,s=a.length/2,o=r(i),c=r(s);return`30${r(s+i+4)}02${c}${a}02${o}${n}`}},zi=BigInt(0),ua=BigInt(1),ic=BigInt(2),lh=BigInt(3),g4=BigInt(4);function m4(e){const t=Wk(e),{Fp:r}=t,n=t.toBytes||((G,$,fe)=>{const he=$.toAffine();return id(Uint8Array.from([4]),r.toBytes(he.x),r.toBytes(he.y))}),a=t.fromBytes||(G=>{const $=G.subarray(1),fe=r.fromBytes($.subarray(0,r.BYTES)),he=r.fromBytes($.subarray(r.BYTES,2*r.BYTES));return{x:fe,y:he}});function i(G){const{a:$,b:fe}=t,he=r.sqr(G),Oe=r.mul(he,G);return r.add(r.add(Oe,r.mul(G,$)),fe)}if(!r.eql(r.sqr(t.Gy),i(t.Gx)))throw new Error("bad generator point: equation left != right");function s(G){return typeof G=="bigint"&&zir.eql(We,r.ZERO);return Oe(fe)&&Oe(he)?y.ZERO:new y(fe,he,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ($){const fe=r.invertBatch($.map(he=>he.pz));return $.map((he,Oe)=>he.toAffine(fe[Oe])).map(y.fromAffine)}static fromHex($){const fe=y.fromAffine(a(Si("pointHex",$)));return fe.assertValidity(),fe}static fromPrivateKey($){return y.BASE.multiply(c($))}_setWindowSize($){this._WINDOW_SIZE=$,d.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}const{x:$,y:fe}=this.toAffine();if(!r.isValid($)||!r.isValid(fe))throw new Error("bad point: x or y not FE");const he=r.sqr(fe),Oe=i($);if(!r.eql(he,Oe))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:$}=this.toAffine();if(r.isOdd)return!r.isOdd($);throw new Error("Field doesn't support isOdd")}equals($){l($);const{px:fe,py:he,pz:Oe}=this,{px:We,py:et,pz:ht}=$,tt=r.eql(r.mul(fe,ht),r.mul(We,Oe)),He=r.eql(r.mul(he,ht),r.mul(et,Oe));return tt&&He}negate(){return new y(this.px,r.neg(this.py),this.pz)}double(){const{a:$,b:fe}=t,he=r.mul(fe,lh),{px:Oe,py:We,pz:et}=this;let ht=r.ZERO,tt=r.ZERO,He=r.ZERO,Y=r.mul(Oe,Oe),ve=r.mul(We,We),me=r.mul(et,et),Ne=r.mul(Oe,We);return Ne=r.add(Ne,Ne),He=r.mul(Oe,et),He=r.add(He,He),ht=r.mul($,He),tt=r.mul(he,me),tt=r.add(ht,tt),ht=r.sub(ve,tt),tt=r.add(ve,tt),tt=r.mul(ht,tt),ht=r.mul(Ne,ht),He=r.mul(he,He),me=r.mul($,me),Ne=r.sub(Y,me),Ne=r.mul($,Ne),Ne=r.add(Ne,He),He=r.add(Y,Y),Y=r.add(He,Y),Y=r.add(Y,me),Y=r.mul(Y,Ne),tt=r.add(tt,Y),me=r.mul(We,et),me=r.add(me,me),Y=r.mul(me,Ne),ht=r.sub(ht,Y),He=r.mul(me,ve),He=r.add(He,He),He=r.add(He,He),new y(ht,tt,He)}add($){l($);const{px:fe,py:he,pz:Oe}=this,{px:We,py:et,pz:ht}=$;let tt=r.ZERO,He=r.ZERO,Y=r.ZERO;const ve=t.a,me=r.mul(t.b,lh);let Ne=r.mul(fe,We),qe=r.mul(he,et),Je=r.mul(Oe,ht),je=r.add(fe,he),X=r.add(We,et);je=r.mul(je,X),X=r.add(Ne,qe),je=r.sub(je,X),X=r.add(fe,Oe);let ue=r.add(We,ht);return X=r.mul(X,ue),ue=r.add(Ne,Je),X=r.sub(X,ue),ue=r.add(he,Oe),tt=r.add(et,ht),ue=r.mul(ue,tt),tt=r.add(qe,Je),ue=r.sub(ue,tt),Y=r.mul(ve,X),tt=r.mul(me,Je),Y=r.add(tt,Y),tt=r.sub(qe,Y),Y=r.add(qe,Y),He=r.mul(tt,Y),qe=r.add(Ne,Ne),qe=r.add(qe,Ne),Je=r.mul(ve,Je),X=r.mul(me,X),qe=r.add(qe,Je),Je=r.sub(Ne,Je),Je=r.mul(ve,Je),X=r.add(X,Je),Ne=r.mul(qe,X),He=r.add(He,Ne),Ne=r.mul(ue,X),tt=r.mul(je,tt),tt=r.sub(tt,Ne),Ne=r.mul(je,qe),Y=r.mul(ue,Y),Y=r.add(Y,Ne),new y(tt,He,Y)}subtract($){return this.add($.negate())}is0(){return this.equals(y.ZERO)}wNAF($){return j.wNAFCached(this,d,$,fe=>{const he=r.invertBatch(fe.map(Oe=>Oe.pz));return fe.map((Oe,We)=>Oe.toAffine(he[We])).map(y.fromAffine)})}multiplyUnsafe($){const fe=y.ZERO;if($===zi)return fe;if(o($),$===ua)return this;const{endo:he}=t;if(!he)return j.unsafeLadder(this,$);let{k1neg:Oe,k1:We,k2neg:et,k2:ht}=he.splitScalar($),tt=fe,He=fe,Y=this;for(;We>zi||ht>zi;)We&ua&&(tt=tt.add(Y)),ht&ua&&(He=He.add(Y)),Y=Y.double(),We>>=ua,ht>>=ua;return Oe&&(tt=tt.negate()),et&&(He=He.negate()),He=new y(r.mul(He.px,he.beta),He.py,He.pz),tt.add(He)}multiply($){o($);let fe=$,he,Oe;const{endo:We}=t;if(We){const{k1neg:et,k1:ht,k2neg:tt,k2:He}=We.splitScalar(fe);let{p:Y,f:ve}=this.wNAF(ht),{p:me,f:Ne}=this.wNAF(He);Y=j.constTimeNegate(et,Y),me=j.constTimeNegate(tt,me),me=new y(r.mul(me.px,We.beta),me.py,me.pz),he=Y.add(me),Oe=ve.add(Ne)}else{const{p:et,f:ht}=this.wNAF(fe);he=et,Oe=ht}return y.normalizeZ([he,Oe])[0]}multiplyAndAddUnsafe($,fe,he){const Oe=y.BASE,We=(ht,tt)=>tt===zi||tt===ua||!ht.equals(Oe)?ht.multiplyUnsafe(tt):ht.multiply(tt),et=We(this,fe).add(We($,he));return et.is0()?void 0:et}toAffine($){const{px:fe,py:he,pz:Oe}=this,We=this.is0();$==null&&($=We?r.ONE:r.inv(Oe));const et=r.mul(fe,$),ht=r.mul(he,$),tt=r.mul(Oe,$);if(We)return{x:r.ZERO,y:r.ZERO};if(!r.eql(tt,r.ONE))throw new Error("invZ was invalid");return{x:et,y:ht}}isTorsionFree(){const{h:$,isTorsionFree:fe}=t;if($===ua)return!0;if(fe)return fe(y,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:$,clearCofactor:fe}=t;return $===ua?this:fe?fe(y,this):this.multiplyUnsafe(t.h)}toRawBytes($=!0){return this.assertValidity(),n(y,this,$)}toHex($=!0){return rc(this.toRawBytes($))}}y.BASE=new y(t.Gx,t.Gy,r.ONE),y.ZERO=new y(r.ZERO,r.ONE,r.ZERO);const M=t.nBitLength,j=Gk(y,t.endo?Math.ceil(M/2):M);return{CURVE:t,ProjectivePoint:y,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:s}}function Xk(e){const t=b4(e);return xu(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function y4(e){const t=Xk(e),{Fp:r,n}=t,a=r.BYTES+1,i=2*r.BYTES+1;function s(X){return zirc(ad(X,t.nByteLength));function G(X){const ue=n>>ua;return X>ue}function $(X){return G(X)?o(-X):X}const fe=(X,ue,Ue)=>Za(X.slice(ue,Ue));class he{constructor(ue,Ue,Ze){this.r=ue,this.s=Ue,this.recovery=Ze,this.assertValidity()}static fromCompact(ue){const Ue=t.nByteLength;return ue=Si("compactSignature",ue,Ue*2),new he(fe(ue,0,Ue),fe(ue,Ue,2*Ue))}static fromDER(ue){const{r:Ue,s:Ze}=Oo.toSig(Si("DER",ue));return new he(Ue,Ze)}assertValidity(){if(!M(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!M(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(ue){return new he(this.r,this.s,ue)}recoverPublicKey(ue){const{r:Ue,s:Ze,recovery:ct}=this,At=He(Si("msgHash",ue));if(ct==null||![0,1,2,3].includes(ct))throw new Error("recovery id invalid");const Ot=ct===2||ct===3?Ue+t.n:Ue;if(Ot>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");const Ut=ct&1?"03":"02",tr=d.fromHex(Ut+j(Ot)),rr=c(Ot),Xt=o(-At*rr),lr=o(Ze*rr),nr=d.BASE.multiplyAndAddUnsafe(tr,Xt,lr);if(!nr)throw new Error("point at infinify");return nr.assertValidity(),nr}hasHighS(){return G(this.s)}normalizeS(){return this.hasHighS()?new he(this.r,o(-this.s),this.recovery):this}toDERRawBytes(){return nc(this.toDERHex())}toDERHex(){return Oo.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return nc(this.toCompactHex())}toCompactHex(){return j(this.r)+j(this.s)}}const Oe={isValidPrivateKey(X){try{return l(X),!0}catch{return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{const X=l4(t.n);return qk(t.randomBytes(X),t.n)},precompute(X=8,ue=d.BASE){return ue._setWindowSize(X),ue.multiply(BigInt(3)),ue}};function We(X,ue=!0){return d.fromPrivateKey(X).toRawBytes(ue)}function et(X){const ue=Bs(X),Ue=typeof X=="string",Ze=(ue||Ue)&&X.length;return ue?Ze===a||Ze===i:Ue?Ze===2*a||Ze===2*i:X instanceof d}function ht(X,ue,Ue=!0){if(et(X))throw new Error("first arg must be private key");if(!et(ue))throw new Error("second arg must be public key");return d.fromHex(ue).multiply(l(X)).toRawBytes(Ue)}const tt=t.bits2int||function(X){const ue=Za(X),Ue=X.length*8-t.nBitLength;return Ue>0?ue>>BigInt(Ue):ue},He=t.bits2int_modN||function(X){return o(tt(X))},Y=dh(t.nBitLength);function ve(X){if(typeof X!="bigint")throw new Error("bigint expected");if(!(zi<=X&&Xur in Ue))throw new Error("sign() legacy options not supported");const{hash:Ze,randomBytes:ct}=t;let{lowS:At,prehash:Ot,extraEntropy:Ut}=Ue;At==null&&(At=!0),X=Si("msgHash",X),Ot&&(X=Si("prehashed msgHash",Ze(X)));const tr=He(X),rr=l(ue),Xt=[ve(rr),ve(tr)];if(Ut!=null){const ur=Ut===!0?ct(r.BYTES):Ut;Xt.push(Si("extraEntropy",ur))}const lr=id(...Xt),nr=tr;function Sn(ur){const mn=tt(ur);if(!M(mn))return;const hr=c(mn),vr=d.BASE.multiply(mn).toAffine(),Er=o(vr.x);if(Er===zi)return;const yr=o(hr*o(nr+Er*rr));if(yr===zi)return;let or=(vr.x===Er?0:2)|Number(vr.y&ua),ya=yr;return At&&G(yr)&&(ya=$(yr),or^=1),new he(Er,ya,or)}return{seed:lr,k2sig:Sn}}const Ne={lowS:t.lowS,prehash:!1},qe={lowS:t.lowS,prehash:!1};function Je(X,ue,Ue=Ne){const{seed:Ze,k2sig:ct}=me(X,ue,Ue),At=t;return s4(At.hash.outputLen,At.nByteLength,At.hmac)(Ze,ct)}d.BASE._setWindowSize(8);function je(X,ue,Ue,Ze=qe){const ct=X;if(ue=Si("msgHash",ue),Ue=Si("publicKey",Ue),"strict"in Ze)throw new Error("options.strict was renamed to lowS");const{lowS:At,prehash:Ot}=Ze;let Ut,tr;try{if(typeof ct=="string"||Bs(ct))try{Ut=he.fromDER(ct)}catch(vr){if(!(vr instanceof Oo.Err))throw vr;Ut=he.fromCompact(ct)}else if(typeof ct=="object"&&typeof ct.r=="bigint"&&typeof ct.s=="bigint"){const{r:vr,s:Er}=ct;Ut=new he(vr,Er)}else throw new Error("PARSE");tr=d.fromHex(Ue)}catch(vr){if(vr.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(At&&Ut.hasHighS())return!1;Ot&&(ue=t.hash(ue));const{r:rr,s:Xt}=Ut,lr=He(ue),nr=c(Xt),Sn=o(lr*nr),ur=o(rr*nr),mn=d.BASE.multiplyAndAddUnsafe(tr,Sn,ur)?.toAffine();return mn?o(mn.x)===rr:!1}return{CURVE:t,getPublicKey:We,getSharedSecret:ht,sign:Je,verify:je,ProjectivePoint:d,Signature:he,utils:Oe}}function _4(e,t){const r=e.ORDER;let n=zi;for(let G=r-ua;G%ic===zi;G/=ic)n+=ua;const a=n,i=ic<{let fe=y,he=e.pow($,d),Oe=e.sqr(he);Oe=e.mul(Oe,$);let We=e.mul(G,Oe);We=e.pow(We,c),We=e.mul(We,he),he=e.mul(We,$),Oe=e.mul(We,G);let et=e.mul(Oe,he);We=e.pow(et,l);let ht=e.eql(We,e.ONE);he=e.mul(Oe,M),We=e.mul(et,fe),Oe=e.cmov(he,Oe,ht),et=e.cmov(We,et,ht);for(let tt=a;tt>ua;tt--){let He=tt-ic;He=ic<{let Oe=e.sqr(he);const We=e.mul(fe,he);Oe=e.mul(Oe,We);let et=e.pow(Oe,G);et=e.mul(et,We);const ht=e.mul(et,$),tt=e.mul(e.sqr(et),he),He=e.eql(tt,fe);let Y=e.cmov(ht,et,He);return{isValid:He,value:Y}}}return j}function Qk(e,t){if(uh(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw new Error("mapToCurveSimpleSWU: invalid opts");const r=_4(e,t.Z);if(!e.isOdd)throw new Error("Fp.isOdd is not implemented!");return n=>{let a,i,s,o,c,d,l,y;a=e.sqr(n),a=e.mul(a,t.Z),i=e.sqr(a),i=e.add(i,a),s=e.add(i,e.ONE),s=e.mul(s,t.B),o=e.cmov(t.Z,e.neg(i),!e.eql(i,e.ZERO)),o=e.mul(o,t.A),i=e.sqr(s),d=e.sqr(o),c=e.mul(d,t.A),i=e.add(i,c),i=e.mul(i,s),d=e.mul(d,o),c=e.mul(d,t.B),i=e.add(i,c),l=e.mul(a,s);const{isValid:M,value:j}=r(i,d);y=e.mul(a,n),y=e.mul(y,j),l=e.cmov(l,s,M),y=e.cmov(y,j,M);const G=e.isOdd(n)===e.isOdd(y);return y=e.cmov(e.neg(y),y,G),l=e.div(l,o),{x:l,y}}}class v4 extends gb{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,j6(t);const n=nd(r);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const a=this.blockLen,i=new Uint8Array(a);i.set(n.length>a?t.create().update(n).digest():n);for(let s=0;snew v4(e,t).update(r).digest();w4.create=(e,t)=>new v4(e,t);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function E4(e){return{hash:e,hmac:(t,...r)=>w4(e,t,bk(...r)),randomBytes:mk}}function IX(e,t){const r=n=>weierstrass({...e,...E4(n)});return Object.freeze({...r(t),create:r})}const Tu=BigInt("3618502788666131213697322783095070105526743751716087489154079457884512865583"),lf=BigInt("0x800000000000000000000000000000000000000000000000000000000000000"),x4=252;function A4(e){for(;e[0]===0;)e=e.subarray(1);const t=e.length*8-x4,r=Za(e);return t>0?r>>BigInt(t):r}function T4(e){return typeof e=="string"&&(e=Sb(e),e.length&1&&(e="0"+e)),nc(e)}const hf=y4({a:BigInt(1),b:BigInt("3141592653589793238462643383279502884197169399375105820974944592307816406665"),Fp:d4(BigInt("0x800000000000011000000000000000000000000000000000000000000000001")),n:Tu,nBitLength:x4,Gx:BigInt("874739451078007766457464989774322083649278607533249481151382481072868806602"),Gy:BigInt("152666792071518830868575557812948353041420400780739481342941381225525861407"),h:BigInt(1),lowS:!1,...E4(mb),bits2int:A4,bits2int_modN:e=>{const t=Za(e).toString(16);return t.length===63&&(e=T4(t+"0")),Pa(A4(e),Tu)}}),eI=hf;function sd(e){return Si("",typeof e=="string"?T4(e):e)}function Tb(e){return rc(sd(e)).padStart(64,"0")}function S4(e,t=!1){return hf.getPublicKey(Tb(e),t)}function tI(e,t){return hf.getSharedSecret(Tb(e),t)}function k4(e){const{r:t,s:r}=e;if(t<0n||t>=lf)throw new Error(`Signature.r should be [1, ${lf})`);const n=Au(r,Tu);if(n<0n||n>=lf)throw new Error(`inv(Signature.s) should be [1, ${lf})`)}function I4(e){const t=sd(e);if(Za(t)>=lf)throw new Error(`msgHash should be [0, ${lf})`);return t}function od(e,t,r){const n=hf.sign(I4(e),Tb(t),r);return k4(n),n}function rI(e,t,r){if(!(e instanceof hh)){const n=sd(e);try{e=hh.fromDER(n)}catch(a){if(!(a instanceof Oo.Err))throw a;e=hh.fromCompact(n)}}return k4(e),hf.verify(e,I4(t),sd(r))}const{CURVE:nI,ProjectivePoint:cd,Signature:hh,utils:Su}=hf;function C4(e){return`0x${rc(e.subarray(1)).replace(/^0+/gm,"")}`}function Sb(e){return e.replace(/^0x/i,"")}function O4(e){const t=sd(e),r=2n**256n,n=r-Pa(r,Tu);for(let a=0;;a++){const i=kb(id(t,vb(BigInt(a))));if(iNumber(e&iI);function sI(e,t,r,n){const a=ph(kb(e)),i=ph(kb(t)),s=fh(Sb(r));return`m/2645'/${a}'/${i}'/${ph(s)}'/${ph(s>>31n)}'/${n}`}const Iu=[new cd(2089986280348253421170679821480865132823066470938446095505822317253594081284n,1713931329540660377023406109199410414810705867260802078187082345529207694986n,1n),new cd(996781205833008774514500082376783249102396023663454813447423147977397232763n,1668503676786377725805489344771023921079126552019160156920634619255970485781n,1n),new cd(2251563274489750535117886426533222435294046428347329203627021249169616184184n,1798716007562728905295480679789526322175868328062420237419143593021674992973n,1n),new cd(2138414695194151160943305727036575959195309218611738193261179310511854807447n,113410276730064486255102093846540133784865286929052426931474106396135072156n,1n),new cd(2379962749567351885752724891227938183011949129833673362440656643086021394946n,776496453633298175483985398648758586525933812536653089401905292063708816422n,1n)];function N4(e,t){const r=[];let n=e;for(let a=0;a<248;a++)r.push(n),n=n.double();n=t;for(let a=0;a<4;a++)r.push(n),n=n.double();return r}const oI=N4(Iu[1],Iu[2]),cI=N4(Iu[3],Iu[4]);function fI(e){let t;if(typeof e=="bigint")t=e;else if(typeof e=="number"){if(!Number.isSafeInteger(e))throw new Error(`Invalid pedersenArg: ${e}`);t=BigInt(e)}else t=Za(sd(e));if(!(0n<=t&&t>=1n}return e}function No(e,t){let r=Iu[0];return r=R4(r,e,oI),r=R4(r,t,cI),C4(r.toRawBytes(!0))}const dI=(e,t=No)=>[0,...e,e.length].reduce((r,n)=>t(r,n)),uI=dh(250),fi=e=>Za(kk(e))&uI,kb=e=>Za(mb(e)),M4=d4(BigInt("3618502788666131213697322783095070105623107215331596699973092056135872020481"));function Ib(e,t,r){const n=e.fromBytes(mb(W6(`${t}${r}`)));return e.create(n)}function B4(e,t,r,n=0){const a=[],i=[];for(let s=0;si.map(o=>e.inv(e.sub(s,o))))}const lI=[[3,1,1],[1,-1,1],[1,1,-2]].map(e=>e.map(BigInt));function Cb(e,t){if(uh(e.Fp),!Number.isSafeInteger(e.rate)||!Number.isSafeInteger(e.capacity))throw new Error(`Wrong poseidon opts: ${e}`);const r=e.rate+e.capacity,n=e.roundsFull+e.roundsPartial,a=[];for(let s=0;s=xa?r:t+r}function _I(e,t,r){if(r<=xa||t 0");if(r===Jn)return xa;let n=Jn;for(;t>xa;)t&Jn&&(n=n*e%r),e=e*e%r,t>>=Jn;return n}function ki(e,t,r){let n=e;for(;t-- >xa;)n*=n,n%=r;return n}function gh(e,t){if(e===xa||t<=xa)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=ja(e,t),n=t,a=xa,i=Jn,s=Jn,o=xa;for(;r!==xa;){const d=n/r,l=n%r,y=a-s*d,M=i-o*d;n=r,r=l,a=s,i=o,s=y,o=M}if(n!==Jn)throw new Error("invert: does not exist");return ja(a,t)}function vI(e){const t=(e-Jn)/sc;let r,n,a;for(r=e-Jn,n=0;r%sc===xa;r/=sc,n++);for(a=sc;a(ja(e,t)&Jn)===Jn,EI=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Nb(e){const t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=EI.reduce((n,a)=>(n[a]="function",n),t);return yu(e,r)}function L4(e,t,r){if(r 0");if(r===xa)return e.ONE;if(r===Jn)return t;let n=e.ONE,a=t;for(;r>xa;)r&Jn&&(n=e.mul(n,a)),a=e.sqr(a),r>>=Jn;return n}function xI(e,t){const r=new Array(t.length),n=t.reduce((i,s,o)=>e.is0(s)?i:(r[o]=i,e.mul(i,s)),e.ONE),a=e.inv(n);return t.reduceRight((i,s,o)=>e.is0(s)?i:(r[o]=e.mul(i,r[o]),e.mul(i,s)),a),r}function OX(e,t,r){return e.mul(t,typeof r=="bigint"?gh(r,e.ORDER):e.inv(r))}function NX(e){const t=(e.ORDER-Jn)/sc;return r=>{const n=e.pow(r,t);return e.eql(n,e.ZERO)||e.eql(n,e.ONE)}}function Rb(e,t){const r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function AI(e,t,r=!1,n={}){if(e<=xa)throw new Error(`Expected Field ORDER > 0, got ${e}`);const{nBitLength:a,nByteLength:i}=Rb(e,t);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");const s=wI(e),o=Object.freeze({ORDER:e,BITS:a,BYTES:i,MASK:ab(a),ZERO:xa,ONE:Jn,create:c=>ja(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return xa<=c&&cc===xa,isOdd:c=>(c&Jn)===Jn,neg:c=>ja(-c,e),eql:(c,d)=>c===d,sqr:c=>ja(c*c,e),add:(c,d)=>ja(c+d,e),sub:(c,d)=>ja(c-d,e),mul:(c,d)=>ja(c*d,e),pow:(c,d)=>L4(o,c,d),div:(c,d)=>ja(c*gh(d,e),e),sqrN:c=>c*c,addN:(c,d)=>c+d,subN:(c,d)=>c-d,mulN:(c,d)=>c*d,inv:c=>gh(c,e),sqrt:n.sqrt||(c=>s(o,c)),invertBatch:c=>xI(o,c),cmov:(c,d,l)=>l?d:c,toBytes:c=>r?nb(c,i):td(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return r?rb(c):cf(c)}});return Object.freeze(o)}function RX(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");const r=e.sqrt(t);return e.isOdd(r)?r:e.neg(r)}function MX(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");const r=e.sqrt(t);return e.isOdd(r)?e.neg(r):r}function BX(e,t,r=!1){e=ensureBytes("privateHash",e);const n=e.length,a=Rb(t).nByteLength+8;if(a<24||n1024)throw new Error(`hashToPrivateScalar: expected ${a}-1024 bytes of input, got ${n}`);const i=r?bytesToNumberLE(e):bytesToNumberBE(e);return ja(i,t-Jn)+Jn}function U4(e){if(typeof e!="bigint")throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function F4(e){const t=U4(e);return t+Math.ceil(t/2)}function TI(e,t,r=!1){const n=e.length,a=U4(t),i=F4(t);if(n<16||n1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);const s=r?cf(e):rb(e),o=ja(s,t-Jn)+Jn;return r?nb(o,a):td(o,a)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function H4(e){const{Fp:t,mds:r,reversePartialPowIdx:n,roundConstants:a}=e,{roundsFull:i,roundsPartial:s,sboxPower:o,t:c}=e;Nb(t);for(const G of["t","roundsFull","roundsPartial"])if(typeof e[G]!="number"||!Number.isSafeInteger(e[G]))throw new Error(`Poseidon: invalid param ${G}=${e[G]} (${typeof e[G]})`);if(!Array.isArray(r)||r.length!==c)throw new Error("Poseidon: wrong MDS matrix");const d=r.map(G=>{if(!Array.isArray(G)||G.length!==c)throw new Error(`Poseidon MDS matrix row: ${G}`);return G.map($=>{if(typeof $!="bigint")throw new Error(`Poseidon MDS matrix value=${$}`);return t.create($)})});if(n!==void 0&&typeof n!="boolean")throw new Error(`Poseidon: invalid param reversePartialPowIdx=${n}`);if(i%2!==0)throw new Error(`Poseidon roundsFull is not even: ${i}`);const l=i+s;if(!Array.isArray(a)||a.length!==l)throw new Error("Poseidon: wrong round constants");const y=a.map(G=>{if(!Array.isArray(G)||G.length!==c)throw new Error(`Poseidon wrong round constants: ${G}`);return G.map($=>{if(typeof $!="bigint"||!t.isValid($))throw new Error(`Poseidon wrong round constant=${$}`);return t.create($)})});if(!o||![3,5,7].includes(o))throw new Error(`Poseidon wrong sboxPower=${o}`);const M=BigInt(o);let j=G=>L4(t,G,M);return o===3?j=G=>t.mul(t.sqrN(G),G):o===5&&(j=G=>t.mul(t.sqrN(t.sqrN(G)),G)),Object.freeze({...e,rounds:l,sboxFn:j,roundConstants:y,mds:d})}function SI(e,t){if(typeof t!="number")throw new Error("poseidonSplitConstants: wrong t");if(!Array.isArray(e)||e.length%t)throw new Error("poseidonSplitConstants: wrong rc");const r=[];let n=[];for(let a=0;a(j=j.map((fe,he)=>r.add(fe,a[$][he])),G?j=j.map(fe=>o(fe)):j[l]=o(j[l]),j=n.map(fe=>fe.reduce((he,Oe,We)=>r.add(he,r.mulN(Oe,j[We])),r.ZERO)),j),M=function(G){if(!Array.isArray(G)||G.length!==c)throw new Error(`Poseidon: wrong values (expected array of bigints with length ${c})`);G=G.map(fe=>{if(typeof fe!="bigint")throw new Error(`Poseidon: wrong value=${fe} (${typeof fe})`);return r.create(fe)});let $=0;for(let fe=0;fe{const s=i.negate();return a?s:i},n=a=>{const i=Math.ceil(t/a)+1,s=2**(a-1);return{windows:i,windowSize:s}};return{constTimeNegate:r,unsafeLadder(a,i){let s=e.ZERO,o=a;for(;i>II;)i&Mb&&(s=s.add(o)),o=o.double(),i>>=Mb;return s},precomputeWindow(a,i){const{windows:s,windowSize:o}=n(i),c=[];let d=a,l=d;for(let y=0;y>=j,fe>c&&(fe-=M,s+=Mb);const he=$,Oe=$+Math.abs(fe)-1,We=G%2!==0,et=fe<0;fe===0?l=l.add(r(We,i[he])):d=d.add(r(et,i[Oe]))}return{p:d,f:l}},wNAFCached(a,i,s,o){const c=a._WINDOW_SIZE||1;let d=i.get(a);return d||(d=this.precomputeWindow(a,c),c!==1&&i.set(a,o(d))),this.wNAF(c,d,s)}}}function j4(e){return Nb(e.Fp),yu(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Rb(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function OI(e){const t=j4(e);yu(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:r,Fp:n,a}=t;if(r){if(!n.eql(a,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}const{Ph:NI,aT:RI}=de,oc={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){const{Err:t}=oc;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");const r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:NI(n),l:e.subarray(r+2)}},toSig(e){const{Err:t}=oc,r=typeof e=="string"?RI(e):e;gu(r);let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");const{d:a,l:i}=oc._parseInt(r.subarray(2)),{d:s,l:o}=oc._parseInt(i);if(o.length)throw new t("Invalid signature: left bytes after parsing");return{r:a,s}},hexFromSig(e){const t=d=>Number.parseInt(d[0],16)&8?"00"+d:d,r=d=>{const l=d.toString(16);return l.length&1?`0${l}`:l},n=t(r(e.s)),a=t(r(e.r)),i=n.length/2,s=a.length/2,o=r(i),c=r(s);return`30${r(s+i+4)}02${c}${a}02${o}${n}`}},qi=BigInt(0),la=BigInt(1),cc=BigInt(2),mh=BigInt(3),$4=BigInt(4);function V4(e){const t=OI(e),{Fp:r}=t,n=t.toBytes||((G,$,fe)=>{const he=$.toAffine();return mu(Uint8Array.from([4]),r.toBytes(he.x),r.toBytes(he.y))}),a=t.fromBytes||(G=>{const $=G.subarray(1),fe=r.fromBytes($.subarray(0,r.BYTES)),he=r.fromBytes($.subarray(r.BYTES,2*r.BYTES));return{x:fe,y:he}});function i(G){const{a:$,b:fe}=t,he=r.sqr(G),Oe=r.mul(he,G);return r.add(r.add(Oe,r.mul(G,$)),fe)}if(!r.eql(r.sqr(t.Gy),i(t.Gx)))throw new Error("bad generator point: equation left != right");function s(G){return typeof G=="bigint"&&qir.eql(We,r.ZERO);return Oe(fe)&&Oe(he)?y.ZERO:new y(fe,he,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ($){const fe=r.invertBatch($.map(he=>he.pz));return $.map((he,Oe)=>he.toAffine(fe[Oe])).map(y.fromAffine)}static fromHex($){const fe=y.fromAffine(a(Vi("pointHex",$)));return fe.assertValidity(),fe}static fromPrivateKey($){return y.BASE.multiply(c($))}_setWindowSize($){this._WINDOW_SIZE=$,d.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}const{x:$,y:fe}=this.toAffine();if(!r.isValid($)||!r.isValid(fe))throw new Error("bad point: x or y not FE");const he=r.sqr(fe),Oe=i($);if(!r.eql(he,Oe))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:$}=this.toAffine();if(r.isOdd)return!r.isOdd($);throw new Error("Field doesn't support isOdd")}equals($){l($);const{px:fe,py:he,pz:Oe}=this,{px:We,py:et,pz:ht}=$,tt=r.eql(r.mul(fe,ht),r.mul(We,Oe)),He=r.eql(r.mul(he,ht),r.mul(et,Oe));return tt&&He}negate(){return new y(this.px,r.neg(this.py),this.pz)}double(){const{a:$,b:fe}=t,he=r.mul(fe,mh),{px:Oe,py:We,pz:et}=this;let ht=r.ZERO,tt=r.ZERO,He=r.ZERO,Y=r.mul(Oe,Oe),ve=r.mul(We,We),me=r.mul(et,et),Ne=r.mul(Oe,We);return Ne=r.add(Ne,Ne),He=r.mul(Oe,et),He=r.add(He,He),ht=r.mul($,He),tt=r.mul(he,me),tt=r.add(ht,tt),ht=r.sub(ve,tt),tt=r.add(ve,tt),tt=r.mul(ht,tt),ht=r.mul(Ne,ht),He=r.mul(he,He),me=r.mul($,me),Ne=r.sub(Y,me),Ne=r.mul($,Ne),Ne=r.add(Ne,He),He=r.add(Y,Y),Y=r.add(He,Y),Y=r.add(Y,me),Y=r.mul(Y,Ne),tt=r.add(tt,Y),me=r.mul(We,et),me=r.add(me,me),Y=r.mul(me,Ne),ht=r.sub(ht,Y),He=r.mul(me,ve),He=r.add(He,He),He=r.add(He,He),new y(ht,tt,He)}add($){l($);const{px:fe,py:he,pz:Oe}=this,{px:We,py:et,pz:ht}=$;let tt=r.ZERO,He=r.ZERO,Y=r.ZERO;const ve=t.a,me=r.mul(t.b,mh);let Ne=r.mul(fe,We),qe=r.mul(he,et),Je=r.mul(Oe,ht),je=r.add(fe,he),X=r.add(We,et);je=r.mul(je,X),X=r.add(Ne,qe),je=r.sub(je,X),X=r.add(fe,Oe);let ue=r.add(We,ht);return X=r.mul(X,ue),ue=r.add(Ne,Je),X=r.sub(X,ue),ue=r.add(he,Oe),tt=r.add(et,ht),ue=r.mul(ue,tt),tt=r.add(qe,Je),ue=r.sub(ue,tt),Y=r.mul(ve,X),tt=r.mul(me,Je),Y=r.add(tt,Y),tt=r.sub(qe,Y),Y=r.add(qe,Y),He=r.mul(tt,Y),qe=r.add(Ne,Ne),qe=r.add(qe,Ne),Je=r.mul(ve,Je),X=r.mul(me,X),qe=r.add(qe,Je),Je=r.sub(Ne,Je),Je=r.mul(ve,Je),X=r.add(X,Je),Ne=r.mul(qe,X),He=r.add(He,Ne),Ne=r.mul(ue,X),tt=r.mul(je,tt),tt=r.sub(tt,Ne),Ne=r.mul(je,qe),Y=r.mul(ue,Y),Y=r.add(Y,Ne),new y(tt,He,Y)}subtract($){return this.add($.negate())}is0(){return this.equals(y.ZERO)}wNAF($){return j.wNAFCached(this,d,$,fe=>{const he=r.invertBatch(fe.map(Oe=>Oe.pz));return fe.map((Oe,We)=>Oe.toAffine(he[We])).map(y.fromAffine)})}multiplyUnsafe($){const fe=y.ZERO;if($===qi)return fe;if(o($),$===la)return this;const{endo:he}=t;if(!he)return j.unsafeLadder(this,$);let{k1neg:Oe,k1:We,k2neg:et,k2:ht}=he.splitScalar($),tt=fe,He=fe,Y=this;for(;We>qi||ht>qi;)We&la&&(tt=tt.add(Y)),ht&la&&(He=He.add(Y)),Y=Y.double(),We>>=la,ht>>=la;return Oe&&(tt=tt.negate()),et&&(He=He.negate()),He=new y(r.mul(He.px,he.beta),He.py,He.pz),tt.add(He)}multiply($){o($);let fe=$,he,Oe;const{endo:We}=t;if(We){const{k1neg:et,k1:ht,k2neg:tt,k2:He}=We.splitScalar(fe);let{p:Y,f:ve}=this.wNAF(ht),{p:me,f:Ne}=this.wNAF(He);Y=j.constTimeNegate(et,Y),me=j.constTimeNegate(tt,me),me=new y(r.mul(me.px,We.beta),me.py,me.pz),he=Y.add(me),Oe=ve.add(Ne)}else{const{p:et,f:ht}=this.wNAF(fe);he=et,Oe=ht}return y.normalizeZ([he,Oe])[0]}multiplyAndAddUnsafe($,fe,he){const Oe=y.BASE,We=(ht,tt)=>tt===qi||tt===la||!ht.equals(Oe)?ht.multiplyUnsafe(tt):ht.multiply(tt),et=We(this,fe).add(We($,he));return et.is0()?void 0:et}toAffine($){const{px:fe,py:he,pz:Oe}=this,We=this.is0();$==null&&($=We?r.ONE:r.inv(Oe));const et=r.mul(fe,$),ht=r.mul(he,$),tt=r.mul(Oe,$);if(We)return{x:r.ZERO,y:r.ZERO};if(!r.eql(tt,r.ONE))throw new Error("invZ was invalid");return{x:et,y:ht}}isTorsionFree(){const{h:$,isTorsionFree:fe}=t;if($===la)return!0;if(fe)return fe(y,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:$,clearCofactor:fe}=t;return $===la?this:fe?fe(y,this):this.multiplyUnsafe(t.h)}toRawBytes($=!0){return this.assertValidity(),n(y,this,$)}toHex($=!0){return of(this.toRawBytes($))}}y.BASE=new y(t.Gx,t.Gy,r.ONE),y.ZERO=new y(r.ZERO,r.ONE,r.ZERO);const M=t.nBitLength,j=CI(y,t.endo?Math.ceil(M/2):M);return{CURVE:t,ProjectivePoint:y,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:s}}function MI(e){const t=j4(e);return yu(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function z4(e){const t=MI(e),{Fp:r,n}=t,a=r.BYTES+1,i=2*r.BYTES+1;function s(X){return qiof(td(X,t.nByteLength));function G(X){const ue=n>>la;return X>ue}function $(X){return G(X)?o(-X):X}const fe=(X,ue,Ue)=>cf(X.slice(ue,Ue));class he{constructor(ue,Ue,Ze){this.r=ue,this.s=Ue,this.recovery=Ze,this.assertValidity()}static fromCompact(ue){const Ue=t.nByteLength;return ue=Vi("compactSignature",ue,Ue*2),new he(fe(ue,0,Ue),fe(ue,Ue,2*Ue))}static fromDER(ue){const{r:Ue,s:Ze}=oc.toSig(Vi("DER",ue));return new he(Ue,Ze)}assertValidity(){if(!M(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!M(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(ue){return new he(this.r,this.s,ue)}recoverPublicKey(ue){const{r:Ue,s:Ze,recovery:ct}=this,At=He(Vi("msgHash",ue));if(ct==null||![0,1,2,3].includes(ct))throw new Error("recovery id invalid");const Ot=ct===2||ct===3?Ue+t.n:Ue;if(Ot>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");const Ut=ct&1?"03":"02",tr=d.fromHex(Ut+j(Ot)),rr=c(Ot),Xt=o(-At*rr),lr=o(Ze*rr),nr=d.BASE.multiplyAndAddUnsafe(tr,Xt,lr);if(!nr)throw new Error("point at infinify");return nr.assertValidity(),nr}hasHighS(){return G(this.s)}normalizeS(){return this.hasHighS()?new he(this.r,o(-this.s),this.recovery):this}toDERRawBytes(){return Qo(this.toDERHex())}toDERHex(){return oc.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Qo(this.toCompactHex())}toCompactHex(){return j(this.r)+j(this.s)}}const Oe={isValidPrivateKey(X){try{return l(X),!0}catch{return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{const X=F4(t.n);return TI(t.randomBytes(X),t.n)},precompute(X=8,ue=d.BASE){return ue._setWindowSize(X),ue.multiply(BigInt(3)),ue}};function We(X,ue=!0){return d.fromPrivateKey(X).toRawBytes(ue)}function et(X){const ue=sf(X),Ue=typeof X=="string",Ze=(ue||Ue)&&X.length;return ue?Ze===a||Ze===i:Ue?Ze===2*a||Ze===2*i:X instanceof d}function ht(X,ue,Ue=!0){if(et(X))throw new Error("first arg must be private key");if(!et(ue))throw new Error("second arg must be public key");return d.fromHex(ue).multiply(l(X)).toRawBytes(Ue)}const tt=t.bits2int||function(X){const ue=cf(X),Ue=X.length*8-t.nBitLength;return Ue>0?ue>>BigInt(Ue):ue},He=t.bits2int_modN||function(X){return o(tt(X))},Y=ab(t.nBitLength);function ve(X){if(typeof X!="bigint")throw new Error("bigint expected");if(!(qi<=X&&Xur in Ue))throw new Error("sign() legacy options not supported");const{hash:Ze,randomBytes:ct}=t;let{lowS:At,prehash:Ot,extraEntropy:Ut}=Ue;At==null&&(At=!0),X=Vi("msgHash",X),Ot&&(X=Vi("prehashed msgHash",Ze(X)));const tr=He(X),rr=l(ue),Xt=[ve(rr),ve(tr)];if(Ut!=null&&Ut!==!1){const ur=Ut===!0?ct(r.BYTES):Ut;Xt.push(Vi("extraEntropy",ur))}const lr=mu(...Xt),nr=tr;function Sn(ur){const mn=tt(ur);if(!M(mn))return;const hr=c(mn),vr=d.BASE.multiply(mn).toAffine(),Er=o(vr.x);if(Er===qi)return;const yr=o(hr*o(nr+Er*rr));if(yr===qi)return;let or=(vr.x===Er?0:2)|Number(vr.y&la),ya=yr;return At&&G(yr)&&(ya=$(yr),or^=1),new he(Er,ya,or)}return{seed:lr,k2sig:Sn}}const Ne={lowS:t.lowS,prehash:!1},qe={lowS:t.lowS,prehash:!1};function Je(X,ue,Ue=Ne){const{seed:Ze,k2sig:ct}=me(X,ue,Ue),At=t;return A6(At.hash.outputLen,At.nByteLength,At.hmac)(Ze,ct)}d.BASE._setWindowSize(8);function je(X,ue,Ue,Ze=qe){const ct=X;if(ue=Vi("msgHash",ue),Ue=Vi("publicKey",Ue),"strict"in Ze)throw new Error("options.strict was renamed to lowS");const{lowS:At,prehash:Ot}=Ze;let Ut,tr;try{if(typeof ct=="string"||sf(ct))try{Ut=he.fromDER(ct)}catch(vr){if(!(vr instanceof oc.Err))throw vr;Ut=he.fromCompact(ct)}else if(typeof ct=="object"&&typeof ct.r=="bigint"&&typeof ct.s=="bigint"){const{r:vr,s:Er}=ct;Ut=new he(vr,Er)}else throw new Error("PARSE");tr=d.fromHex(Ue)}catch(vr){if(vr.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(At&&Ut.hasHighS())return!1;Ot&&(ue=t.hash(ue));const{r:rr,s:Xt}=Ut,lr=He(ue),nr=c(Xt),Sn=o(lr*nr),ur=o(rr*nr),mn=d.BASE.multiplyAndAddUnsafe(tr,Sn,ur)?.toAffine();return mn?o(mn.x)===rr:!1}return{CURVE:t,getPublicKey:We,getSharedSecret:ht,sign:Je,verify:je,ProjectivePoint:d,Signature:he,utils:Oe}}function q4(e,t){const r=e.ORDER;let n=qi;for(let G=r-la;G%cc===qi;G/=cc)n+=la;const a=n,i=cc<{let fe=y,he=e.pow($,d),Oe=e.sqr(he);Oe=e.mul(Oe,$);let We=e.mul(G,Oe);We=e.pow(We,c),We=e.mul(We,he),he=e.mul(We,$),Oe=e.mul(We,G);let et=e.mul(Oe,he);We=e.pow(et,l);let ht=e.eql(We,e.ONE);he=e.mul(Oe,M),We=e.mul(et,fe),Oe=e.cmov(he,Oe,ht),et=e.cmov(We,et,ht);for(let tt=a;tt>la;tt--){let He=tt-cc;He=cc<{let Oe=e.sqr(he);const We=e.mul(fe,he);Oe=e.mul(Oe,We);let et=e.pow(Oe,G);et=e.mul(et,We);const ht=e.mul(et,$),tt=e.mul(e.sqr(et),he),He=e.eql(tt,fe);let Y=e.cmov(ht,et,He);return{isValid:He,value:Y}}}return j}function BI(e,t){if(Nb(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw new Error("mapToCurveSimpleSWU: invalid opts");const r=q4(e,t.Z);if(!e.isOdd)throw new Error("Fp.isOdd is not implemented!");return n=>{let a,i,s,o,c,d,l,y;a=e.sqr(n),a=e.mul(a,t.Z),i=e.sqr(a),i=e.add(i,a),s=e.add(i,e.ONE),s=e.mul(s,t.B),o=e.cmov(t.Z,e.neg(i),!e.eql(i,e.ZERO)),o=e.mul(o,t.A),i=e.sqr(s),d=e.sqr(o),c=e.mul(d,t.A),i=e.add(i,c),i=e.mul(i,s),d=e.mul(d,o),c=e.mul(d,t.B),i=e.add(i,c),l=e.mul(a,s);const{isValid:M,value:j}=r(i,d);y=e.mul(a,n),y=e.mul(y,j),l=e.cmov(l,s,M),y=e.cmov(y,j,M);const G=e.isOdd(n)===e.isOdd(y);return y=e.cmov(e.neg(y),y,G),l=e.div(l,o),{x:l,y}}}function Ou(e){return PI.test(e)}const PI=/^-?[0-9]+$/;function Z4(e){return DI.test(e)}const DI=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function LI(e,t){const r=parseFloat(e),n=String(r),a=G4(e),i=G4(n);return!!(a===i||t?.approx===!0&&!Ou(e)&&i.length>=14&&a.startsWith(i.substring(0,14)))}let fd=function(e){return e.underflow="underflow",e.overflow="overflow",e.truncate_integer="truncate_integer",e.truncate_float="truncate_float",e}({});function K4(e){if(LI(e,{approx:!1}))return;if(Ou(e))return fd.truncate_integer;const t=parseFloat(e);return isFinite(t)?t===0?fd.underflow:fd.truncate_float:fd.overflow}function PX(e,t){const r=parseFloat(e),n=K4(e);if(t?.approx===!0?n&&n!==fd.truncate_float:n){const a=n?.replace(/_\w+$/,"");throw new Error(`Cannot safely convert to number: the value '${e}' would ${a} and become ${r}`)}return r}function G4(e){return e.replace(UI,"").replace(HI,"").replace(jI,"").replace(FI,"")}const UI=/[eE][+-]?\d+$/,FI=/^-?(0*)?/,HI=/\./,jI=/0+$/;class W4{constructor(t){yt(this,"isLosslessNumber",!0);if(!Z4(t))throw new Error('Invalid number (value: "'+t+'")');this.value=t}valueOf(){const t=K4(this.value);if(t===void 0||t===fd.truncate_float)return parseFloat(this.value);if(Ou(this.value))return BigInt(this.value);throw new Error(`Cannot safely convert to number: the value '${this.value}' would ${t} and become ${parseFloat(this.value)}`)}toString(){return this.value}}function $I(e){return e&&typeof e=="object"&&e.isLosslessNumber===!0||!1}function DX(e){if(extractSignificantDigits(e+"").length>15)throw new Error(`Invalid number: contains more than 15 digits and is most likely truncated and unsafe by itself (value: ${e})`);if(isNaN(e))throw new Error("Invalid number: NaN");if(!isFinite(e))throw new Error("Invalid number: "+e);return new W4(String(e))}function VI(e){return new W4(e)}function zI(e){return Ou(e)?BigInt(e):parseFloat(e)}function qI(e,t){return Bb({"":e},"",e,t)}function Bb(e,t,r,n){return Array.isArray(r)?n.call(e,t,KI(r,n)):r&&typeof r=="object"&&!$I(r)?n.call(e,t,ZI(r,n)):n.call(e,t,r)}function ZI(e,t){return Object.keys(e).forEach(r=>{const n=Bb(e,r,e[r],t);n!==void 0?e[r]=n:delete e[r]}),e}function KI(e,t){for(let r=0;r2&&arguments[2]!==void 0?arguments[2]:VI,n=0;const a=o();return G(a),fe(),t?qI(a,t):a;function i(){if(e.charCodeAt(n)===QI){n++,d();const je={};let X=!0;for(;nje)return r(e.slice(je,n))}function M(){if(e.charCodeAt(n)!==oC)throw new SyntaxError(`Comma ',' expected after value ${Je()}`);n++}function j(){if(e.charCodeAt(n)!==fC)throw new SyntaxError(`Colon ':' expected after property name ${Je()}`);n++}function G(je){if(je===void 0)throw new SyntaxError(`JSON value expected ${Je()}`)}function $(je){if(je===void 0)throw new SyntaxError(`Array item expected ${Je()}`)}function fe(){if(n=Lb&&e<=Ub||e>=dC&&e<=pC||e>=uC&&e<=bC}function _h(e){return e>=Lb&&e<=Ub}function WI(e){return e>=sC&&e<=Ub}function YI(e){return e>=32&&e<=1114111}function Pb(e,t){return e===t?!0:Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((r,n)=>Pb(r,t[n])):J4(e)&&J4(t)?[...new Set([...Object.keys(e),...Object.keys(t)])].every(n=>Pb(e[n],t[n])):!1}function J4(e){return typeof e=="object"&&e!==null}const JI={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` +`,r:"\r",t:" "},XI=92,QI=123,X4=125,eC=91,Q4=93,tC=32,rC=10,nC=9,aC=13,Db=34,iC=43,e_=45,Lb=48,sC=49,Ub=57,oC=44,cC=46,fC=58,dC=65,uC=97,lC=69,hC=101,pC=70,bC=102;function t_(e,t,r,n){const a=gC(r),i=typeof t=="function"?t.call({"":e},"",e):e;return s(i,"");function s(l,y){if(Array.isArray(n)){const M=n.find(j=>j.test(l));if(M){const j=M.stringify(l);if(typeof j!="string"||!Z4(j))throw new Error(`Invalid JSON number: output of a number stringifier must be a string containing a JSON number (output: ${j})`);return j}}if(typeof l=="boolean"||typeof l=="number"||typeof l=="string"||l===null||l instanceof Date||l instanceof Boolean||l instanceof Number||l instanceof String)return JSON.stringify(l);if(l&&l.isLosslessNumber||typeof l=="bigint")return l.toString();if(Array.isArray(l))return o(l,y);if(l&&typeof l=="object")return c(l,y)}function o(l,y){if(l.length===0)return"[]";const M=a?y+a:void 0;let j=a?`[ +`:"[";for(let G=0;G{const he=typeof t=="function"?t.call(l,fe,l[fe]):l[fe];if(d(fe,he)){G?G=!1:$+=a?`, +`:",";const Oe=JSON.stringify(fe);$+=a?j+Oe+": ":Oe+":",$+=s(he,j)}}),$+=a?` +`+y+"}":"}",$}function d(l,y){return typeof y<"u"&&typeof y!="function"&&typeof y!="symbol"}}function gC(e){if(typeof e=="number")return" ".repeat(e);if(typeof e=="string"&&e!=="")return e}/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */const mC=4,r_=0,n_=1,yC=2;function dd(e){let t=e.length;for(;--t>=0;)e[t]=0}const _C=0,a_=1,vC=2,wC=3,EC=258,Fb=29,Nu=256,Ru=Nu+1+Fb,ud=30,Hb=19,i_=2*Ru+1,pf=15,jb=16,xC=7,$b=256,s_=16,o_=17,c_=18,Vb=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),vh=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),AC=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),f_=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),TC=512,Ro=new Array((Ru+2)*2);dd(Ro);const Mu=new Array(ud*2);dd(Mu);const Bu=new Array(TC);dd(Bu);const Pu=new Array(EC-wC+1);dd(Pu);const zb=new Array(Fb);dd(zb);const wh=new Array(ud);dd(wh);function qb(e,t,r,n,a){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=a,this.has_stree=e&&e.length}let d_,u_,l_;function Zb(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}const h_=e=>e<256?Bu[e]:Bu[256+(e>>>7)],Du=(e,t)=>{e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255},ri=(e,t,r)=>{e.bi_valid>jb-r?(e.bi_buf|=t<>jb-e.bi_valid,e.bi_valid+=r-jb):(e.bi_buf|=t<{ri(e,r[t*2],r[t*2+1])},p_=(e,t)=>{let r=0;do r|=e&1,e>>>=1,r<<=1;while(--t>0);return r>>>1},SC=e=>{e.bi_valid===16?(Du(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)},kC=(e,t)=>{const r=t.dyn_tree,n=t.max_code,a=t.stat_desc.static_tree,i=t.stat_desc.has_stree,s=t.stat_desc.extra_bits,o=t.stat_desc.extra_base,c=t.stat_desc.max_length;let d,l,y,M,j,G,$=0;for(M=0;M<=pf;M++)e.bl_count[M]=0;for(r[e.heap[e.heap_max]*2+1]=0,d=e.heap_max+1;dc&&(M=c,$++),r[l*2+1]=M,!(l>n)&&(e.bl_count[M]++,j=0,l>=o&&(j=s[l-o]),G=r[l*2],e.opt_len+=G*(M+j),i&&(e.static_len+=G*(a[l*2+1]+j)));if($!==0){do{for(M=c-1;e.bl_count[M]===0;)M--;e.bl_count[M]--,e.bl_count[M+1]+=2,e.bl_count[c]--,$-=2}while($>0);for(M=c;M!==0;M--)for(l=e.bl_count[M];l!==0;)y=e.heap[--d],!(y>n)&&(r[y*2+1]!==M&&(e.opt_len+=(M-r[y*2+1])*r[y*2],r[y*2+1]=M),l--)}},b_=(e,t,r)=>{const n=new Array(pf+1);let a=0,i,s;for(i=1;i<=pf;i++)a=a+r[i-1]<<1,n[i]=a;for(s=0;s<=t;s++){let o=e[s*2+1];o!==0&&(e[s*2]=p_(n[o]++,o))}},IC=()=>{let e,t,r,n,a;const i=new Array(pf+1);for(r=0,n=0;n>=7;n{let t;for(t=0;t{e.bi_valid>8?Du(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},y_=(e,t,r,n)=>{const a=t*2,i=r*2;return e[a]{const n=e.heap[r];let a=r<<1;for(;a<=e.heap_len&&(a{let n,a,i=0,s,o;if(e.sym_next!==0)do n=e.pending_buf[e.sym_buf+i++]&255,n+=(e.pending_buf[e.sym_buf+i++]&255)<<8,a=e.pending_buf[e.sym_buf+i++],n===0?Ps(e,a,t):(s=Pu[a],Ps(e,s+Nu+1,t),o=Vb[s],o!==0&&(a-=zb[s],ri(e,a,o)),n--,s=h_(n),Ps(e,s,r),o=vh[s],o!==0&&(n-=wh[s],ri(e,n,o)));while(i{const r=t.dyn_tree,n=t.stat_desc.static_tree,a=t.stat_desc.has_stree,i=t.stat_desc.elems;let s,o,c=-1,d;for(e.heap_len=0,e.heap_max=i_,s=0;s>1;s>=1;s--)Kb(e,r,s);d=i;do s=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Kb(e,r,1),o=e.heap[1],e.heap[--e.heap_max]=s,e.heap[--e.heap_max]=o,r[d*2]=r[s*2]+r[o*2],e.depth[d]=(e.depth[s]>=e.depth[o]?e.depth[s]:e.depth[o])+1,r[s*2+1]=r[o*2+1]=d,e.heap[1]=d++,Kb(e,r,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],kC(e,t),b_(r,c,e.bl_count)},v_=(e,t,r)=>{let n,a=-1,i,s=t[0*2+1],o=0,c=7,d=4;for(s===0&&(c=138,d=3),t[(r+1)*2+1]=65535,n=0;n<=r;n++)i=s,s=t[(n+1)*2+1],!(++o{let n,a=-1,i,s=t[0*2+1],o=0,c=7,d=4;for(s===0&&(c=138,d=3),n=0;n<=r;n++)if(i=s,s=t[(n+1)*2+1],!(++o{let t;for(v_(e,e.dyn_ltree,e.l_desc.max_code),v_(e,e.dyn_dtree,e.d_desc.max_code),Gb(e,e.bl_desc),t=Hb-1;t>=3&&e.bl_tree[f_[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t},OC=(e,t,r,n)=>{let a;for(ri(e,t-257,5),ri(e,r-1,5),ri(e,n-4,4),a=0;a{let t=4093624447,r;for(r=0;r<=31;r++,t>>>=1)if(t&1&&e.dyn_ltree[r*2]!==0)return r_;if(e.dyn_ltree[9*2]!==0||e.dyn_ltree[10*2]!==0||e.dyn_ltree[13*2]!==0)return n_;for(r=32;r{E_||(IC(),E_=!0),e.l_desc=new Zb(e.dyn_ltree,d_),e.d_desc=new Zb(e.dyn_dtree,u_),e.bl_desc=new Zb(e.bl_tree,l_),e.bi_buf=0,e.bi_valid=0,g_(e)},x_=(e,t,r,n)=>{ri(e,(_C<<1)+(n?1:0),3),m_(e),Du(e,r),Du(e,~r),r&&e.pending_buf.set(e.window.subarray(t,t+r),e.pending),e.pending+=r},MC=e=>{ri(e,a_<<1,3),Ps(e,$b,Ro),SC(e)},BC=(e,t,r,n)=>{let a,i,s=0;e.level>0?(e.strm.data_type===yC&&(e.strm.data_type=NC(e)),Gb(e,e.l_desc),Gb(e,e.d_desc),s=CC(e),a=e.opt_len+3+7>>>3,i=e.static_len+3+7>>>3,i<=a&&(a=i)):a=i=r+5,r+4<=a&&t!==-1?x_(e,t,r,n):e.strategy===mC||i===a?(ri(e,(a_<<1)+(n?1:0),3),__(e,Ro,Mu)):(ri(e,(vC<<1)+(n?1:0),3),OC(e,e.l_desc.max_code+1,e.d_desc.max_code+1,s+1),__(e,e.dyn_ltree,e.dyn_dtree)),g_(e),n&&m_(e)},PC=(e,t,r)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=r,t===0?e.dyn_ltree[r*2]++:(e.matches++,t--,e.dyn_ltree[(Pu[r]+Nu+1)*2]++,e.dyn_dtree[h_(t)*2]++),e.sym_next===e.sym_end);var DC=RC,LC=x_,UC=BC,FC=PC,HC=MC,jC={_tr_init:DC,_tr_stored_block:LC,_tr_flush_block:UC,_tr_tally:FC,_tr_align:HC},Lu=(e,t,r,n)=>{let a=e&65535|0,i=e>>>16&65535|0,s=0;for(;r!==0;){s=r>2e3?2e3:r,r-=s;do a=a+t[n++]|0,i=i+a|0;while(--s);a%=65521,i%=65521}return a|i<<16|0};const $C=()=>{let e,t=[];for(var r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=e&1?3988292384^e>>>1:e>>>1;t[r]=e}return t},VC=new Uint32Array($C());var Ca=(e,t,r,n)=>{const a=VC,i=n+r;e^=-1;for(let s=n;s>>8^a[(e^t[s])&255];return e^-1},bf={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},gf={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:zC,_tr_stored_block:Wb,_tr_flush_block:qC,_tr_tally:fc,_tr_align:ZC}=jC,{Z_NO_FLUSH:dc,Z_PARTIAL_FLUSH:KC,Z_FULL_FLUSH:GC,Z_FINISH:Ii,Z_BLOCK:A_,Z_OK:Da,Z_STREAM_END:T_,Z_STREAM_ERROR:Ds,Z_DATA_ERROR:WC,Z_BUF_ERROR:Yb,Z_DEFAULT_COMPRESSION:YC,Z_FILTERED:JC,Z_HUFFMAN_ONLY:Eh,Z_RLE:XC,Z_FIXED:QC,Z_DEFAULT_STRATEGY:eO,Z_UNKNOWN:tO,Z_DEFLATED:xh}=gf,rO=9,nO=15,aO=8,Jb=256+1+29,iO=30,sO=19,oO=2*Jb+1,cO=15,En=3,uc=258,Ls=uc+En+1,fO=32,ld=42,Xb=57,Qb=69,e2=73,t2=91,r2=103,mf=113,Uu=666,Ka=1,hd=2,yf=3,pd=4,dO=3,_f=(e,t)=>(e.msg=bf[t],t),S_=e=>e*2-(e>4?9:0),lc=e=>{let t=e.length;for(;--t>=0;)e[t]=0},uO=e=>{let t,r,n,a=e.w_size;t=e.hash_size,n=t;do r=e.head[--n],e.head[n]=r>=a?r-a:0;while(--t);t=a,n=t;do r=e.prev[--n],e.prev[n]=r>=a?r-a:0;while(--t)};let hc=(e,t,r)=>(t<{const t=e.state;let r=t.pending;r>e.avail_out&&(r=e.avail_out),r!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+r),e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,t.pending===0&&(t.pending_out=0))},ui=(e,t)=>{qC(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,di(e.strm)},Pn=(e,t)=>{e.pending_buf[e.pending++]=t},Fu=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255},n2=(e,t,r,n)=>{let a=e.avail_in;return a>n&&(a=n),a===0?0:(e.avail_in-=a,t.set(e.input.subarray(e.next_in,e.next_in+a),r),e.state.wrap===1?e.adler=Lu(e.adler,t,a,r):e.state.wrap===2&&(e.adler=Ca(e.adler,t,a,r)),e.next_in+=a,e.total_in+=a,a)},k_=(e,t)=>{let r=e.max_chain_length,n=e.strstart,a,i,s=e.prev_length,o=e.nice_match;const c=e.strstart>e.w_size-Ls?e.strstart-(e.w_size-Ls):0,d=e.window,l=e.w_mask,y=e.prev,M=e.strstart+uc;let j=d[n+s-1],G=d[n+s];e.prev_length>=e.good_match&&(r>>=2),o>e.lookahead&&(o=e.lookahead);do if(a=t,!(d[a+s]!==G||d[a+s-1]!==j||d[a]!==d[n]||d[++a]!==d[n+1])){n+=2,a++;do;while(d[++n]===d[++a]&&d[++n]===d[++a]&&d[++n]===d[++a]&&d[++n]===d[++a]&&d[++n]===d[++a]&&d[++n]===d[++a]&&d[++n]===d[++a]&&d[++n]===d[++a]&&ns){if(e.match_start=t,s=i,i>=o)break;j=d[n+s-1],G=d[n+s]}}while((t=y[t&l])>c&&--r!==0);return s<=e.lookahead?s:e.lookahead},bd=e=>{const t=e.w_size;let r,n,a;do{if(n=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-Ls)&&(e.window.set(e.window.subarray(t,t+t-n),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),uO(e),n+=t),e.strm.avail_in===0)break;if(r=n2(e.strm,e.window,e.strstart+e.lookahead,n),e.lookahead+=r,e.lookahead+e.insert>=En)for(a=e.strstart-e.insert,e.ins_h=e.window[a],e.ins_h=hc(e,e.ins_h,e.window[a+1]);e.insert&&(e.ins_h=hc(e,e.ins_h,e.window[a+En-1]),e.prev[a&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=a,a++,e.insert--,!(e.lookahead+e.insert{let r=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,n,a,i,s=0,o=e.strm.avail_in;do{if(n=65535,i=e.bi_valid+42>>3,e.strm.avail_outa+e.strm.avail_in&&(n=a+e.strm.avail_in),n>i&&(n=i),n>8,e.pending_buf[e.pending-2]=~n,e.pending_buf[e.pending-1]=~n>>8,di(e.strm),a&&(a>n&&(a=n),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+a),e.strm.next_out),e.strm.next_out+=a,e.strm.avail_out-=a,e.strm.total_out+=a,e.block_start+=a,n-=a),n&&(n2(e.strm,e.strm.output,e.strm.next_out,n),e.strm.next_out+=n,e.strm.avail_out-=n,e.strm.total_out+=n)}while(s===0);return o-=e.strm.avail_in,o&&(o>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=o&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-o,e.strm.next_in),e.strstart),e.strstart+=o,e.insert+=o>e.w_size-e.insert?e.w_size-e.insert:o),e.block_start=e.strstart),e.high_wateri&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,i+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),i>e.strm.avail_in&&(i=e.strm.avail_in),i&&(n2(e.strm,e.window,e.strstart,i),e.strstart+=i,e.insert+=i>e.w_size-e.insert?e.w_size-e.insert:i),e.high_water>3,i=e.pending_buf_size-i>65535?65535:e.pending_buf_size-i,r=i>e.w_size?e.w_size:i,a=e.strstart-e.block_start,(a>=r||(a||t===Ii)&&t!==dc&&e.strm.avail_in===0&&a<=i)&&(n=a>i?i:a,s=t===Ii&&e.strm.avail_in===0&&n===a?1:0,Wb(e,e.block_start,n,s),e.block_start+=n,di(e.strm)),s?yf:Ka)},a2=(e,t)=>{let r,n;for(;;){if(e.lookahead=En&&(e.ins_h=hc(e,e.ins_h,e.window[e.strstart+En-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),r!==0&&e.strstart-r<=e.w_size-Ls&&(e.match_length=k_(e,r)),e.match_length>=En)if(n=fc(e,e.strstart-e.match_start,e.match_length-En),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=En){e.match_length--;do e.strstart++,e.ins_h=hc(e,e.ins_h,e.window[e.strstart+En-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=hc(e,e.ins_h,e.window[e.strstart+1]);else n=fc(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(ui(e,!1),e.strm.avail_out===0))return Ka}return e.insert=e.strstart{let r,n,a;for(;;){if(e.lookahead=En&&(e.ins_h=hc(e,e.ins_h,e.window[e.strstart+En-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=En-1,r!==0&&e.prev_length4096)&&(e.match_length=En-1)),e.prev_length>=En&&e.match_length<=e.prev_length){a=e.strstart+e.lookahead-En,n=fc(e,e.strstart-1-e.prev_match,e.prev_length-En),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=a&&(e.ins_h=hc(e,e.ins_h,e.window[e.strstart+En-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=En-1,e.strstart++,n&&(ui(e,!1),e.strm.avail_out===0))return Ka}else if(e.match_available){if(n=fc(e,0,e.window[e.strstart-1]),n&&ui(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return Ka}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=fc(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart{let r,n,a,i;const s=e.window;for(;;){if(e.lookahead<=uc){if(bd(e),e.lookahead<=uc&&t===dc)return Ka;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=En&&e.strstart>0&&(a=e.strstart-1,n=s[a],n===s[++a]&&n===s[++a]&&n===s[++a])){i=e.strstart+uc;do;while(n===s[++a]&&n===s[++a]&&n===s[++a]&&n===s[++a]&&n===s[++a]&&n===s[++a]&&n===s[++a]&&n===s[++a]&&ae.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=En?(r=fc(e,1,e.match_length-En),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=fc(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(ui(e,!1),e.strm.avail_out===0))return Ka}return e.insert=0,t===Ii?(ui(e,!0),e.strm.avail_out===0?yf:pd):e.sym_next&&(ui(e,!1),e.strm.avail_out===0)?Ka:hd},hO=(e,t)=>{let r;for(;;){if(e.lookahead===0&&(bd(e),e.lookahead===0)){if(t===dc)return Ka;break}if(e.match_length=0,r=fc(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(ui(e,!1),e.strm.avail_out===0))return Ka}return e.insert=0,t===Ii?(ui(e,!0),e.strm.avail_out===0?yf:pd):e.sym_next&&(ui(e,!1),e.strm.avail_out===0)?Ka:hd};function Us(e,t,r,n,a){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=a}const Hu=[new Us(0,0,0,0,I_),new Us(4,4,8,4,a2),new Us(4,5,16,8,a2),new Us(4,6,32,32,a2),new Us(4,4,16,16,gd),new Us(8,16,32,32,gd),new Us(8,16,128,128,gd),new Us(8,32,128,256,gd),new Us(32,128,258,1024,gd),new Us(32,258,258,4096,gd)],pO=e=>{e.window_size=2*e.w_size,lc(e.head),e.max_lazy_match=Hu[e.level].max_lazy,e.good_match=Hu[e.level].good_length,e.nice_match=Hu[e.level].nice_length,e.max_chain_length=Hu[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=En-1,e.match_available=0,e.ins_h=0};function bO(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=xh,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(oO*2),this.dyn_dtree=new Uint16Array((2*iO+1)*2),this.bl_tree=new Uint16Array((2*sO+1)*2),lc(this.dyn_ltree),lc(this.dyn_dtree),lc(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(cO+1),this.heap=new Uint16Array(2*Jb+1),lc(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*Jb+1),lc(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const ju=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.status!==ld&&t.status!==Xb&&t.status!==Qb&&t.status!==e2&&t.status!==t2&&t.status!==r2&&t.status!==mf&&t.status!==Uu?1:0},C_=e=>{if(ju(e))return _f(e,Ds);e.total_in=e.total_out=0,e.data_type=tO;const t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?Xb:t.wrap?ld:mf,e.adler=t.wrap===2?0:1,t.last_flush=-2,zC(t),Da},O_=e=>{const t=C_(e);return t===Da&&pO(e.state),t},gO=(e,t)=>ju(e)||e.state.wrap!==2?Ds:(e.state.gzhead=t,Da),N_=(e,t,r,n,a,i)=>{if(!e)return Ds;let s=1;if(t===YC&&(t=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),a<1||a>rO||r!==xh||n<8||n>15||t<0||t>9||i<0||i>QC||n===8&&s!==1)return _f(e,Ds);n===8&&(n=9);const o=new bO;return e.state=o,o.strm=e,o.status=ld,o.wrap=s,o.gzhead=null,o.w_bits=n,o.w_size=1<N_(e,t,xh,nO,aO,eO),yO=(e,t)=>{if(ju(e)||t>A_||t<0)return e?_f(e,Ds):Ds;const r=e.state;if(!e.output||e.avail_in!==0&&!e.input||r.status===Uu&&t!==Ii)return _f(e,e.avail_out===0?Yb:Ds);const n=r.last_flush;if(r.last_flush=t,r.pending!==0){if(di(e),e.avail_out===0)return r.last_flush=-1,Da}else if(e.avail_in===0&&S_(t)<=S_(n)&&t!==Ii)return _f(e,Yb);if(r.status===Uu&&e.avail_in!==0)return _f(e,Yb);if(r.status===ld&&r.wrap===0&&(r.status=mf),r.status===ld){let a=xh+(r.w_bits-8<<4)<<8,i=-1;if(r.strategy>=Eh||r.level<2?i=0:r.level<6?i=1:r.level===6?i=2:i=3,a|=i<<6,r.strstart!==0&&(a|=fO),a+=31-a%31,Fu(r,a),r.strstart!==0&&(Fu(r,e.adler>>>16),Fu(r,e.adler&65535)),e.adler=1,r.status=mf,di(e),r.pending!==0)return r.last_flush=-1,Da}if(r.status===Xb){if(e.adler=0,Pn(r,31),Pn(r,139),Pn(r,8),r.gzhead)Pn(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),Pn(r,r.gzhead.time&255),Pn(r,r.gzhead.time>>8&255),Pn(r,r.gzhead.time>>16&255),Pn(r,r.gzhead.time>>24&255),Pn(r,r.level===9?2:r.strategy>=Eh||r.level<2?4:0),Pn(r,r.gzhead.os&255),r.gzhead.extra&&r.gzhead.extra.length&&(Pn(r,r.gzhead.extra.length&255),Pn(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=Ca(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=Qb;else if(Pn(r,0),Pn(r,0),Pn(r,0),Pn(r,0),Pn(r,0),Pn(r,r.level===9?2:r.strategy>=Eh||r.level<2?4:0),Pn(r,dO),r.status=mf,di(e),r.pending!==0)return r.last_flush=-1,Da}if(r.status===Qb){if(r.gzhead.extra){let a=r.pending,i=(r.gzhead.extra.length&65535)-r.gzindex;for(;r.pending+i>r.pending_buf_size;){let o=r.pending_buf_size-r.pending;if(r.pending_buf.set(r.gzhead.extra.subarray(r.gzindex,r.gzindex+o),r.pending),r.pending=r.pending_buf_size,r.gzhead.hcrc&&r.pending>a&&(e.adler=Ca(e.adler,r.pending_buf,r.pending-a,a)),r.gzindex+=o,di(e),r.pending!==0)return r.last_flush=-1,Da;a=0,i-=o}let s=new Uint8Array(r.gzhead.extra);r.pending_buf.set(s.subarray(r.gzindex,r.gzindex+i),r.pending),r.pending+=i,r.gzhead.hcrc&&r.pending>a&&(e.adler=Ca(e.adler,r.pending_buf,r.pending-a,a)),r.gzindex=0}r.status=e2}if(r.status===e2){if(r.gzhead.name){let a=r.pending,i;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>a&&(e.adler=Ca(e.adler,r.pending_buf,r.pending-a,a)),di(e),r.pending!==0)return r.last_flush=-1,Da;a=0}r.gzindexa&&(e.adler=Ca(e.adler,r.pending_buf,r.pending-a,a)),r.gzindex=0}r.status=t2}if(r.status===t2){if(r.gzhead.comment){let a=r.pending,i;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>a&&(e.adler=Ca(e.adler,r.pending_buf,r.pending-a,a)),di(e),r.pending!==0)return r.last_flush=-1,Da;a=0}r.gzindexa&&(e.adler=Ca(e.adler,r.pending_buf,r.pending-a,a))}r.status=r2}if(r.status===r2){if(r.gzhead.hcrc){if(r.pending+2>r.pending_buf_size&&(di(e),r.pending!==0))return r.last_flush=-1,Da;Pn(r,e.adler&255),Pn(r,e.adler>>8&255),e.adler=0}if(r.status=mf,di(e),r.pending!==0)return r.last_flush=-1,Da}if(e.avail_in!==0||r.lookahead!==0||t!==dc&&r.status!==Uu){let a=r.level===0?I_(r,t):r.strategy===Eh?hO(r,t):r.strategy===XC?lO(r,t):Hu[r.level].func(r,t);if((a===yf||a===pd)&&(r.status=Uu),a===Ka||a===yf)return e.avail_out===0&&(r.last_flush=-1),Da;if(a===hd&&(t===KC?ZC(r):t!==A_&&(Wb(r,0,0,!1),t===GC&&(lc(r.head),r.lookahead===0&&(r.strstart=0,r.block_start=0,r.insert=0))),di(e),e.avail_out===0))return r.last_flush=-1,Da}return t!==Ii?Da:r.wrap<=0?T_:(r.wrap===2?(Pn(r,e.adler&255),Pn(r,e.adler>>8&255),Pn(r,e.adler>>16&255),Pn(r,e.adler>>24&255),Pn(r,e.total_in&255),Pn(r,e.total_in>>8&255),Pn(r,e.total_in>>16&255),Pn(r,e.total_in>>24&255)):(Fu(r,e.adler>>>16),Fu(r,e.adler&65535)),di(e),r.wrap>0&&(r.wrap=-r.wrap),r.pending!==0?Da:T_)},_O=e=>{if(ju(e))return Ds;const t=e.state.status;return e.state=null,t===mf?_f(e,WC):Da},vO=(e,t)=>{let r=t.length;if(ju(e))return Ds;const n=e.state,a=n.wrap;if(a===2||a===1&&n.status!==ld||n.lookahead)return Ds;if(a===1&&(e.adler=Lu(e.adler,t,r,0)),n.wrap=0,r>=n.w_size){a===0&&(lc(n.head),n.strstart=0,n.block_start=0,n.insert=0);let c=new Uint8Array(n.w_size);c.set(t.subarray(r-n.w_size,r),0),t=c,r=n.w_size}const i=e.avail_in,s=e.next_in,o=e.input;for(e.avail_in=r,e.next_in=0,e.input=t,bd(n);n.lookahead>=En;){let c=n.strstart,d=n.lookahead-(En-1);do n.ins_h=hc(n,n.ins_h,n.window[c+En-1]),n.prev[c&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=c,c++;while(--d);n.strstart=c,n.lookahead=En-1,bd(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=En-1,n.match_available=0,e.next_in=s,e.input=o,e.avail_in=i,n.wrap=a,Da};var wO=mO,EO=N_,xO=O_,AO=C_,TO=gO,SO=yO,kO=_O,IO=vO,CO="pako deflate (from Nodeca project)",$u={deflateInit:wO,deflateInit2:EO,deflateReset:xO,deflateResetKeep:AO,deflateSetHeader:TO,deflate:SO,deflateEnd:kO,deflateSetDictionary:IO,deflateInfo:CO};const OO=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var NO=function(e){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const r=t.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(const n in r)OO(r,n)&&(e[n]=r[n])}}return e},RO=e=>{let t=0;for(let n=0,a=e.length;n=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;Vu[254]=Vu[254]=1;var MO=e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,r,n,a,i,s=e.length,o=0;for(a=0;a>>6,t[i++]=128|r&63):r<65536?(t[i++]=224|r>>>12,t[i++]=128|r>>>6&63,t[i++]=128|r&63):(t[i++]=240|r>>>18,t[i++]=128|r>>>12&63,t[i++]=128|r>>>6&63,t[i++]=128|r&63);return t};const BO=(e,t)=>{if(t<65534&&e.subarray&&R_)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let r="";for(let n=0;n{const r=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let n,a;const i=new Array(r*2);for(a=0,n=0;n4){i[a++]=65533,n+=o-1;continue}for(s&=o===2?31:o===3?15:7;o>1&&n1){i[a++]=65533;continue}s<65536?i[a++]=s:(s-=65536,i[a++]=55296|s>>10&1023,i[a++]=56320|s&1023)}return BO(i,a)},DO=(e,t)=>{t=t||e.length,t>e.length&&(t=e.length);let r=t-1;for(;r>=0&&(e[r]&192)===128;)r--;return r<0||r===0?t:r+Vu[e[r]]>t?r:t},zu={string2buf:MO,buf2string:PO,utf8border:DO};function LO(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var M_=LO;const B_=Object.prototype.toString,{Z_NO_FLUSH:UO,Z_SYNC_FLUSH:FO,Z_FULL_FLUSH:HO,Z_FINISH:jO,Z_OK:Th,Z_STREAM_END:$O,Z_DEFAULT_COMPRESSION:VO,Z_DEFAULT_STRATEGY:zO,Z_DEFLATED:qO}=gf;function qu(e){this.options=Ah.assign({level:VO,method:qO,chunkSize:16384,windowBits:15,memLevel:8,strategy:zO},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new M_,this.strm.avail_out=0;let r=$u.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==Th)throw new Error(bf[r]);if(t.header&&$u.deflateSetHeader(this.strm,t.header),t.dictionary){let n;if(typeof t.dictionary=="string"?n=zu.string2buf(t.dictionary):B_.call(t.dictionary)==="[object ArrayBuffer]"?n=new Uint8Array(t.dictionary):n=t.dictionary,r=$u.deflateSetDictionary(this.strm,n),r!==Th)throw new Error(bf[r]);this._dict_set=!0}}qu.prototype.push=function(e,t){const r=this.strm,n=this.options.chunkSize;let a,i;if(this.ended)return!1;for(t===~~t?i=t:i=t===!0?jO:UO,typeof e=="string"?r.input=zu.string2buf(e):B_.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){if(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),(i===FO||i===HO)&&r.avail_out<=6){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(a=$u.deflate(r,i),a===$O)return r.next_out>0&&this.onData(r.output.subarray(0,r.next_out)),a=$u.deflateEnd(this.strm),this.onEnd(a),this.ended=!0,a===Th;if(r.avail_out===0){this.onData(r.output);continue}if(i>0&&r.next_out>0){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(r.avail_in===0)break}return!0},qu.prototype.onData=function(e){this.chunks.push(e)},qu.prototype.onEnd=function(e){e===Th&&(this.result=Ah.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function i2(e,t){const r=new qu(t);if(r.push(e,!0),r.err)throw r.msg||bf[r.err];return r.result}function ZO(e,t){return t=t||{},t.raw=!0,i2(e,t)}function KO(e,t){return t=t||{},t.gzip=!0,i2(e,t)}var GO=qu,WO=i2,YO=ZO,JO=KO,XO=gf,QO={Deflate:GO,deflate:WO,deflateRaw:YO,gzip:JO,constants:XO};const Sh=16209,eN=16191;var tN=function(t,r){let n,a,i,s,o,c,d,l,y,M,j,G,$,fe,he,Oe,We,et,ht,tt,He,Y,ve,me;const Ne=t.state;n=t.next_in,ve=t.input,a=n+(t.avail_in-5),i=t.next_out,me=t.output,s=i-(r-t.avail_out),o=i+(t.avail_out-257),c=Ne.dmax,d=Ne.wsize,l=Ne.whave,y=Ne.wnext,M=Ne.window,j=Ne.hold,G=Ne.bits,$=Ne.lencode,fe=Ne.distcode,he=(1<>>24,j>>>=et,G-=et,et=We>>>16&255,et===0)me[i++]=We&65535;else if(et&16){ht=We&65535,et&=15,et&&(G>>=et,G-=et),G<15&&(j+=ve[n++]<>>24,j>>>=et,G-=et,et=We>>>16&255,et&16){if(tt=We&65535,et&=15,Gc){t.msg="invalid distance too far back",Ne.mode=Sh;break e}if(j>>>=et,G-=et,et=i-s,tt>et){if(et=tt-et,et>l&&Ne.sane){t.msg="invalid distance too far back",Ne.mode=Sh;break e}if(He=0,Y=M,y===0){if(He+=d-et,et2;)me[i++]=Y[He++],me[i++]=Y[He++],me[i++]=Y[He++],ht-=3;ht&&(me[i++]=Y[He++],ht>1&&(me[i++]=Y[He++]))}else{He=i-tt;do me[i++]=me[He++],me[i++]=me[He++],me[i++]=me[He++],ht-=3;while(ht>2);ht&&(me[i++]=me[He++],ht>1&&(me[i++]=me[He++]))}}else if(et&64){t.msg="invalid distance code",Ne.mode=Sh;break e}else{We=fe[(We&65535)+(j&(1<>3,n-=ht,G-=ht<<3,j&=(1<{const c=o.bits;let d=0,l=0,y=0,M=0,j=0,G=0,$=0,fe=0,he=0,Oe=0,We,et,ht,tt,He,Y=null,ve;const me=new Uint16Array(md+1),Ne=new Uint16Array(md+1);let qe=null,Je,je,X;for(d=0;d<=md;d++)me[d]=0;for(l=0;l=1&&me[M]===0;M--);if(j>M&&(j=M),M===0)return a[i++]=1<<24|64<<16|0,a[i++]=1<<24|64<<16|0,o.bits=1,0;for(y=1;y0&&(e===L_||M!==1))return-1;for(Ne[1]=0,d=1;dP_||e===U_&&he>D_)return 1;for(;;){Je=d-$,s[l]+1=ve?(je=qe[s[l]-ve],X=Y[s[l]-ve]):(je=96,X=0),We=1<>$)+et]=Je<<24|je<<16|X|0;while(et!==0);for(We=1<>=1;if(We!==0?(Oe&=We-1,Oe+=We):Oe=0,l++,--me[d]===0){if(d===M)break;d=t[r+s[l]]}if(d>j&&(Oe&tt)!==ht){for($===0&&($=j),He+=y,G=d-$,fe=1<P_||e===U_&&he>D_)return 1;ht=Oe&tt,a[ht]=j<<24|G<<16|He-i|0}}return Oe!==0&&(a[He+Oe]=d-$<<24|64<<16|0),o.bits=j,0};const sN=0,F_=1,H_=2,{Z_FINISH:j_,Z_BLOCK:oN,Z_TREES:kh,Z_OK:vf,Z_STREAM_END:cN,Z_NEED_DICT:fN,Z_STREAM_ERROR:Ci,Z_DATA_ERROR:$_,Z_MEM_ERROR:V_,Z_BUF_ERROR:dN,Z_DEFLATED:z_}=gf,Ih=16180,q_=16181,Z_=16182,K_=16183,G_=16184,W_=16185,Y_=16186,J_=16187,X_=16188,Q_=16189,Ch=16190,Mo=16191,o2=16192,e5=16193,c2=16194,t5=16195,r5=16196,n5=16197,a5=16198,Oh=16199,Nh=16200,i5=16201,s5=16202,o5=16203,c5=16204,f5=16205,f2=16206,d5=16207,u5=16208,aa=16209,l5=16210,h5=16211,uN=852,lN=592,hN=15,p5=e=>(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24);function pN(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const wf=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.modeh5?1:0},b5=e=>{if(wf(e))return Ci;const t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=Ih,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(uN),t.distcode=t.distdyn=new Int32Array(lN),t.sane=1,t.back=-1,vf},g5=e=>{if(wf(e))return Ci;const t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,b5(e)},m5=(e,t)=>{let r;if(wf(e))return Ci;const n=e.state;return t<0?(r=0,t=-t):(r=(t>>4)+5,t<48&&(t&=15)),t&&(t<8||t>15)?Ci:(n.window!==null&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,g5(e))},y5=(e,t)=>{if(!e)return Ci;const r=new pN;e.state=r,r.strm=e,r.window=null,r.mode=Ih;const n=m5(e,t);return n!==vf&&(e.state=null),n},bN=e=>y5(e,hN);let _5=!0,d2,u2;const gN=e=>{if(_5){d2=new Int32Array(512),u2=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(Zu(F_,e.lens,0,288,d2,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;Zu(H_,e.lens,0,32,u2,0,e.work,{bits:5}),_5=!1}e.lencode=d2,e.lenbits=9,e.distcode=u2,e.distbits=5},v5=(e,t,r,n)=>{let a;const i=e.state;return i.window===null&&(i.wsize=1<=i.wsize?(i.window.set(t.subarray(r-i.wsize,r),0),i.wnext=0,i.whave=i.wsize):(a=i.wsize-i.wnext,a>n&&(a=n),i.window.set(t.subarray(r-n,r-n+a),i.wnext),n-=a,n?(i.window.set(t.subarray(r-n,r),0),i.wnext=n,i.whave=i.wsize):(i.wnext+=a,i.wnext===i.wsize&&(i.wnext=0),i.whave{let r,n,a,i,s,o,c,d,l,y,M,j,G,$,fe=0,he,Oe,We,et,ht,tt,He,Y;const ve=new Uint8Array(4);let me,Ne;const qe=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(wf(e)||!e.output||!e.input&&e.avail_in!==0)return Ci;r=e.state,r.mode===Mo&&(r.mode=o2),s=e.next_out,a=e.output,c=e.avail_out,i=e.next_in,n=e.input,o=e.avail_in,d=r.hold,l=r.bits,y=o,M=c,Y=vf;e:for(;;)switch(r.mode){case Ih:if(r.wrap===0){r.mode=o2;break}for(;l<16;){if(o===0)break e;o--,d+=n[i++]<>>8&255,r.check=Ca(r.check,ve,2,0),d=0,l=0,r.mode=q_;break}if(r.head&&(r.head.done=!1),!(r.wrap&1)||(((d&255)<<8)+(d>>8))%31){e.msg="incorrect header check",r.mode=aa;break}if((d&15)!==z_){e.msg="unknown compression method",r.mode=aa;break}if(d>>>=4,l-=4,He=(d&15)+8,r.wbits===0&&(r.wbits=He),He>15||He>r.wbits){e.msg="invalid window size",r.mode=aa;break}r.dmax=1<>8&1),r.flags&512&&r.wrap&4&&(ve[0]=d&255,ve[1]=d>>>8&255,r.check=Ca(r.check,ve,2,0)),d=0,l=0,r.mode=Z_;case Z_:for(;l<32;){if(o===0)break e;o--,d+=n[i++]<>>8&255,ve[2]=d>>>16&255,ve[3]=d>>>24&255,r.check=Ca(r.check,ve,4,0)),d=0,l=0,r.mode=K_;case K_:for(;l<16;){if(o===0)break e;o--,d+=n[i++]<>8),r.flags&512&&r.wrap&4&&(ve[0]=d&255,ve[1]=d>>>8&255,r.check=Ca(r.check,ve,2,0)),d=0,l=0,r.mode=G_;case G_:if(r.flags&1024){for(;l<16;){if(o===0)break e;o--,d+=n[i++]<>>8&255,r.check=Ca(r.check,ve,2,0)),d=0,l=0}else r.head&&(r.head.extra=null);r.mode=W_;case W_:if(r.flags&1024&&(j=r.length,j>o&&(j=o),j&&(r.head&&(He=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(n.subarray(i,i+j),He)),r.flags&512&&r.wrap&4&&(r.check=Ca(r.check,n,j,i)),o-=j,i+=j,r.length-=j),r.length))break e;r.length=0,r.mode=Y_;case Y_:if(r.flags&2048){if(o===0)break e;j=0;do He=n[i+j++],r.head&&He&&r.length<65536&&(r.head.name+=String.fromCharCode(He));while(He&&j>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=Mo;break;case Q_:for(;l<32;){if(o===0)break e;o--,d+=n[i++]<>>=l&7,l-=l&7,r.mode=f2;break}for(;l<3;){if(o===0)break e;o--,d+=n[i++]<>>=1,l-=1,d&3){case 0:r.mode=e5;break;case 1:if(gN(r),r.mode=Oh,t===kh){d>>>=2,l-=2;break e}break;case 2:r.mode=r5;break;case 3:e.msg="invalid block type",r.mode=aa}d>>>=2,l-=2;break;case e5:for(d>>>=l&7,l-=l&7;l<32;){if(o===0)break e;o--,d+=n[i++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=aa;break}if(r.length=d&65535,d=0,l=0,r.mode=c2,t===kh)break e;case c2:r.mode=t5;case t5:if(j=r.length,j){if(j>o&&(j=o),j>c&&(j=c),j===0)break e;a.set(n.subarray(i,i+j),s),o-=j,i+=j,c-=j,s+=j,r.length-=j;break}r.mode=Mo;break;case r5:for(;l<14;){if(o===0)break e;o--,d+=n[i++]<>>=5,l-=5,r.ndist=(d&31)+1,d>>>=5,l-=5,r.ncode=(d&15)+4,d>>>=4,l-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=aa;break}r.have=0,r.mode=n5;case n5:for(;r.have>>=3,l-=3}for(;r.have<19;)r.lens[qe[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,me={bits:r.lenbits},Y=Zu(sN,r.lens,0,19,r.lencode,0,r.work,me),r.lenbits=me.bits,Y){e.msg="invalid code lengths set",r.mode=aa;break}r.have=0,r.mode=a5;case a5:for(;r.have>>24,Oe=fe>>>16&255,We=fe&65535,!(he<=l);){if(o===0)break e;o--,d+=n[i++]<>>=he,l-=he,r.lens[r.have++]=We;else{if(We===16){for(Ne=he+2;l>>=he,l-=he,r.have===0){e.msg="invalid bit length repeat",r.mode=aa;break}He=r.lens[r.have-1],j=3+(d&3),d>>>=2,l-=2}else if(We===17){for(Ne=he+3;l>>=he,l-=he,He=0,j=3+(d&7),d>>>=3,l-=3}else{for(Ne=he+7;l>>=he,l-=he,He=0,j=11+(d&127),d>>>=7,l-=7}if(r.have+j>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=aa;break}for(;j--;)r.lens[r.have++]=He}}if(r.mode===aa)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=aa;break}if(r.lenbits=9,me={bits:r.lenbits},Y=Zu(F_,r.lens,0,r.nlen,r.lencode,0,r.work,me),r.lenbits=me.bits,Y){e.msg="invalid literal/lengths set",r.mode=aa;break}if(r.distbits=6,r.distcode=r.distdyn,me={bits:r.distbits},Y=Zu(H_,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,me),r.distbits=me.bits,Y){e.msg="invalid distances set",r.mode=aa;break}if(r.mode=Oh,t===kh)break e;case Oh:r.mode=Nh;case Nh:if(o>=6&&c>=258){e.next_out=s,e.avail_out=c,e.next_in=i,e.avail_in=o,r.hold=d,r.bits=l,tN(e,M),s=e.next_out,a=e.output,c=e.avail_out,i=e.next_in,n=e.input,o=e.avail_in,d=r.hold,l=r.bits,r.mode===Mo&&(r.back=-1);break}for(r.back=0;fe=r.lencode[d&(1<>>24,Oe=fe>>>16&255,We=fe&65535,!(he<=l);){if(o===0)break e;o--,d+=n[i++]<>et)],he=fe>>>24,Oe=fe>>>16&255,We=fe&65535,!(et+he<=l);){if(o===0)break e;o--,d+=n[i++]<>>=et,l-=et,r.back+=et}if(d>>>=he,l-=he,r.back+=he,r.length=We,Oe===0){r.mode=f5;break}if(Oe&32){r.back=-1,r.mode=Mo;break}if(Oe&64){e.msg="invalid literal/length code",r.mode=aa;break}r.extra=Oe&15,r.mode=i5;case i5:if(r.extra){for(Ne=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=s5;case s5:for(;fe=r.distcode[d&(1<>>24,Oe=fe>>>16&255,We=fe&65535,!(he<=l);){if(o===0)break e;o--,d+=n[i++]<>et)],he=fe>>>24,Oe=fe>>>16&255,We=fe&65535,!(et+he<=l);){if(o===0)break e;o--,d+=n[i++]<>>=et,l-=et,r.back+=et}if(d>>>=he,l-=he,r.back+=he,Oe&64){e.msg="invalid distance code",r.mode=aa;break}r.offset=We,r.extra=Oe&15,r.mode=o5;case o5:if(r.extra){for(Ne=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=aa;break}r.mode=c5;case c5:if(c===0)break e;if(j=M-c,r.offset>j){if(j=r.offset-j,j>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=aa;break}j>r.wnext?(j-=r.wnext,G=r.wsize-j):G=r.wnext-j,j>r.length&&(j=r.length),$=r.window}else $=a,G=s-r.offset,j=r.length;j>c&&(j=c),c-=j,r.length-=j;do a[s++]=$[G++];while(--j);r.length===0&&(r.mode=Nh);break;case f5:if(c===0)break e;a[s++]=r.length,c--,r.mode=Nh;break;case f2:if(r.wrap){for(;l<32;){if(o===0)break e;o--,d|=n[i++]<{if(wf(e))return Ci;let t=e.state;return t.window&&(t.window=null),e.state=null,vf},_N=(e,t)=>{if(wf(e))return Ci;const r=e.state;return r.wrap&2?(r.head=t,t.done=!1,vf):Ci},vN=(e,t)=>{const r=t.length;let n,a,i;return wf(e)||(n=e.state,n.wrap!==0&&n.mode!==Ch)?Ci:n.mode===Ch&&(a=1,a=Lu(a,t,r,0),a!==n.check)?$_:(i=v5(e,t,r,r),i?(n.mode=l5,V_):(n.havedict=1,vf))};var wN=g5,EN=m5,xN=b5,AN=bN,TN=y5,SN=mN,kN=yN,IN=_N,CN=vN,ON="pako inflate (from Nodeca project)",Bo={inflateReset:wN,inflateReset2:EN,inflateResetKeep:xN,inflateInit:AN,inflateInit2:TN,inflate:SN,inflateEnd:kN,inflateGetHeader:IN,inflateSetDictionary:CN,inflateInfo:ON};function NN(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var RN=NN;const w5=Object.prototype.toString,{Z_NO_FLUSH:MN,Z_FINISH:BN,Z_OK:Ku,Z_STREAM_END:l2,Z_NEED_DICT:h2,Z_STREAM_ERROR:PN,Z_DATA_ERROR:E5,Z_MEM_ERROR:DN}=gf;function Gu(e){this.options=Ah.assign({chunkSize:1024*64,windowBits:15,to:""},e||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(t.windowBits&15||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new M_,this.strm.avail_out=0;let r=Bo.inflateInit2(this.strm,t.windowBits);if(r!==Ku)throw new Error(bf[r]);if(this.header=new RN,Bo.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=zu.string2buf(t.dictionary):w5.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=Bo.inflateSetDictionary(this.strm,t.dictionary),r!==Ku)))throw new Error(bf[r])}Gu.prototype.push=function(e,t){const r=this.strm,n=this.options.chunkSize,a=this.options.dictionary;let i,s,o;if(this.ended)return!1;for(t===~~t?s=t:s=t===!0?BN:MN,w5.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){for(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),i=Bo.inflate(r,s),i===h2&&a&&(i=Bo.inflateSetDictionary(r,a),i===Ku?i=Bo.inflate(r,s):i===E5&&(i=h2));r.avail_in>0&&i===l2&&r.state.wrap>0&&e[r.next_in]!==0;)Bo.inflateReset(r),i=Bo.inflate(r,s);switch(i){case PN:case E5:case h2:case DN:return this.onEnd(i),this.ended=!0,!1}if(o=r.avail_out,r.next_out&&(r.avail_out===0||i===l2))if(this.options.to==="string"){let c=zu.utf8border(r.output,r.next_out),d=r.next_out-c,l=zu.buf2string(r.output,c);r.next_out=d,r.avail_out=n-d,d&&r.output.set(r.output.subarray(c,c+d),0),this.onData(l)}else this.onData(r.output.length===r.next_out?r.output:r.output.subarray(0,r.next_out));if(!(i===Ku&&o===0)){if(i===l2)return i=Bo.inflateEnd(this.strm),this.onEnd(i),this.ended=!0,!0;if(r.avail_in===0)break}}return!0},Gu.prototype.onData=function(e){this.chunks.push(e)},Gu.prototype.onEnd=function(e){e===Ku&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Ah.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function p2(e,t){const r=new Gu(t);if(r.push(e),r.err)throw r.msg||bf[r.err];return r.result}function LN(e,t){return t=t||{},t.raw=!0,p2(e,t)}var UN=Gu,FN=p2,HN=LN,jN=p2,$N=gf,VN={Inflate:UN,inflate:FN,inflateRaw:HN,ungzip:jN,constants:$N};const{Deflate:zN,deflate:qN,deflateRaw:ZN,gzip:KN}=QO,{Inflate:GN,inflate:WN,inflateRaw:YN,ungzip:JN}=VN;var XN=zN,QN=qN,eR=ZN,Rh=KN,tR=GN,rR=WN,nR=YN,b2=JN,aR=gf,zX={Deflate:XN,deflate:QN,deflateRaw:eR,gzip:Rh,Inflate:tR,inflate:rR,inflateRaw:nR,ungzip:b2,constants:aR};function iR(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);const a=BigInt(32),i=BigInt(4294967295),s=Number(r>>a&i),o=Number(r&i),c=n?4:0,d=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+d,o,n)}const sR=(e,t,r)=>e&t^~e&r,oR=(e,t,r)=>e&t^e&r^t&r;class cR extends db{constructor(t,r,n,a){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=fb(this.buffer)}update(t){df(this);const{view:r,buffer:n,blockLen:a}=this;t=rd(t);const i=t.length;for(let s=0;sa-s&&(this.process(n,0),s=0);for(let y=s;yl.length)throw new Error("_sha2: outputLen bigger than state");for(let y=0;y>>3,$=Rs(j,17)^Rs(j,19)^j>>>10;bc[y]=$+bc[y-7]+G+bc[y-16]|0}let{A:n,B:a,C:i,D:s,E:o,F:c,G:d,H:l}=this;for(let y=0;y<64;y++){const M=Rs(o,6)^Rs(o,11)^Rs(o,25),j=l+M+sR(o,c,d)+fR[y]+bc[y]|0,$=(Rs(n,2)^Rs(n,13)^Rs(n,22))+oR(n,a,i)|0;l=d,d=c,c=o,o=s+j|0,s=i,i=a,a=n,n=j+$|0}n=n+this.A|0,a=a+this.B|0,i=i+this.C|0,s=s+this.D|0,o=o+this.E|0,c=c+this.F|0,d=d+this.G|0,l=l+this.H|0,this.set(n,a,i,s,o,c,d,l)}roundClean(){bc.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}class qX extends x5{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}const A5=P6(()=>new x5),ZX=null;class T5 extends db{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,T6(t);const n=rd(r);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const a=this.blockLen,i=new Uint8Array(a);i.set(n.length>a?t.create().update(n).digest():n);for(let s=0;snew T5(e,t).update(r).digest();S5.create=(e,t)=>new T5(e,t);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function dR(e){return{hash:e,hmac:(t,...r)=>S5(e,t,jS(...r)),randomBytes:VS}}function uR(e,t){const r=n=>z4({...e,...dR(n)});return Object.freeze({...r(t),create:r})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Mh=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Bh=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),k5=BigInt(1),Ph=BigInt(2),I5=(e,t)=>(e+t/Ph)/t;function C5(e){const t=Mh,r=BigInt(3),n=BigInt(6),a=BigInt(11),i=BigInt(22),s=BigInt(23),o=BigInt(44),c=BigInt(88),d=e*e*e%t,l=d*d*e%t,y=ki(l,r,t)*l%t,M=ki(y,r,t)*l%t,j=ki(M,Ph,t)*d%t,G=ki(j,a,t)*j%t,$=ki(G,i,t)*G%t,fe=ki($,o,t)*$%t,he=ki(fe,c,t)*fe%t,Oe=ki(he,o,t)*$%t,We=ki(Oe,r,t)*l%t,et=ki(We,s,t)*G%t,ht=ki(et,n,t)*d%t,tt=ki(ht,Ph,t);if(!g2.eql(g2.sqr(tt),e))throw new Error("Cannot find square root");return tt}const g2=AI(Mh,void 0,void 0,{sqrt:C5}),m2=uR({a:BigInt(0),b:BigInt(7),Fp:g2,n:Bh,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const t=Bh,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-k5*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),a=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=r,s=BigInt("0x100000000000000000000000000000000"),o=I5(i*e,t),c=I5(-n*e,t);let d=ja(e-o*r-c*a,t),l=ja(-o*n-c*i,t);const y=d>s,M=l>s;if(y&&(d=t-d),M&&(l=t-l),d>s||l>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:y,k1:d,k2neg:M,k2:l}}}},A5),Dh=BigInt(0),O5=e=>typeof e=="bigint"&&Dhtypeof e=="bigint"&&Dha.charCodeAt(0)));r=concatBytes(n,n),N5[e]=r}return sha256(concatBytes(r,...t))}const R5=e=>e.toRawBytes(!0).slice(1),_2=e=>numberToBytesBE(e,32),v2=e=>mod(e,Mh),Wu=e=>mod(e,Bh),w2=m2.ProjectivePoint,hR=(e,t,r)=>w2.BASE.multiplyAndAddUnsafe(e,t,r);function E2(e){let t=m2.utils.normPrivateKeyToScalar(e),r=w2.fromPrivateKey(t);return{scalar:r.hasEvenY()?t:Wu(-t),bytes:R5(r)}}function pR(e){if(!O5(e))throw new Error("bad x: need 0 < x < p");const t=v2(e*e),r=v2(t*e+BigInt(7));let n=C5(r);n%Ph!==Dh&&(n=v2(-n));const a=new w2(e,n,k5);return a.assertValidity(),a}function M5(...e){return Wu(bytesToNumberBE(y2("BIP0340/challenge",...e)))}function KX(e){return E2(e).bytes}function GX(e,t,r=randomBytes(32)){const n=ensureBytes("message",e),{bytes:a,scalar:i}=E2(t),s=ensureBytes("auxRand",r,32),o=_2(i^bytesToNumberBE(y2("BIP0340/aux",s))),c=y2("BIP0340/nonce",o,a,n),d=Wu(bytesToNumberBE(c));if(d===Dh)throw new Error("sign failed: k is zero");const{bytes:l,scalar:y}=E2(d),M=M5(l,a,n),j=new Uint8Array(64);if(j.set(l,0),j.set(_2(Wu(y+M*i)),32),!bR(j,n,a))throw new Error("sign: Invalid signature produced");return j}function bR(e,t,r){const n=ensureBytes("signature",e,64),a=ensureBytes("message",t),i=ensureBytes("publicKey",r,32);try{const s=pR(bytesToNumberBE(i)),o=bytesToNumberBE(n.subarray(0,32));if(!O5(o))return!1;const c=bytesToNumberBE(n.subarray(32,64));if(!lR(c))return!1;const d=M5(_2(o),R5(s),a),l=hR(s,c,Wu(-d));return!(!l||!l.hasEvenY()||l.toAffine().x!==o)}catch{return!1}}const WX=null,YX=null,JX=null,XX=null,QX=null,eQ=null;var gR=fr(3713),x2=fr(29969);const B5=(e,t,r=[])=>{const n=Object.getOwnPropertyDescriptors(t);for(let a of r)delete n[a];Object.defineProperties(e,n)},Ef=(e,t=[e])=>{const r=Object.getPrototypeOf(e);return r===null?t:Ef(r,[...t,r])},mR=(...e)=>{if(e.length===0)return;let t;const r=e.map(n=>Ef(n));for(;r.every(n=>n.length>0);){const n=r.map(i=>i.pop()),a=n[0];if(n.every(i=>i===a))t=a;else break}return t},P5=(e,t,r=[])=>{var n;const a=(n=mR(...e))!==null&&n!==void 0?n:Object.prototype,i=Object.create(a),s=Ef(a);for(let o of e){let c=Ef(o);for(let d=c.length-1;d>=0;d--){let l=c[d];s.indexOf(l)===-1&&(B5(i,l,["constructor",...r]),s.push(l))}}return i.constructor=t,i},A2=e=>e.filter((t,r)=>e.indexOf(t)==r),Lh=(e,t)=>{const r=t.map(i=>Ef(i));let n=0,a=!0;for(;a;){a=!1;for(let i=t.length-1;i>=0;i--){const s=r[i][n];if(s!=null&&(a=!0,Object.getOwnPropertyDescriptor(s,e)!=null))return r[i][0]}n++}},D5=(e,t=Object.prototype)=>new Proxy({},{getPrototypeOf(){return t},setPrototypeOf(){throw Error("Cannot set prototype of Proxies created by ts-mixer")},getOwnPropertyDescriptor(r,n){return Object.getOwnPropertyDescriptor(Lh(n,e)||{},n)},defineProperty(){throw new Error("Cannot define new properties on Proxies created by ts-mixer")},has(r,n){return Lh(n,e)!==void 0||t[n]!==void 0},get(r,n){return(Lh(n,e)||t)[n]},set(r,n,a){const i=Lh(n,e);if(i===void 0)throw new Error("Cannot set new properties on Proxies created by ts-mixer");return i[n]=a,!0},deleteProperty(){throw new Error("Cannot delete properties on Proxies created by ts-mixer")},ownKeys(){return e.map(Object.getOwnPropertyNames).reduce((r,n)=>n.concat(r.filter(a=>n.indexOf(a)<0)))}}),yR=(e,t)=>D5([...e,{constructor:t}]),Yu={initFunction:null,staticsStrategy:"copy",prototypeStrategy:"copy",decoratorInheritance:"deep"},T2=new WeakMap,_R=e=>T2.get(e),vR=(e,t)=>T2.set(e,t),tQ=(e,t)=>{if(e instanceof t)return!0;const r=e.constructor,n=new Set;let a=new Set;for(a.add(r);a.size>0;){if(a.has(t))return!0;a.forEach(s=>n.add(s));const i=new Set;a.forEach(s=>{var o;const c=(o=T2.get(s))!==null&&o!==void 0?o:Ef(s.prototype).map(d=>d.constructor).filter(d=>d!==null);c&&c.forEach(d=>{!n.has(d)&&!a.has(d)&&i.add(d)})}),a=i}return!1},L5=(e,t)=>{var r,n;const a=A2([...Object.getOwnPropertyNames(e),...Object.getOwnPropertyNames(t)]),i={};for(let s of a)i[s]=A2([...(r=e?.[s])!==null&&r!==void 0?r:[],...(n=t?.[s])!==null&&n!==void 0?n:[]]);return i},U5=(e,t)=>{var r,n,a,i;return{property:L5((r=e?.property)!==null&&r!==void 0?r:{},(n=t?.property)!==null&&n!==void 0?n:{}),method:L5((a=e?.method)!==null&&a!==void 0?a:{},(i=t?.method)!==null&&i!==void 0?i:{})}},F5=(e,t)=>{var r,n,a,i,s,o;return{class:A2([...(r=e?.class)!==null&&r!==void 0?r:[],...(n=t?.class)!==null&&n!==void 0?n:[]]),static:U5((a=e?.static)!==null&&a!==void 0?a:{},(i=t?.static)!==null&&i!==void 0?i:{}),instance:U5((s=e?.instance)!==null&&s!==void 0?s:{},(o=t?.instance)!==null&&o!==void 0?o:{})}},S2=new Map,wR=(...e)=>{var t;const r=new Set,n=new Set([...e]);for(;n.size>0;)for(let a of n){const i=Ef(a.prototype).map(d=>d.constructor),s=(t=_R(a))!==null&&t!==void 0?t:[],c=[...i,...s].filter(d=>!r.has(d));for(let d of c)n.add(d);r.add(a),n.delete(a)}return[...r]},ER=(...e)=>{const t=wR(...e).map(r=>S2.get(r)).filter(r=>!!r);return t.length==0?{}:t.length==1?t[0]:t.reduce((r,n)=>F5(r,n))},xR=(...e)=>{const t=e.map(r=>k2(r));return t.length===0?{}:t.length===1?t[0]:t.reduce((r,n)=>F5(r,n))},k2=e=>{let t=S2.get(e);return t||(t={},S2.set(e,t)),t},AR=e=>t=>{const r=k2(t);let n=r.class;return n||(n=[],r.class=n),n.push(e),e(t)},TR=e=>(t,r,...n)=>{var a,i,s;const o=typeof t=="function"?"static":"instance",c=typeof t[r]=="function"?"method":"property",d=o==="static"?t:t.constructor,l=k2(d),y=(a=l?.[o])!==null&&a!==void 0?a:{};l[o]=y;let M=(i=y?.[c])!==null&&i!==void 0?i:{};y[c]=M;let j=(s=M?.[r])!==null&&s!==void 0?s:[];return M[r]=j,j.push(e),e(t,r,...n)},rQ=e=>(...t)=>t.length===1?AR(e)(t[0]):TR(e)(...t);function H5(...e){var t,r,n;const a=e.map(c=>c.prototype),i=Yu.initFunction;if(i!==null){const c=a.map(y=>y[i]).filter(y=>typeof y=="function"),d=function(...y){for(let M of c)M.apply(this,y)},l={[i]:d};a.push(l)}function s(...c){for(const d of e)B5(this,new d(...c));i!==null&&typeof this[i]=="function"&&this[i].apply(this,c)}s.prototype=Yu.prototypeStrategy==="copy"?P5(a,s):yR(a,s),Object.setPrototypeOf(s,Yu.staticsStrategy==="copy"?P5(e,null,["prototype"]):D5(e,Function.prototype));let o=s;if(Yu.decoratorInheritance!=="none"){const c=Yu.decoratorInheritance==="deep"?ER(...e):xR(...e);for(let d of(t=c?.class)!==null&&t!==void 0?t:[]){const l=d(o);l&&(o=l)}j5((r=c?.static)!==null&&r!==void 0?r:{},o),j5((n=c?.instance)!==null&&n!==void 0?n:{},o.prototype)}return vR(o,e),o}const j5=(e,t)=>{const r=e.property,n=e.method;if(r)for(let a in r)for(let i of r[a])i(t,a);if(n)for(let a in n)for(let i of n[a])i(t,a,Object.getOwnPropertyDescriptor(t,a))},nQ=(...e)=>t=>{const r=H5(...e.concat([t]));return Object.defineProperty(r,"name",{value:t.name,writable:!1}),r};var Uh=fr(62797),$5=Object.defineProperty,SR=Object.getOwnPropertyDescriptor,kR=Object.getOwnPropertyNames,IR=Object.prototype.hasOwnProperty,Xn=(e,t)=>{for(var r in t)$5(e,r,{get:t[r],enumerable:!0})},V5=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of kR(t))!IR.call(e,a)&&a!==r&&$5(e,a,{get:()=>t[a],enumerable:!(n=SR(t,a))||n.enumerable});return e},CR=(e,t,r)=>(V5(e,t,"default"),r&&V5(r,t,"default")),gc={};Xn(gc,{ADDR_BOUND:()=>N2,API_VERSION:()=>f8,BaseUrl:()=>h8,FeeMarginPercentage:()=>g8,IS_BROWSER:()=>t8,MASK_250:()=>c8,MAX_STORAGE_ITEM_SIZE:()=>d8,NetworkName:()=>Fh,PRIME:()=>O2,RANGE_FELT:()=>M2,RANGE_I128:()=>u8,RANGE_U128:()=>l8,RPC_DEFAULT_VERSION:()=>Xu,RPC_NODES:()=>m8,StarknetChainId:()=>p8,TEXT_TO_FELT_MAX_LEN:()=>C2,TRANSACTION_VERSION:()=>Vt.ETransactionVersion,TransactionHashPrefix:()=>b8,UDC:()=>xf,ZERO:()=>_a});var Vt={};Xn(Vt,{JRPC:()=>OR,RPCSPEC06:()=>ia,RPCSPEC07:()=>Be});var OR={},ia={};Xn(ia,{EBlockTag:()=>W5,EDAMode:()=>J5,EDataAvailabilityMode:()=>Y5,ESimulationFlag:()=>q5,ETransactionExecutionStatus:()=>G5,ETransactionFinalityStatus:()=>K5,ETransactionStatus:()=>Z5,ETransactionType:()=>z5,ETransactionVersion:()=>X5,ETransactionVersion2:()=>Q5,ETransactionVersion3:()=>e8,Errors:()=>NR,SPEC:()=>RR});var NR={},RR={},z5=(e=>(e.DECLARE="DECLARE",e.DEPLOY="DEPLOY",e.DEPLOY_ACCOUNT="DEPLOY_ACCOUNT",e.INVOKE="INVOKE",e.L1_HANDLER="L1_HANDLER",e))(z5||{}),q5=(e=>(e.SKIP_VALIDATE="SKIP_VALIDATE",e.SKIP_FEE_CHARGE="SKIP_FEE_CHARGE",e))(q5||{}),Z5=(e=>(e.RECEIVED="RECEIVED",e.REJECTED="REJECTED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(Z5||{}),K5=(e=>(e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(K5||{}),G5=(e=>(e.SUCCEEDED="SUCCEEDED",e.REVERTED="REVERTED",e))(G5||{}),W5=(e=>(e.PENDING="pending",e.LATEST="latest",e))(W5||{}),Y5=(e=>(e.L1="L1",e.L2="L2",e))(Y5||{}),J5=(e=>(e[e.L1=0]="L1",e[e.L2=1]="L2",e))(J5||{}),X5=(e=>(e.V0="0x0",e.V1="0x1",e.V2="0x2",e.V3="0x3",e.F0="0x100000000000000000000000000000000",e.F1="0x100000000000000000000000000000001",e.F2="0x100000000000000000000000000000002",e.F3="0x100000000000000000000000000000003",e))(X5||{}),Q5=(e=>(e.V0="0x0",e.V1="0x1",e.V2="0x2",e.F0="0x100000000000000000000000000000000",e.F1="0x100000000000000000000000000000001",e.F2="0x100000000000000000000000000000002",e))(Q5||{}),e8=(e=>(e.V3="0x3",e.F3="0x100000000000000000000000000000003",e))(e8||{});CR(Vt,Be);var MR={};Xn(MR,{IS_BROWSER:()=>t8,addHexPrefix:()=>Un,arrayBufferToString:()=>r8,atobUniversal:()=>n8,btoaUniversal:()=>a8,buf2hex:()=>Ju,calcByteLength:()=>s8,padLeft:()=>i8,pascalToSnake:()=>DR,removeHexPrefix:()=>pa,sanitizeBytes:()=>o8,sanitizeHex:()=>yd,stringToArrayBuffer:()=>BR,utf8ToArray:()=>mc});var t8=typeof window<"u",I2="0";function r8(e){return new Uint8Array(e).reduce((t,r)=>t+String.fromCharCode(r),"")}function mc(e){return new TextEncoder().encode(e)}function BR(e){return mc(e)}function n8(e){return pu.decode(e)}function a8(e){return pu.encode(new Uint8Array(e))}function Ju(e){return e.reduce((t,r)=>t+r.toString(16).padStart(2,"0"),"")}function pa(e){return e.replace(/^0x/i,"")}function Un(e){return`0x${pa(e)}`}function PR(e,t,r,n=I2){const a=t-e.length;let i=e;if(a>0){const s=n.repeat(a);i=r?s+e:e+s}return i}function i8(e,t,r=I2){return PR(e,t,!0,r)}function s8(e,t=8){const{length:r}=e,n=r%t;return n?(r-n)/t*t+t:r}function o8(e,t=8,r=I2){return i8(e,s8(e,t),r)}function yd(e){return e=pa(e),e=o8(e,2),e&&(e=Un(e)),e}var DR=e=>/[a-z]/.test(e)?e.split(/(?=[A-Z])/).join("_").toUpperCase():e,C2=31,_a=0n,c8=2n**250n-1n,f8=_a,O2=2n**251n+17n*2n**192n+1n,d8=256n,N2=2n**251n-d8,R2=(e,t)=>({min:e,max:t}),M2=R2(_a,O2-1n),u8=R2(-(2n**127n),2n**127n-1n),l8=R2(_a,2n**128n-1n),h8=(e=>(e.SN_MAIN="https://alpha-mainnet.starknet.io",e.SN_SEPOLIA="https://alpha-sepolia.starknet.io",e))(h8||{}),Fh=(e=>(e.SN_MAIN="SN_MAIN",e.SN_SEPOLIA="SN_SEPOLIA",e))(Fh||{}),p8=(e=>(e.SN_MAIN="0x534e5f4d41494e",e.SN_SEPOLIA="0x534e5f5345504f4c4941",e))(p8||{}),b8=(e=>(e.DECLARE="0x6465636c617265",e.DEPLOY="0x6465706c6f79",e.DEPLOY_ACCOUNT="0x6465706c6f795f6163636f756e74",e.INVOKE="0x696e766f6b65",e.L1_HANDLER="0x6c315f68616e646c6572",e))(b8||{}),g8=(e=>(e[e.L1_BOUND_MAX_AMOUNT=50]="L1_BOUND_MAX_AMOUNT",e[e.L1_BOUND_MAX_PRICE_PER_UNIT=50]="L1_BOUND_MAX_PRICE_PER_UNIT",e[e.MAX_FEE=50]="MAX_FEE",e))(g8||{}),xf={ADDRESS:"0x041a78e741e5af2fec34b695679bc6891742439f7afb8484ecd7766661ad02bf",ENTRYPOINT:"deployContract"},Xu="v0_7",m8={SN_MAIN:[`https://starknet-mainnet.public.blastapi.io/rpc/${Xu}`,`https://free-rpc.nethermind.io/mainnet-juno/${Xu}`],SN_SEPOLIA:[`https://starknet-sepolia.public.blastapi.io/rpc/${Xu}`,`https://free-rpc.nethermind.io/sepolia-juno/${Xu}`]},y8={};Xn(y8,{RpcChannel:()=>qM});function LR(e,t=e.constructor){const{captureStackTrace:r}=Error;r&&r(e,t)}function UR(e,t){const{setPrototypeOf:r}=Object;r?r(e,t):e.__proto__=t}var FR=class extends Error{constructor(t){super(t);yt(this,"name");Object.defineProperty(this,"name",{value:new.target.name,enumerable:!1,configurable:!0}),UR(this,new.target.prototype),LR(this)}},Af=class extends FR{},aQ=class extends Af{constructor(e,t){super(e),this.errorCode=t}},iQ=class extends Af{constructor(e,t){super(e),this.errorCode=t}},HR={};Xn(HR,{BlockStatus:()=>T8,BlockTag:()=>D2,EntryPointType:()=>v8,Literal:()=>P2,RPC:()=>Vt,TransactionExecutionStatus:()=>A8,TransactionFinalityStatus:()=>x8,TransactionStatus:()=>E8,TransactionType:()=>w8,TypedDataRevision:()=>jn,Uint:()=>B2,ValidateType:()=>_8});var _8=(e=>(e.DEPLOY="DEPLOY",e.CALL="CALL",e.INVOKE="INVOKE",e))(_8||{}),B2=(e=>(e.u8="core::integer::u8",e.u16="core::integer::u16",e.u32="core::integer::u32",e.u64="core::integer::u64",e.u128="core::integer::u128",e.u256="core::integer::u256",e.u512="core::integer::u512",e))(B2||{}),P2=(e=>(e.ClassHash="core::starknet::class_hash::ClassHash",e.ContractAddress="core::starknet::contract_address::ContractAddress",e.Secp256k1Point="core::starknet::secp256k1::Secp256k1Point",e))(P2||{}),v8=(e=>(e.EXTERNAL="EXTERNAL",e.L1_HANDLER="L1_HANDLER",e.CONSTRUCTOR="CONSTRUCTOR",e))(v8||{}),w8=(e=>(e.DECLARE="DECLARE",e.DEPLOY="DEPLOY",e.DEPLOY_ACCOUNT="DEPLOY_ACCOUNT",e.INVOKE="INVOKE_FUNCTION",e))(w8||{}),E8=(e=>(e.NOT_RECEIVED="NOT_RECEIVED",e.RECEIVED="RECEIVED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e.REJECTED="REJECTED",e.REVERTED="REVERTED",e))(E8||{}),x8=(e=>(e.NOT_RECEIVED="NOT_RECEIVED",e.RECEIVED="RECEIVED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(x8||{}),A8=(e=>(e.REJECTED="REJECTED",e.REVERTED="REVERTED",e.SUCCEEDED="SUCCEEDED",e))(A8||{}),T8=(e=>(e.PENDING="PENDING",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.REJECTED="REJECTED",e))(T8||{}),D2=(e=>(e.PENDING="pending",e.LATEST="latest",e))(D2||{});function yn(e,t){if(!e)throw new Error(t||"Assertion failure")}var Qu={};Xn(Qu,{addPercent:()=>tl,assertInRange:()=>F2,bigNumberishArrayToDecimalStringArray:()=>k8,bigNumberishArrayToHexadecimalStringArray:()=>I8,cleanHex:()=>el,getDecimalString:()=>jR,getHexString:()=>C8,getHexStringArray:()=>H2,hexToBytes:()=>$2,hexToDecimalString:()=>S8,isBigInt:()=>yc,isBoolean:()=>V2,isHex:()=>Zi,isNumber:()=>vd,isStringWholeNumber:()=>_d,toBigInt:()=>Fn,toCairoBool:()=>j2,toHex:()=>Et,toHexString:()=>L2,toStorageKey:()=>U2});function Zi(e){return/^0x[0-9a-f]*$/i.test(e)}function Fn(e){return BigInt(e)}function yc(e){return typeof e=="bigint"}function Et(e){return Un(Fn(e).toString(16))}var L2=Et;function U2(e){return Un(Fn(e).toString(16).padStart(64,"0"))}function S8(e){return BigInt(Un(e)).toString(10)}function el(e){return e.toLowerCase().replace(/^(0x)0+/,"$1")}function F2(e,t,r,n=""){const a=n===""?"invalid length":`invalid ${n} length`,i=BigInt(e),s=BigInt(t),o=BigInt(r);yn(i>=s&&i<=o,`Message not signable, ${a}.`)}function k8(e){return e.map(t=>Fn(t).toString(10))}function I8(e){return e.map(t=>Et(t))}function _d(e){return/^\d+$/.test(e)}function jR(e){if(Zi(e))return S8(e);if(_d(e))return e;throw new Error(`${e} needs to be a hex-string or whole-number-string`)}function C8(e){if(Zi(e))return e;if(_d(e))return L2(e);throw new Error(`${e} needs to be a hex-string or whole-number-string`)}function H2(e){return e.map(C8)}function j2(e){return(+e).toString()}function $2(e){if(!Zi(e))throw new Error(`${e} needs to be a hex-string`);let t=pa(e);return t.length%2!==0&&(t=`0${t}`),Qo(t)}function tl(e,t){const r=BigInt(e);return r+r*BigInt(t)/100n}function vd(e){return typeof e=="number"}function V2(e){return typeof e=="boolean"}var $R={};Xn($R,{getSelector:()=>Hh,getSelectorFromName:()=>Aa,keccakBn:()=>z2,starknetKeccak:()=>q2});function z2(e){const t=pa(Et(BigInt(e))),r=t.length%2===0?t:`0${t}`;return Un(fi($2(Un(r))).toString(16))}function VR(e){return Un(fi(mc(e)).toString(16))}function q2(e){return BigInt(VR(e))&c8}function Aa(e){return Et(q2(e))}function Hh(e){return Zi(e)?e:_d(e)?L2(e):Aa(e)}var rl={};Xn(rl,{decodeShortString:()=>Tf,encodeShortString:()=>Oa,isASCII:()=>Z2,isDecimalString:()=>K2,isLongText:()=>G2,isShortString:()=>nl,isShortText:()=>zR,isString:()=>va,isText:()=>al,splitLongString:()=>W2});function Z2(e){return/^[\x00-\x7F]*$/.test(e)}function nl(e){return e.length<=C2}function K2(e){return/^[0-9]*$/i.test(e)}function va(e){return typeof e=="string"}function al(e){return va(e)&&!Zi(e)&&!_d(e)}var zR=e=>al(e)&&nl(e),G2=e=>al(e)&&!nl(e);function W2(e){const t=RegExp(`[^]{1,${C2}}`,"g");return e.match(t)||[]}function Oa(e){if(!Z2(e))throw new Error(`${e} is not an ASCII string`);if(!nl(e))throw new Error(`${e} is too long`);return Un(e.replace(/./g,t=>t.charCodeAt(0).toString(16)))}function Tf(e){if(!Z2(e))throw new Error(`${e} is not an ASCII string`);if(Zi(e))return pa(e).replace(/.{2}/g,t=>String.fromCharCode(parseInt(t,16)));if(K2(e))return Tf("0X".concat(BigInt(e).toString(16)));throw new Error(`${e} is not Hex or decimal`)}var qR={};Xn(qR,{byteArrayFromString:()=>jh,stringFromByteArray:()=>O8});function O8(e){const t=BigInt(e.pending_word)===0n?"":Tf(Et(e.pending_word));return e.data.reduce((r,n)=>{const a=BigInt(n)===0n?"":Tf(Et(n));return r+a},"")+t}function jh(e){const t=W2(e),r=t[t.length-1],n=t.map(Oa),[a,i]=r===void 0||r.length===31?["0x00",0]:[n.pop(),r.length];return{data:n.length===0?[]:n,pending_word:a,pending_word_len:i}}var N8={};Xn(N8,{felt:()=>Oi,getAbiContractVersion:()=>Q2,getArrayType:()=>Fs,isCairo1Abi:()=>X2,isCairo1Type:()=>wc,isLen:()=>kf,isTypeArray:()=>_c,isTypeBool:()=>zh,isTypeByteArray:()=>qh,isTypeBytes31:()=>J2,isTypeContractAddress:()=>tM,isTypeEnum:()=>If,isTypeEthAddress:()=>B8,isTypeFelt:()=>Ed,isTypeLiteral:()=>Y2,isTypeNamedTuple:()=>M8,isTypeNonZero:()=>Cf,isTypeOption:()=>$h,isTypeResult:()=>Vh,isTypeSecp256k1Point:()=>Zh,isTypeStruct:()=>il,isTypeTuple:()=>vc,isTypeUint:()=>sl,isTypeUint256:()=>eM,tuple:()=>xd,uint256:()=>eg,uint512:()=>rM});function Sf(e){if(yc(e)||Number.isInteger(e))return e.toString();if(va(e)){if(Zi(e))return BigInt(e).toString();if(al(e)){if(!nl(e))throw new Error(`${e} is a long string > 31 chars. Please split it into an array of short strings.`);return BigInt(Oa(e)).toString()}if(_d(e))return e}if(V2(e))return`${+e}`;throw new Error(`${e} can't be computed by felt()`)}var wd=(1n<<128n)-1n,R8=(1n<<256n)-1n,ZR=0n,KR=340282366920938463463374607431768211455n,GR=340282366920938463463374607431768211455n,WR=0n,YR=0n,wa=(Is=class{constructor(...t){yt(this,"low");yt(this,"high");if(typeof t[0]=="object"&&t.length===1&&"low"in t[0]&&"high"in t[0]){const r=Is.validateProps(t[0].low,t[0].high);this.low=r.low,this.high=r.high}else if(t.length===1){const r=Is.validate(t[0]);this.low=r&wd,this.high=r>>128n}else if(t.length===2){const r=Is.validateProps(t[0],t[1]);this.low=r.low,this.high=r.high}else throw Error("Incorrect constructor parameters")}static validate(t){const r=BigInt(t);if(rR8)throw new Error("bigNumberish is bigger than UINT_256_MAX");return r}static validateProps(t,r){const n=BigInt(t),a=BigInt(r);if(nKR)throw new Error("low is out of range UINT_256_LOW_MIN - UINT_256_LOW_MAX");if(aGR)throw new Error("high is out of range UINT_256_HIGH_MIN - UINT_256_HIGH_MAX");return{low:n,high:a}}static is(t){try{Is.validate(t)}catch{return!1}return!0}static isAbiType(t){return t===Is.abiSelector}toBigInt(){return(this.high<<128n)+this.low}toUint256HexString(){return{low:Un(this.low.toString(16)),high:Un(this.high.toString(16))}}toUint256DecimalString(){return{low:this.low.toString(10),high:this.high.toString(10)}}toApiRequest(){return[Sf(this.low),Sf(this.high)]}},yt(Is,"abiSelector","core::integer::u256"),Is),JR=(1n<<512n)-1n,XR=0n,QR=0n,Ga=(Cs=class{constructor(...t){yt(this,"limb0");yt(this,"limb1");yt(this,"limb2");yt(this,"limb3");if(typeof t[0]=="object"&&t.length===1&&"limb0"in t[0]&&"limb1"in t[0]&&"limb2"in t[0]&&"limb3"in t[0]){const r=Cs.validateProps(t[0].limb0,t[0].limb1,t[0].limb2,t[0].limb3);this.limb0=r.limb0,this.limb1=r.limb1,this.limb2=r.limb2,this.limb3=r.limb3}else if(t.length===1){const r=Cs.validate(t[0]);this.limb0=r&wd,this.limb1=(r&wd<<128n)>>128n,this.limb2=(r&wd<<256n)>>256n,this.limb3=r>>384n}else if(t.length===4){const r=Cs.validateProps(t[0],t[1],t[2],t[3]);this.limb0=r.limb0,this.limb1=r.limb1,this.limb2=r.limb2,this.limb3=r.limb3}else throw Error("Incorrect Uint512 constructor parameters")}static validate(t){const r=BigInt(t);if(rJR)throw Error("bigNumberish is bigger than UINT_512_MAX.");return r}static validateProps(t,r,n,a){const i=BigInt(t),s=BigInt(r),o=BigInt(n),c=BigInt(a);return[i,s,o,c].forEach((d,l)=>{if(dwd)throw Error(`limb${l} is not in the range of a u128 number`)}),{limb0:i,limb1:s,limb2:o,limb3:c}}static is(t){try{Cs.validate(t)}catch{return!1}return!0}static isAbiType(t){return t===Cs.abiSelector}toBigInt(){return(this.limb3<<384n)+(this.limb2<<256n)+(this.limb1<<128n)+this.limb0}toUint512HexString(){return{limb0:Un(this.limb0.toString(16)),limb1:Un(this.limb1.toString(16)),limb2:Un(this.limb2.toString(16)),limb3:Un(this.limb3.toString(16))}}toUint512DecimalString(){return{limb0:this.limb0.toString(10),limb1:this.limb1.toString(10),limb2:this.limb2.toString(10),limb3:this.limb3.toString(10)}}toApiRequest(){return[Sf(this.limb0),Sf(this.limb1),Sf(this.limb2),Sf(this.limb3)]}},yt(Cs,"abiSelector","core::integer::u512"),Cs),kf=e=>/_len$/.test(e),Ed=e=>e==="felt"||e==="core::felt252",_c=e=>/\*/.test(e)||e.startsWith("core::array::Array::")||e.startsWith("core::array::Span::"),vc=e=>/^\(.*\)$/i.test(e),M8=e=>/\(.*\)/i.test(e)&&e.includes(":"),il=(e,t)=>e in t,If=(e,t)=>e in t,$h=e=>e.startsWith("core::option::Option::"),Vh=e=>e.startsWith("core::result::Result::"),sl=e=>Object.values(B2).includes(e),eM=e=>wa.isAbiType(e),Y2=e=>Object.values(P2).includes(e),zh=e=>e==="core::bool",tM=e=>e==="core::starknet::contract_address::ContractAddress",B8=e=>e==="core::starknet::eth_address::EthAddress",J2=e=>e==="core::bytes_31::bytes31",qh=e=>e==="core::byte_array::ByteArray",Zh=e=>e==="core::starknet::secp256k1::Secp256k1Point",wc=e=>e.includes("::"),Fs=e=>wc(e)?e.substring(e.indexOf("<")+1,e.lastIndexOf(">")):e.replace("*","");function X2(e){const{cairo:t}=Q2(e);if(t===void 0)throw Error("Unable to determine Cairo version");return t==="1"}function Cf(e){return e.startsWith("core::zeroable::NonZero::")}function Q2(e){if(e.find(n=>n.type==="interface"))return{cairo:"1",compiler:"2"};const t=e.find(n=>n.type==="function"&&(n.inputs.length||n.outputs.length));if(!t)return{cairo:void 0,compiler:void 0};const r=t.inputs.length?t.inputs:t.outputs;return wc(r[0].type)?{cairo:"1",compiler:"1"}:{cairo:"0",compiler:"0"}}var eg=e=>new wa(e).toUint256DecimalString(),rM=e=>new Ga(e).toUint512DecimalString(),xd=(...e)=>({...e});function Oi(e){return Sf(e)}var ol=class{constructor(e){yt(this,"variant");const t=Object.values(e);if(t.length===0)throw new Error("This Enum must have at least 1 variant");if(t.filter(n=>typeof n<"u").length!==1)throw new Error("This Enum must have exactly one active variant");this.variant=e}unwrap(){const t=Object.entries(this.variant).find(r=>typeof r[1]<"u");if(!(typeof t>"u"))return t[1]}activeVariant(){const t=Object.entries(this.variant).find(r=>typeof r[1]<"u");return typeof t>"u"?"":t[0]}},P8=(e=>(e[e.Some=0]="Some",e[e.None=1]="None",e))(P8||{}),tg=class{constructor(e,t){yt(this,"Some");yt(this,"None");if(!(e in P8))throw new Error("Wrong variant : should be CairoOptionVariant.Some or .None.");if(e===0){if(typeof t>"u")throw new Error('The creation of a Cairo Option with "Some" variant needs a content as input.');this.Some=t,this.None=void 0}else this.Some=void 0,this.None=!0}unwrap(){if(!this.None)return this.Some}isSome(){return!(typeof this.Some>"u")}isNone(){return this.None===!0}},D8=(e=>(e[e.Ok=0]="Ok",e[e.Err=1]="Err",e))(D8||{}),rg=class{constructor(e,t){yt(this,"Ok");yt(this,"Err");if(!(e in D8))throw new Error("Wrong variant : should be CairoResultVariant.Ok or .Err.");e===0?(this.Ok=t,this.Err=void 0):(this.Ok=void 0,this.Err=t)}unwrap(){if(typeof this.Ok<"u")return this.Ok;if(typeof this.Err<"u")return this.Err;throw new Error("Both Result.Ok and .Err are undefined. Not authorized.")}isOk(){return!(typeof this.Ok>"u")}isErr(){return!(typeof this.Err>"u")}},ng={isBN:(e,t,r)=>{if(!yc(e[r]))throw new Error(`Data and formatter mismatch on ${r}:${t[r]}, expected response data ${r}:${e[r]} to be BN instead it is ${typeof e[r]}`)},unknown:(e,t,r)=>{throw new Error(`Unhandled formatter type on ${r}:${t[r]} for data ${r}:${e[r]}`)}};function Kh(e,t,r){return Object.entries(e).reduce((n,[a,i])=>{const s=r??t[a];if(!(a in t)&&!r)return n[a]=i,n;if(s==="string"){if(Array.isArray(e[a])){const o=Kh(e[a],e[a].map(c=>s));return n[a]=Object.values(o).join(""),n}return ng.isBN(e,t,a),n[a]=Tf(i),n}if(s==="number")return ng.isBN(e,t,a),n[a]=Number(i),n;if(typeof s=="function")return n[a]=s(i),n;if(Array.isArray(s)){const o=Kh(e[a],s,s[0]);return n[a]=Object.values(o),n}return typeof s=="object"?(n[a]=Kh(e[a],s),n):(ng.unknown(e,t,a),n)},{})}var nM=class{constructor(e){yt(this,"abi");this.abi=e}methodInputsLength(e){return e.inputs.reduce((t,r)=>kf(r.name)?t:t+1,0)}getMethod(e){return this.abi.find(t=>t.name===e)}getLegacyFormat(){return this.abi}},aM=class{constructor(e){yt(this,"abi");this.abi=e}methodInputsLength(e){return e.inputs.length}getMethod(e){return this.abi.find(r=>r.type==="interface").items.find(r=>r.name===e)}getLegacyFormat(){return this.abi.flatMap(e=>e.type==="interface"?e.items:e)}};function L8(e){const t=iM(e);if(t===0||t===1)return new nM(e);if(t===2)return new aM(e);throw Error(`Unsupported ABI version ${t}`)}function iM(e){return e.find(t=>t.type==="interface")?2:X2(e)?1:0}function U8(e,t,r){return e==="constructor"&&!r&&!t.length}function sM(e){const t=e.substring(0,e.indexOf(":")),r=e.substring(t.length+1);return{name:t,type:r}}function oM(e){if(!e.includes("("))return{subTuple:[],result:e};const t=[];let r="",n=0;for(;nr.length?i.replace(" ",r.shift()):i);return M8(e)&&(a=a.reduce((i,s)=>i.concat(sM(s)),[])),a}function F8(e,t,r){for(let n=0,a=0;n")+1;break}default:{const i=t.indexOf(",",n);a=i!==-1?i:Number.POSITIVE_INFINITY}}r.push(t.slice(n,a)),n=a+2}return r}function ag(e){return wc(e)?fM(e):cM(e)}function dM(e){return Error(`Your object includes the property : ${e}, containing an Uint256 object without the 'low' and 'high' keys.`)}function uM(e){return Error(`Your object includes the property : ${e}, containing an Uint512 object without the 'limb0' to 'limb3' keys.`)}function lM(e,t,r,n){const a=(l,y)=>{if(_c(y))return s(l,y);if(If(y,n)){const M=n[y];return c(l,M)}if(vc(y))return o(l,y);if(B8(y)||Cf(y)||qh(y)||Zh(y))return l;if(wa.isAbiType(y)){const M=l;if(typeof M!="object")return M;if(!("low"in M&&"high"in M))throw dM(y);return{low:M.low,high:M.high}}if(Ga.isAbiType(y)){const M=l;if(typeof M!="object")return M;if(!["limb0","limb1","limb2","limb3"].every(j=>j in M))throw uM(y);return{limb0:M.limb0,limb1:M.limb1,limb2:M.limb2,limb3:M.limb3}}if(il(y,r)){const M=r[y].members;return i(l,M)}return l},i=(l,y)=>y.reduce((j,G)=>{const $=fe=>Object.defineProperty(j,G.name,{enumerable:!0,value:fe??l[G.name]});if(l[G.name]==="undefined"&&(wc(G.type)||!kf(G.name)))throw Error(`Your object needs a property with key : ${G.name} .`);return $(a(l[G.name],G.type)),j},{});function s(l,y){const M=Fs(y);return va(l)?l:l.map(j=>a(j,M))}function o(l,y){return ag(y).reduce((G,$,fe)=>{const he=Object.keys(l),Oe=et=>Object.defineProperty(G,fe.toString(),{enumerable:!0,value:et??l[he[fe]]}),We=$?.type?$.type:$;return Oe(a(l[he[fe]],We)),G},{})}const c=(l,y)=>{if(Vh(y.name)){const $=l,fe=y.name.substring(y.name.indexOf("<")+1,y.name.lastIndexOf(",")),he=y.name.substring(y.name.indexOf(",")+1,y.name.lastIndexOf(">"));return $.isOk()?new rg(0,a(l.unwrap(),fe)):new rg(1,a(l.unwrap(),he))}if($h(y.name)){const $=l,fe=y.name.substring(y.name.indexOf("<")+1,y.name.lastIndexOf(">"));return $.isSome()?new tg(0,a($.unwrap(),fe)):new tg(1,{})}const M=l,G=Object.entries(M.variant).map($=>{if(typeof $[1]>"u")return $;const fe=y.type.substring(y.type.lastIndexOf("<")+1,y.type.lastIndexOf(">"));return fe==="()"?$:[$[0],a(M.unwrap(),fe)]});return new ol(Object.fromEntries(G))};return t.reduce((l,y)=>{const M=j=>Object.defineProperty(l,y.name,{enumerable:!0,value:j});return kf(y.name)&&!wc(y.type)||M(a(e[y.name],y.type)),l},{})}function Ad(e,t){switch(!0){case wa.isAbiType(e):return new wa(t).toApiRequest();case Ga.isAbiType(e):return new Ga(t).toApiRequest();case J2(e):return Oa(t.toString());case Zh(e):{const r=pa(Et(t)).padStart(128,"0"),n=eg(Un(r.slice(-64))),a=eg(Un(r.slice(0,-64)));return[Oi(a.low),Oi(a.high),Oi(n.low),Oi(n.high)]}default:return Oi(t)}}function hM(e,t){const r=ag(t),n=Object.values(e);if(n.length!==r.length)throw Error(`ParseTuple: provided and expected abi tuple size do not match. + provided: ${n} + expected: ${r}`);return r.map((a,i)=>({element:n[i],type:a.type??a}))}function pM(e){const t=jh(e);return[t.data.length.toString(),...t.data.map(r=>r.toString()),t.pending_word.toString(),t.pending_word_len.toString()]}function Hs(e,t,r,n){if(e===void 0)throw Error(`Missing parameter for type ${t}`);if(Array.isArray(e)){const a=[];a.push(Oi(e.length));const i=Fs(t);return e.reduce((s,o)=>s.concat(Hs(o,i,r,n)),a)}if(r[t]&&r[t].members.length){if(wa.isAbiType(t))return new wa(e).toApiRequest();if(Ga.isAbiType(t))return new Ga(e).toApiRequest();if(t==="core::starknet::eth_address::EthAddress")return Ad(t,e);if(t==="core::byte_array::ByteArray")return pM(e);const{members:a}=r[t],i=e;return a.reduce((s,o)=>s.concat(Hs(i[o.name],o.type,r,n)),[])}if(vc(t))return hM(e,t).reduce((i,s)=>{const o=Hs(s.element,s.type,r,n);return i.concat(o)},[]);if(wa.isAbiType(t))return new wa(e).toApiRequest();if(Ga.isAbiType(t))return new Ga(e).toApiRequest();if(If(t,n)){const{variants:a}=n[t];if($h(t)){const y=e;if(y.isSome()){const M=a.find($=>$.name==="Some");if(typeof M>"u")throw Error("Error in abi : Option has no 'Some' variant.");const j=M.type;if(j==="()")return"0";const G=Hs(y.unwrap(),j,r,n);return Array.isArray(G)?["0",...G]:["0",G]}return"1"}if(Vh(t)){const y=e;if(y.isOk()){const $=a.find(Oe=>Oe.name==="Ok");if(typeof $>"u")throw Error("Error in abi : Result has no 'Ok' variant.");const fe=$.type;if(fe==="()")return"0";const he=Hs(y.unwrap(),fe,r,n);return Array.isArray(he)?["0",...he]:["0",he]}const M=a.find($=>$.name==="Err");if(typeof M>"u")throw Error("Error in abi : Result has no 'Err' variant.");const j=M.type;if(j==="()")return"1";const G=Hs(y.unwrap(),j,r,n);return Array.isArray(G)?["1",...G]:["1",G]}const i=e,s=i.activeVariant(),o=a.find(y=>y.name===s);if(typeof o>"u")throw Error(`Not find in abi : Enum has no '${s}' variant.`);const c=o.type,d=a.findIndex(y=>y.name===s);if(c==="()")return d.toString();const l=Hs(i.unwrap(),c,r,n);return Array.isArray(l)?[d.toString(),...l]:[d.toString(),l]}if(Cf(t))return Ad(Fs(t),e);if(typeof e=="object")throw Error(`Parameter ${e} do not align with abi parameter ${t}`);return Ad(t,e)}function bM(e,t,r,n){const{name:a,type:i}=t;let{value:s}=e.next();switch(!0){case _c(i):if(!Array.isArray(s)&&!al(s))throw Error(`ABI expected parameter ${a} to be array or long string, got ${s}`);return va(s)&&(s=W2(s)),Hs(s,t.type,r,n);case Cf(i):return Ad(Fs(i),s);case i==="core::starknet::eth_address::EthAddress":return Ad(i,s);case(il(i,r)||vc(i)||wa.isAbiType(i)||wa.isAbiType(i)):return Hs(s,i,r,n);case If(i,n):return Hs(s,i,r,n);default:return Ad(i,s)}}function ig(e,t){let r;switch(!0){case zh(e):return r=t.next().value,!!BigInt(r);case wa.isAbiType(e):const n=t.next().value,a=t.next().value;return new wa(n,a).toBigInt();case Ga.isAbiType(e):const i=t.next().value,s=t.next().value,o=t.next().value,c=t.next().value;return new Ga(i,s,o,c).toBigInt();case e==="core::starknet::eth_address::EthAddress":return r=t.next().value,BigInt(r);case e==="core::bytes_31::bytes31":return r=t.next().value,Tf(r);case Zh(e):const d=pa(t.next().value).padStart(32,"0"),l=pa(t.next().value).padStart(32,"0"),y=pa(t.next().value).padStart(32,"0"),M=pa(t.next().value).padStart(32,"0");return BigInt(Un(l+d+M+y));default:return r=t.next().value,BigInt(r)}}function Ki(e,t,r,n){if(t.type==="()")return{};if(wa.isAbiType(t.type)){const a=e.next().value,i=e.next().value;return new wa(a,i).toBigInt()}if(Ga.isAbiType(t.type)){const a=e.next().value,i=e.next().value,s=e.next().value,o=e.next().value;return new Ga(a,i,s,o).toBigInt()}if(qh(t.type)){const a=[],i=BigInt(e.next().value);for(;a.length(a[i.name]=Ki(e,i,r,n),a),{});if(n&&t.type in n&&n[t.type]){const a=Number(e.next().value),i=n[t.type].variants.reduce((o,c,d)=>d===a?(o[c.name]=Ki(e,{name:"",type:c.type},r,n),o):(o[c.name]=void 0,o),{});if(t.type.startsWith("core::option::Option")){const o=a===0?i.Some:void 0;return new tg(a,o)}if(t.type.startsWith("core::result::Result")){let o;return a===0?o=i.Ok:o=i.Err,new rg(a,o)}return new ol(i)}if(vc(t.type))return ag(t.type).reduce((i,s,o)=>{const c=s?.name?s.name:o,d=s?.type?s.type:s,l={name:c,type:d};return i[c]=Ki(e,l,r,n),i},{});if(_c(t.type)){const a=[],i={name:"",type:Fs(t.type)},s=BigInt(e.next().value);for(;a.length{if(yn(va(e)||vd(e)||yc(e),`Validate: arg ${t.name} should be a felt typed as (String, Number or BigInt)`),va(e)&&!Zi(e))return;const r=BigInt(e.toString(10));yn(r>=0n&&r<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`)},gM=(e,t)=>{yn(va(e),`Validate: arg ${t.name} should be a string.`),yn(e.length<32,`Validate: arg ${t.name} cairo typed ${t.type} should be a string of less than 32 characters.`)},mM=(e,t)=>{yn(va(e),`Validate: arg ${t.name} should be a string.`)},Wh=(e,t)=>{vd(e)&&yn(e<=Number.MAX_SAFE_INTEGER,"Validation: Parameter is to large to be typed as Number use (BigInt or String)"),yn(va(e)||vd(e)||yc(e)||typeof e=="object"&&"low"in e&&"high"in e||typeof e=="object"&&["limb0","limb1","limb2","limb3"].every(n=>n in e),`Validate: arg ${t.name} of cairo type ${t.type} should be type (String, Number or BigInt), but is ${typeof e} ${e}.`);let r;switch(t.type){case"core::integer::u256":r=new wa(e).toBigInt();break;case"core::integer::u512":r=new Ga(e).toBigInt();break;default:r=Fn(e)}switch(t.type){case"core::integer::u8":yn(r>=0n&&r<=255n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0 - 255]`);break;case"core::integer::u16":yn(r>=0n&&r<=65535n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 65535]`);break;case"core::integer::u32":yn(r>=0n&&r<=4294967295n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 4294967295]`);break;case"core::integer::u64":yn(r>=0n&&r<=2n**64n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^64-1]`);break;case"core::integer::u128":yn(r>=0n&&r<=2n**128n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^128-1]`);break;case"core::integer::u256":yn(r>=0n&&r<=2n**256n-1n,`Validate: arg ${t.name} is ${t.type} 0 - 2^256-1`);break;case"core::integer::u512":yn(Ga.is(r),`Validate: arg ${t.name} is ${t.type} 0 - 2^512-1`);break;case"core::starknet::class_hash::ClassHash":yn(r>=0n&&r<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`);break;case"core::starknet::contract_address::ContractAddress":yn(r>=0n&&r<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`);break;case"core::starknet::secp256k1::Secp256k1Point":{yn(r>=0n&&r<=2n**512n-1n,`Validate: arg ${t.name} must be ${t.type} : a 512 bits number.`);break}default:break}},H8=(e,t)=>{yn(V2(e),`Validate: arg ${t.name} of cairo type ${t.type} should be type (Boolean)`)},j8=(e,t,r)=>{if(t.type==="core::integer::u256"||t.type==="core::integer::u512"){Wh(e,t);return}if(t.type==="core::starknet::eth_address::EthAddress"){yn(typeof e!="object",`EthAddress type is waiting a BigNumberish. Got ${e}`);const n=BigInt(e.toString(10));yn(n>=0n&&n<=2n**160n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^160-1]`);return}yn(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} is cairo type struct (${t.type}), and should be defined as js object (not array)`),r[t.type].members.forEach(({name:n})=>{yn(Object.keys(e).includes(n),`Validate: arg ${t.name} should have a property ${n}`)})},$8=(e,t)=>{yn(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} is cairo type Enum (${t.type}), and should be defined as js object (not array)`);const r=Object.getOwnPropertyNames(Object.getPrototypeOf(e)),n=[...Object.getOwnPropertyNames(e),...r];if(!($h(t.type)&&n.includes("isSome")&&n.includes("isNone"))&&!(Vh(t.type)&&n.includes("isOk")&&n.includes("isErr"))&&!(n.includes("variant")&&n.includes("activeVariant")))throw new Error(`Validate Enum: argument ${t.name}, type ${t.type}, value received ${e}, is not an Enum.`)},V8=(e,t)=>{yn(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} should be a tuple (defined as object)`)},z8=(e,t,r,n)=>{const a=Fs(t.type);if(!(Ed(a)&&G2(e)))switch(yn(Array.isArray(e),`Validate: arg ${t.name} should be an Array`),!0){case Ed(a):e.forEach(i=>sg(i,t));break;case vc(a):e.forEach(i=>V8(i,{name:t.name,type:a}));break;case _c(a):e.forEach(i=>z8(i,{name:"",type:a},r,n));break;case il(a,r):e.forEach(i=>j8(i,{name:t.name,type:a},r));break;case If(a,n):e.forEach(i=>$8(i,{name:t.name,type:a}));break;case(sl(a)||Y2(a)):e.forEach(i=>Wh(i,{name:"",type:a}));break;case zh(a):e.forEach(i=>H8(i,t));break;default:throw new Error(`Validate Unhandled: argument ${t.name}, type ${t.type}, value ${e}`)}},yM=(e,t)=>{const r=Fs(t.type);switch(yn(sl(r)&&r!==Ga.abiSelector||Ed(r),`Validate: ${t.name} type is not authorized for NonZero type.`),!0){case Ed(r):sg(e,t),yn(BigInt(e.toString(10))>0,"Validate: value 0 is not authorized in NonZero felt252 type.");break;case sl(r):switch(Wh(e,{name:"",type:r}),t.type){case"core::integer::u256":yn(new wa(e).toBigInt()>0,"Validate: value 0 is not authorized in NonZero uint256 type.");break;default:yn(Fn(e)>0,"Validate: value 0 is not authorized in NonZero uint type.")}break;default:throw new Error(`Validate Unhandled: argument ${t.name}, type ${t.type}, value ${e}`)}};function q8(e,t,r,n){e.inputs.reduce((a,i)=>{const s=t[a];switch(!0){case kf(i.name):return a;case Ed(i.type):sg(s,i);break;case J2(i.type):gM(s,i);break;case(sl(i.type)||Y2(i.type)):Wh(s,i);break;case zh(i.type):H8(s,i);break;case qh(i.type):mM(s,i);break;case _c(i.type):z8(s,i,r,n);break;case il(i.type,r):j8(s,i,r);break;case If(i.type,n):$8(s,i);break;case vc(i.type):V8(s,i);break;case Cf(i.type):yM(s,i);break;default:throw new Error(`Validate Unhandled: argument ${i.name}, type ${i.type}, value ${s}`)}return a+1},0)}var xn=class W0{constructor(t){yt(this,"abi");yt(this,"parser");yt(this,"structs");yt(this,"enums");this.structs=W0.getAbiStruct(t),this.enums=W0.getAbiEnum(t),this.parser=L8(t),this.abi=this.parser.getLegacyFormat()}validate(t,r,n=[]){if(t!=="DEPLOY"){const s=this.abi.filter(o=>{if(o.type!=="function")return!1;const c=o.stateMutability==="view"||o.state_mutability==="view";return t==="INVOKE"?!c:c}).map(o=>o.name);yn(s.includes(r),`${t==="INVOKE"?"invocable":"viewable"} method not found in abi`)}const a=this.abi.find(s=>t==="DEPLOY"?s.name===r&&s.type==="constructor":s.name===r&&s.type==="function");if(U8(r,n,a))return;const i=this.parser.methodInputsLength(a);if(n.length!==i)throw Error(`Invalid number of arguments, expected ${i} arguments, but got ${n.length}`);q8(a,n,this.structs,this.enums)}compile(t,r){const n=this.abi.find(o=>o.name===t);if(U8(t,r,n))return[];let a;if(Array.isArray(r))a=r;else{const o=lM(r,n.inputs,this.structs,this.enums);a=Object.values(o),q8(n,a,this.structs,this.enums)}const i=a[Symbol.iterator](),s=n.inputs.reduce((o,c)=>kf(c.name)&&!wc(c.type)?o:o.concat(bM(i,c,this.structs,this.enums)),[]);return Object.defineProperty(s,"__compiled__",{enumerable:!1,writable:!1,value:!0}),s}static compile(t){const r=a=>{const i=(o,c=".")=>{const d=Array.isArray(o)?[o.length.toString(),...o]:o;return Object.entries(d).flatMap(([l,y])=>{let M=y;l==="entrypoint"?M=Aa(M):G2(M)&&(M=jh(M));const j=Array.isArray(d)&&l==="0"?"$$len":l;if(yc(M))return[[`${c}${j}`,Oi(M)]];if(Object(M)===M){const G=Object.getOwnPropertyNames(Object.getPrototypeOf(M)),$=[...Object.getOwnPropertyNames(M),...G];if($.includes("isSome")&&$.includes("isNone")){const fe=M,he=fe.isSome()?0:1;return fe.isSome()?i({0:he,1:fe.unwrap()},`${c}${j}.`):[[`${c}${j}`,Oi(he)]]}if($.includes("isOk")&&$.includes("isErr")){const fe=M,he=fe.isOk()?0:1;return i({0:he,1:fe.unwrap()},`${c}${j}.`)}if($.includes("variant")&&$.includes("activeVariant")){const fe=M,he=fe.activeVariant(),We=Object.keys(fe.variant).findIndex(et=>et===he);return typeof fe.unwrap()=="object"&&Object.keys(fe.unwrap()).length===0?[[`${c}${j}`,Oi(We)]]:i({0:We,1:fe.unwrap()},`${c}${j}.`)}return i(M,`${c}${j}.`)}return[[`${c}${j}`,Oi(M)]]})};return Object.fromEntries(i(a))};let n;if(Array.isArray(t)){const a={...t},i=r(a);n=Object.values(i)}else{const a=r(t);n=Object.values(a)}return Object.defineProperty(n,"__compiled__",{enumerable:!1,writable:!1,value:!0}),n}parse(t,r){const{outputs:n}=this.abi.find(s=>s.name===t),a=r.flat()[Symbol.iterator](),i=n.flat().reduce((s,o,c)=>{const d=o.name??c;return s[d]=Gh(a,o,this.structs,this.enums,s),s[d]&&s[`${d}_len`]&&delete s[`${d}_len`],s},{});return Object.keys(i).length===1&&0 in i?i[0]:i}format(t,r,n){const a=this.parse(t,r);return Kh(a,n)}static getAbiStruct(t){return t.filter(r=>r.type==="struct").reduce((r,n)=>({...r,[n.name]:n}),{})}static getAbiEnum(t){const r=t.filter(n=>n.type==="enum").reduce((n,a)=>({...n,[a.name]:a}),{});return delete r["core::bool"],r}static toCalldata(t=[]){return W0.compile(t)}static toHex(t=[]){return W0.compile(t).map(n=>Et(n))}decodeParameters(t,r){const n=Array.isArray(t)?t:[t],a=r.flat()[Symbol.iterator](),i=n.map(s=>Gh(a,{name:"",type:s},this.structs,this.enums));return i.length===1?i[0]:i}},og={};Xn(og,{calculateContractAddressFromHash:()=>Xh,calculateDeclareTransactionHash:()=>fl,calculateDeployAccountTransactionHash:()=>dl,calculateInvokeTransactionHash:()=>cl,computeCompiledClassHash:()=>fv,computeContractClassHash:()=>uv,computeHashOnElements:()=>js,computeHintedClassHash:()=>sv,computeLegacyContractClassHash:()=>ov,computePedersenHash:()=>ul,computePedersenHashOnElements:()=>av,computePoseidonHash:()=>nv,computePoseidonHashOnElements:()=>iv,computeSierraContractClassHash:()=>dv,formatSpaces:()=>ll,getSelector:()=>Hh,getSelectorFromName:()=>Aa,hashByteCodeSegments:()=>cv,keccakBn:()=>z2,poseidon:()=>C,starknetKeccak:()=>q2});var _M={};Xn(_M,{calculateDeclareTransactionHash:()=>K8,calculateDeployAccountTransactionHash:()=>G8,calculateTransactionHash:()=>W8,calculateTransactionHashCommon:()=>Yh,computeHashOnElements:()=>cg});var Z8={};Xn(Z8,{starkCurve:()=>z,weierstrass:()=>L});function cg(e){return[...e,e.length].reduce((t,r)=>No(Fn(t),Fn(r)),0).toString()}function Yh(e,t,r,n,a,i,s,o=[]){const c=cg(a),d=[e,t,r,n,c,i,s,...o];return cg(d)}function K8(e,t,r,n,a,i,s){return Yh("0x6465636c617265",r,t,0,[e],n,a,[i,...s?[s]:[]])}function G8(e,t,r,n,a,i,s,o){const c=[t,n,...r];return Yh("0x6465706c6f795f6163636f756e74",a,e,0,c,i,s,[o])}function W8(e,t,r,n,a,i){return Yh("0x696e766f6b65",t,e,0,r,n,a,[i])}var vM={};Xn(vM,{calculateDeclareTransactionHash:()=>ev,calculateDeployAccountTransactionHash:()=>Q8,calculateInvokeTransactionHash:()=>tv,calculateTransactionHashCommon:()=>Jh,hashDAMode:()=>J8,hashFeeField:()=>X8});var Ec=e=>e.map(t=>BigInt(t)),wM=32n,EM=64n,fg=128n,Y8=EM+fg,xM=BigInt(Oa("L1_GAS")),AM=BigInt(Oa("L2_GAS"));function J8(e,t){return(BigInt(e)<Td,parseAlwaysAsBig:()=>CM,stringify:()=>ni,stringifyAlwaysAsBig:()=>OM});var IM=e=>{if(!Ou(e))return parseFloat(e);const t=parseInt(e,10);return Number.isSafeInteger(t)?t:BigInt(e)},Td=e=>Y4(String(e),void 0,IM),CM=e=>Y4(String(e),void 0,zI),ni=(e,t,r,n)=>t_(e,t,r,n),OM=ni;function ul(e,t){return No(BigInt(e),BigInt(t))}function nv(e,t){return Et(bh(BigInt(e),BigInt(t)))}function js(e){return[...e,e.length].reduce((t,r)=>No(BigInt(t),BigInt(r)),0).toString()}var av=js;function iv(e){return Et(ta(e.map(t=>BigInt(t))))}function Xh(e,t,r,n){const a=xn.compile(r),i=js(a),s=Oi("0x535441524b4e45545f434f4e54524143545f41444452455353"),o=js([s,n,e,t,i]);return Et(BigInt(o)%N2)}function NM(e,t){return e==="attributes"||e==="accessible_scopes"?Array.isArray(t)&&t.length===0?void 0:t:e==="debug_info"?null:t===null?void 0:t}function ll(e){let t=!1;const r=[];for(const n of e)n==='"'&&!(r.length>0&&r.slice(-1)[0]==="\\")&&(t=!t),t?r.push(n):r.push(n===":"?": ":n===","?", ":n);return r.join("")}function sv(e){const{abi:t,program:r}=e,a=ll(ni({abi:t,program:r},NM));return Un(fi(mc(a)).toString(16))}function ov(e){const t=va(e)?Td(e):e,r=Et(f8),n=js(t.entry_points_by_type.EXTERNAL.flatMap(d=>[d.selector,d.offset])),a=js(t.entry_points_by_type.L1_HANDLER.flatMap(d=>[d.selector,d.offset])),i=js(t.entry_points_by_type.CONSTRUCTOR.flatMap(d=>[d.selector,d.offset])),s=js(t.program.builtins.map(d=>Oa(d))),o=sv(t),c=js(t.program.data);return js([r,n,a,i,s,o,c])}function RM(e){return ta(e.flatMap(t=>BigInt(Oa(t))))}function dg(e){const t=e.flatMap(r=>[BigInt(r.selector),BigInt(r.offset),RM(r.builtins)]);return ta(t)}function cv(e){const t=e.bytecode.map(i=>BigInt(i)),r=e.bytecode_segment_lengths??[];let n=0;const a=r.flatMap(i=>{const s=t.slice(n,n+=i);return[BigInt(i),ta(s)]});return 1n+ta(a)}function fv(e){const r=BigInt(Oa("COMPILED_CLASS_V1")),n=dg(e.entry_points_by_type.EXTERNAL),a=dg(e.entry_points_by_type.L1_HANDLER),i=dg(e.entry_points_by_type.CONSTRUCTOR),s=e.bytecode_segment_lengths?cv(e):ta(e.bytecode.map(o=>BigInt(o)));return Et(ta([r,n,a,i,s]))}function ug(e){const t=e.flatMap(r=>[BigInt(r.selector),BigInt(r.function_idx)]);return ta(t)}function MM(e){const t=ll(ni(e.abi,null));return BigInt(Un(fi(mc(t)).toString(16)))}function dv(e){const r=BigInt(Oa("CONTRACT_CLASS_V0.1.0")),n=ug(e.entry_points_by_type.EXTERNAL),a=ug(e.entry_points_by_type.L1_HANDLER),i=ug(e.entry_points_by_type.CONSTRUCTOR),s=MM(e),o=ta(e.sierra_program.map(c=>BigInt(c)));return Et(ta([r,n,a,i,s,o]))}function uv(e){const t=va(e)?Td(e):e;return"sierra_program"in t?dv(t):ov(t)}var BM={};Xn(BM,{compressProgram:()=>lg,decompressProgram:()=>xc,estimateFeeToBounds:()=>hl,estimatedFeeToMaxFee:()=>hv,formatSignature:()=>Qh,intDAM:()=>li,makeAddress:()=>PM,randomAddress:()=>lv,reduceV2:()=>tp,signatureToDecimalArray:()=>DM,signatureToHexArray:()=>Ta,toFeeVersion:()=>ep,toTransactionVersion:()=>$s,v3Details:()=>Sa});function lg(e){const t=va(e)?e:ni(e),r=Rh(t);return a8(r)}function xc(e){if(Array.isArray(e))return e;const t=r8(b2(n8(e)));return Td(t)}function lv(){const e=Su.randomPrivateKey();return ku(e)}function PM(e){return Un(e).toLowerCase()}function Qh(e){if(!e)throw Error("formatSignature: provided signature is undefined");if(Array.isArray(e))return e.map(t=>Et(t));try{const{r:t,s:r}=e;return[Et(t),Et(r)]}catch{throw new Error("Signature need to be weierstrass.SignatureType or an array for custom")}}function DM(e){return k8(Qh(e))}function Ta(e){return I8(Qh(e))}function hv(e,t=50){return tl(e,t)}function hl(e,t=50,r=50){if(yc(e))return{l2_gas:{max_amount:"0x0",max_price_per_unit:"0x0"},l1_gas:{max_amount:"0x0",max_price_per_unit:"0x0"}};if(typeof e.gas_consumed>"u"||typeof e.gas_price>"u")throw Error("estimateFeeToBounds: estimate is undefined");const n=e.data_gas_consumed!==void 0&&e.data_gas_price!==void 0?Et(tl(BigInt(e.overall_fee)/BigInt(e.gas_price),t)):Et(tl(e.gas_consumed,t)),a=Et(tl(e.gas_price,r));return{l2_gas:{max_amount:"0x0",max_price_per_unit:"0x0"},l1_gas:{max_amount:n,max_price_per_unit:a}}}function li(e){if(e===Vt.EDataAvailabilityMode.L1)return Vt.EDAMode.L1;if(e===Vt.EDataAvailabilityMode.L2)return Vt.EDAMode.L2;throw Error("EDAM conversion")}function $s(e,t){const r=t?Et(t):void 0,n=Et(e);if(t&&!Object.values(Vt.ETransactionVersion).includes(r))throw Error(`providedVersion ${t} is not ETransactionVersion`);if(!Object.values(Vt.ETransactionVersion).includes(n))throw Error(`defaultVersion ${e} is not ETransactionVersion`);return t?r:n}function ep(e){if(!e)return;const t=Et(e);if(t===Vt.ETransactionVersion.V0)return Vt.ETransactionVersion.F0;if(t===Vt.ETransactionVersion.V1)return Vt.ETransactionVersion.F1;if(t===Vt.ETransactionVersion.V2)return Vt.ETransactionVersion.F2;if(t===Vt.ETransactionVersion.V3)return Vt.ETransactionVersion.F3;throw Error(`toFeeVersion: ${t} is not supported`)}function Sa(e){return{tip:e.tip||0,paymasterData:e.paymasterData||[],accountDeploymentData:e.accountDeploymentData||[],nonceDataAvailabilityMode:e.nonceDataAvailabilityMode||Vt.EDataAvailabilityMode.L1,feeDataAvailabilityMode:e.feeDataAvailabilityMode||Vt.EDataAvailabilityMode.L1,resourceBounds:e.resourceBounds??hl(_a)}}function tp(e){return e===Vt.ETransactionVersion.F2?Vt.ETransactionVersion.F1:e===Vt.ETransactionVersion.V2?Vt.ETransactionVersion.V1:e}function Wa(e){return"sierra_program"in(va(e)?Td(e):e)}function rp(e){const t={...e};if(Wa(e.contract)&&(!e.compiledClassHash&&e.casm&&(t.compiledClassHash=fv(e.casm)),!t.compiledClassHash))throw new Error("Extract compiledClassHash failed, provide (CairoAssembly).casm file or compiledClassHash");if(t.classHash=e.classHash??uv(e.contract),!t.classHash)throw new Error("Extract classHash failed, provide (CompiledContract).json file or classHash");return t}function sQ(e){if(Wa(e))throw Error("ContractClassResponse need to be LegacyContractClass (cairo0 response class)");const t=e;return{...t,program:xc(t.program)}}var LM={};Xn(LM,{ethRandomPrivateKey:()=>pv,validateAndParseEthAddress:()=>hg});function pv(){return yd(Ju(m2.utils.randomPrivateKey()))}function hg(e){F2(e,_a,2n**160n-1n,"Ethereum Address ");const t=Un(pa(Et(e)).padStart(40,"0"));return yn(!!t.match(/^(0x)?[0-9a-f]{40}$/),"Invalid Ethereum Address Format"),t}var bv=typeof window<"u"&&window.fetch||typeof global<"u"&&gR(global.fetch)||x2,UM={};Xn(UM,{Block:()=>Rn,createSierraContractClass:()=>gv,getDefaultNodeUrl:()=>pl,isPendingBlock:()=>FM,isPendingStateUpdate:()=>jM,isPendingTransaction:()=>HM,isV3Tx:()=>hi,isVersion:()=>pg,parseContract:()=>mv,validBlockTags:()=>yv,wait:()=>Sd});function Sd(e){return new Promise(t=>{setTimeout(t,e)})}function gv(e){const t={...e};return delete t.sierra_program_debug_info,t.abi=ll(ni(e.abi)),t.sierra_program=ll(ni(e.sierra_program)),t.sierra_program=lg(t.sierra_program),t}function mv(e){const t=va(e)?Td(e):e;return Wa(e)?gv(t):{...t,..."program"in t&&{program:lg(t.program)}}}var pl=(e,t=!1)=>{t||console.warn("Using default public node url, please provide nodeUrl in provider options!");const r=m8[e??"SN_SEPOLIA"],n=Math.floor(Math.random()*r.length);return r[n]},yv=Object.values(D2),Rn=class{constructor(e){yt(this,"hash",null);yt(this,"number",null);yt(this,"tag",null);yt(this,"valueOf",()=>this.number);yt(this,"toString",()=>this.hash);this.setIdentifier(e)}setIdentifier(e){if(va(e))if(K2(e))this.number=parseInt(e,10);else if(Zi(e))this.hash=e;else if(yv.includes(e))this.tag=e;else throw TypeError(`Block identifier unmanaged: ${e}`);else yc(e)?this.hash=Et(e):vd(e)?this.number=e:this.tag="pending";if(vd(this.number)&&this.number<0)throw TypeError(`Block number (${this.number}) can't be negative`)}get queryIdentifier(){return this.number!==null?`blockNumber=${this.number}`:this.hash!==null?`blockHash=${this.hash}`:`blockNumber=${this.tag}`}get identifier(){return this.number!==null?{block_number:this.number}:this.hash!==null?{block_hash:this.hash}:this.tag}set identifier(e){this.setIdentifier(e)}};function hi(e){const t=e.version?Et(e.version):Vt.ETransactionVersion.V3;return t===Vt.ETransactionVersion.V3||t===Vt.ETransactionVersion.F3}function pg(e,t){const[r,n]=e.split("."),[a,i]=t.split(".");return r===a&&n===i}function FM(e){return e.status==="PENDING"}function HM(e){return!("block_hash"in e)}function jM(e){return!("block_hash"in e)}var $M={};Xn($M,{buildUDCCall:()=>gg,fromCallsToExecuteCalldata:()=>bg,fromCallsToExecuteCalldataWithNonce:()=>VM,fromCallsToExecuteCalldata_cairo1:()=>vv,getExecuteCalldata:()=>bl,getVersionsByType:()=>mg,transformCallsToMulticallArrays:()=>_v,transformCallsToMulticallArrays_cairo1:()=>zM});var _v=e=>{const t=[],r=[];return e.forEach(n=>{const a=xn.compile(n.calldata||[]);t.push({to:Fn(n.contractAddress).toString(10),selector:Fn(Aa(n.entrypoint)).toString(10),data_offset:r.length.toString(),data_len:a.length.toString()}),r.push(...a)}),{callArray:t,calldata:xn.compile({calldata:r})}},bg=e=>{const{callArray:t,calldata:r}=_v(e);return[...xn.compile({callArray:t}),...r]},VM=(e,t)=>[...bg(e),Fn(t).toString()],zM=e=>e.map(r=>({to:Fn(r.contractAddress).toString(10),selector:Fn(Aa(r.entrypoint)).toString(10),calldata:xn.compile(r.calldata||[])})),vv=e=>{const t=e.map(r=>({contractAddress:r.contractAddress,entrypoint:r.entrypoint,calldata:Array.isArray(r.calldata)&&"__compiled__"in r.calldata?r.calldata:xn.compile(r.calldata)}));return xn.compile({orderCalls:t})},bl=(e,t="0")=>t==="1"?vv(e):bg(e);function gg(e,t){const r=[].concat(e).map(n=>{const{classHash:a,salt:i,unique:s=!0,constructorCalldata:o=[]}=n,c=xn.compile(o),d=i??lv();return{call:{contractAddress:xf.ADDRESS,entrypoint:xf.ENTRYPOINT,calldata:[a,d,j2(s),c.length,...c]},address:Xh(s?No(t,d):d,a,c,s?xf.ADDRESS:0)}});return{calls:r.map(n=>n.call),addresses:r.map(n=>n.address)}}function mg(e){return e==="fee"?{v1:Vt.ETransactionVersion.F1,v2:Vt.ETransactionVersion.F2,v3:Vt.ETransactionVersion.F3}:{v1:Vt.ETransactionVersion.V1,v2:Vt.ETransactionVersion.V2,v3:Vt.ETransactionVersion.V3}}var yg={headers:{"Content-Type":"application/json"},blockIdentifier:"pending",retries:200},qM=class{constructor(e){yt(this,"nodeUrl");yt(this,"headers");yt(this,"retries");yt(this,"requestId");yt(this,"blockIdentifier");yt(this,"chainId");yt(this,"specVersion");yt(this,"waitMode");const{nodeUrl:t,retries:r,headers:n,blockIdentifier:a,chainId:i,specVersion:s,waitMode:o}=e||{};Object.values(Fh).includes(t)?this.nodeUrl=pl(t,e?.default):t?this.nodeUrl=t:this.nodeUrl=pl(void 0,e?.default),this.retries=r||yg.retries,this.headers={...yg.headers,...n},this.blockIdentifier=a||yg.blockIdentifier,this.chainId=i,this.specVersion=s,this.waitMode=o||!1,this.requestId=0}setChainId(e){this.chainId=e}fetch(e,t,r=0){const n={id:r,jsonrpc:"2.0",method:e,...t&&{params:t}};return bv(this.nodeUrl,{method:"POST",body:ni(n),headers:this.headers})}errorHandler(e,t,r,n){if(r){const{code:a,message:i,data:s}=r;throw new Af(`RPC: ${e} with params ${ni(t,null,2)} + + ${a}: ${i}: ${ni(s)}`)}if(n instanceof Af)throw n;if(n)throw Error(n.message)}async fetchEndpoint(e,t){try{const r=await this.fetch(e,t,this.requestId+=1),{error:n,result:a}=await r.json();return this.errorHandler(e,t,n),a}catch(r){throw this.errorHandler(e,t,r?.response?.data,r),r}}async getChainId(){return this.chainId??(this.chainId=await this.fetchEndpoint("starknet_chainId")),this.chainId}async getSpecVersion(){return this.specVersion??(this.specVersion=await this.fetchEndpoint("starknet_specVersion")),this.specVersion}getNonceForAddress(e,t=this.blockIdentifier){const r=Et(e),n=new Rn(t).identifier;return this.fetchEndpoint("starknet_getNonce",{contract_address:r,block_id:n})}getBlockLatestAccepted(){return this.fetchEndpoint("starknet_blockHashAndNumber")}getBlockNumber(){return this.fetchEndpoint("starknet_blockNumber")}getBlockWithTxHashes(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxHashes",{block_id:t})}getBlockWithTxs(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxs",{block_id:t})}getBlockStateUpdate(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_getStateUpdate",{block_id:t})}getBlockTransactionsTraces(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_traceBlockTransactions",{block_id:t})}getBlockTransactionCount(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_getBlockTransactionCount",{block_id:t})}getTransactionByHash(e){const t=Et(e);return this.fetchEndpoint("starknet_getTransactionByHash",{transaction_hash:t})}getTransactionByBlockIdAndIndex(e,t){const r=new Rn(e).identifier;return this.fetchEndpoint("starknet_getTransactionByBlockIdAndIndex",{block_id:r,index:t})}getTransactionReceipt(e){const t=Et(e);return this.fetchEndpoint("starknet_getTransactionReceipt",{transaction_hash:t})}getTransactionTrace(e){const t=Et(e);return this.fetchEndpoint("starknet_traceTransaction",{transaction_hash:t})}getTransactionStatus(e){const t=Et(e);return this.fetchEndpoint("starknet_getTransactionStatus",{transaction_hash:t})}simulateTransaction(e,t={}){const{blockIdentifier:r=this.blockIdentifier,skipValidate:n=!0,skipFeeCharge:a=!0}=t,i=new Rn(r).identifier,s=[];return n&&s.push(ia.ESimulationFlag.SKIP_VALIDATE),a&&s.push(ia.ESimulationFlag.SKIP_FEE_CHARGE),this.fetchEndpoint("starknet_simulateTransactions",{block_id:i,transactions:e.map(o=>this.buildTransaction(o)),simulation_flags:s})}async waitForTransaction(e,t){const r=Et(e);let{retries:n}=this,a=!1,i=!1;const s=t?.retryInterval??5e3,o=t?.errorStates??[ia.ETransactionStatus.REJECTED],c=t?.successStates??[ia.ETransactionExecutionStatus.SUCCEEDED,ia.ETransactionStatus.ACCEPTED_ON_L2,ia.ETransactionStatus.ACCEPTED_ON_L1];let d;for(;!a;){await Sd(s);try{d=await this.getTransactionStatus(r);const y=d.execution_status,M=d.finality_status;if(!M)throw new Error("waiting for transaction status");if(o.includes(y)||o.includes(M)){const j=`${y}: ${M}`,G=new Error(j);throw G.response=d,i=!0,G}else(c.includes(y)||c.includes(M))&&(a=!0)}catch(y){if(y instanceof Error&&i)throw y;if(n<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}n-=1}let l=null;for(;l===null;){try{l=await this.getTransactionReceipt(r)}catch{if(n<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}n-=1,await Sd(s)}return l}getStorageAt(e,t,r=this.blockIdentifier){const n=Et(e),a=U2(t),i=new Rn(r).identifier;return this.fetchEndpoint("starknet_getStorageAt",{contract_address:n,key:a,block_id:i})}getClassHashAt(e,t=this.blockIdentifier){const r=Et(e),n=new Rn(t).identifier;return this.fetchEndpoint("starknet_getClassHashAt",{block_id:n,contract_address:r})}getClass(e,t=this.blockIdentifier){const r=Et(e),n=new Rn(t).identifier;return this.fetchEndpoint("starknet_getClass",{class_hash:r,block_id:n})}getClassAt(e,t=this.blockIdentifier){const r=Et(e),n=new Rn(t).identifier;return this.fetchEndpoint("starknet_getClassAt",{block_id:n,contract_address:r})}async getEstimateFee(e,{blockIdentifier:t=this.blockIdentifier,skipValidate:r=!0}){const n=new Rn(t).identifier;let a={};return pg("0.5",await this.getSpecVersion())||(a={simulation_flags:r?[ia.ESimulationFlag.SKIP_VALIDATE]:[]}),this.fetchEndpoint("starknet_estimateFee",{request:e.map(i=>this.buildTransaction(i,"fee")),block_id:n,...a})}async invoke(e,t){let r;return hi(t)?r=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{type:ia.ETransactionType.INVOKE,sender_address:e.contractAddress,calldata:xn.toHex(e.calldata),version:ia.ETransactionVersion.V3,signature:Ta(e.signature),nonce:Et(t.nonce),resource_bounds:t.resourceBounds,tip:Et(t.tip),paymaster_data:t.paymasterData.map(n=>Et(n)),account_deployment_data:t.accountDeploymentData.map(n=>Et(n)),nonce_data_availability_mode:t.nonceDataAvailabilityMode,fee_data_availability_mode:t.feeDataAvailabilityMode}}):r=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{sender_address:e.contractAddress,calldata:xn.toHex(e.calldata),type:ia.ETransactionType.INVOKE,max_fee:Et(t.maxFee||0),version:ia.ETransactionVersion.V1,signature:Ta(e.signature),nonce:Et(t.nonce)}}),this.waitMode?this.waitForTransaction((await r).transaction_hash):r}async declare({contract:e,signature:t,senderAddress:r,compiledClassHash:n},a){let i;if(!Wa(e)&&!hi(a))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:ia.ETransactionType.DECLARE,contract_class:{program:e.program,entry_points_by_type:e.entry_points_by_type,abi:e.abi},version:ia.ETransactionVersion.V1,max_fee:Et(a.maxFee||0),signature:Ta(t),sender_address:r,nonce:Et(a.nonce)}});else if(Wa(e)&&!hi(a))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:ia.ETransactionType.DECLARE,contract_class:{sierra_program:xc(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},compiled_class_hash:n||"",version:ia.ETransactionVersion.V2,max_fee:Et(a.maxFee||0),signature:Ta(t),sender_address:r,nonce:Et(a.nonce)}});else if(Wa(e)&&hi(a))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:ia.ETransactionType.DECLARE,sender_address:r,compiled_class_hash:n||"",version:ia.ETransactionVersion.V3,signature:Ta(t),nonce:Et(a.nonce),contract_class:{sierra_program:xc(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},resource_bounds:a.resourceBounds,tip:Et(a.tip),paymaster_data:a.paymasterData.map(s=>Et(s)),account_deployment_data:a.accountDeploymentData.map(s=>Et(s)),nonce_data_availability_mode:a.nonceDataAvailabilityMode,fee_data_availability_mode:a.feeDataAvailabilityMode}});else throw Error("declare unspotted parameters");return this.waitMode?this.waitForTransaction((await i).transaction_hash):i}async deployAccount({classHash:e,constructorCalldata:t,addressSalt:r,signature:n},a){let i;return hi(a)?i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{type:ia.ETransactionType.DEPLOY_ACCOUNT,version:ia.ETransactionVersion.V3,signature:Ta(n),nonce:Et(a.nonce),contract_address_salt:Et(r||0),constructor_calldata:xn.toHex(t||[]),class_hash:Et(e),resource_bounds:a.resourceBounds,tip:Et(a.tip),paymaster_data:a.paymasterData.map(s=>Et(s)),nonce_data_availability_mode:a.nonceDataAvailabilityMode,fee_data_availability_mode:a.feeDataAvailabilityMode}}):i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{constructor_calldata:xn.toHex(t||[]),class_hash:Et(e),contract_address_salt:Et(r||0),type:ia.ETransactionType.DEPLOY_ACCOUNT,max_fee:Et(a.maxFee||0),version:ia.ETransactionVersion.V1,signature:Ta(n),nonce:Et(a.nonce)}}),this.waitMode?this.waitForTransaction((await i).transaction_hash):i}callContract(e,t=this.blockIdentifier){const r=new Rn(t).identifier;return this.fetchEndpoint("starknet_call",{request:{contract_address:e.contractAddress,entry_point_selector:Aa(e.entrypoint),calldata:xn.toHex(e.calldata)},block_id:r})}estimateMessageFee(e,t=this.blockIdentifier){const{from_address:r,to_address:n,entry_point_selector:a,payload:i}=e,s={from_address:hg(r),to_address:Et(n),entry_point_selector:Hh(a),payload:H2(i)},o=new Rn(t).identifier;return this.fetchEndpoint("starknet_estimateMessageFee",{message:s,block_id:o})}getSyncingStats(){return this.fetchEndpoint("starknet_syncing")}getEvents(e){return this.fetchEndpoint("starknet_getEvents",{filter:e})}buildTransaction(e,t){const r=mg(t);let n;if(hi(e)?n={signature:Ta(e.signature),nonce:Et(e.nonce),resource_bounds:e.resourceBounds,tip:Et(e.tip),paymaster_data:e.paymasterData.map(a=>Et(a)),nonce_data_availability_mode:e.nonceDataAvailabilityMode,fee_data_availability_mode:e.feeDataAvailabilityMode,account_deployment_data:e.accountDeploymentData.map(a=>Et(a))}:n={signature:Ta(e.signature),nonce:Et(e.nonce),max_fee:Et(e.maxFee||0)},e.type==="INVOKE_FUNCTION")return{type:ia.ETransactionType.INVOKE,sender_address:e.contractAddress,calldata:xn.toHex(e.calldata),version:Et(e.version||r.v3),...n};if(e.type==="DECLARE")return Wa(e.contract)?{type:e.type,contract_class:{...e.contract,sierra_program:xc(e.contract.sierra_program)},compiled_class_hash:e.compiledClassHash||"",sender_address:e.senderAddress,version:Et(e.version||r.v3),...n}:{type:e.type,contract_class:e.contract,sender_address:e.senderAddress,version:Et(e.version||r.v1),...n};if(e.type==="DEPLOY_ACCOUNT"){const{account_deployment_data:a,...i}=n;return{type:e.type,constructor_calldata:xn.toHex(e.constructorCalldata||[]),class_hash:Et(e.classHash),contract_address_salt:Et(e.addressSalt||0),version:Et(e.version||r.v3),...i}}throw Error("RPC buildTransaction received unknown TransactionType")}},ZM={};Xn(ZM,{RpcChannel:()=>wv});var _g={headers:{"Content-Type":"application/json"},blockIdentifier:"pending",retries:200},wv=class{constructor(e){yt(this,"nodeUrl");yt(this,"headers");yt(this,"retries");yt(this,"requestId");yt(this,"blockIdentifier");yt(this,"chainId");yt(this,"specVersion");yt(this,"transactionRetryIntervalFallback");yt(this,"waitMode");const{nodeUrl:t,retries:r,headers:n,blockIdentifier:a,chainId:i,specVersion:s,waitMode:o,transactionRetryIntervalFallback:c}=e||{};Object.values(Fh).includes(t)?this.nodeUrl=pl(t,e?.default):t?this.nodeUrl=t:this.nodeUrl=pl(void 0,e?.default),this.retries=r||_g.retries,this.headers={..._g.headers,...n},this.blockIdentifier=a||_g.blockIdentifier,this.chainId=i,this.specVersion=s,this.waitMode=o||!1,this.requestId=0,this.transactionRetryIntervalFallback=c}get transactionRetryIntervalDefault(){return this.transactionRetryIntervalFallback??5e3}setChainId(e){this.chainId=e}fetch(e,t,r=0){const n={id:r,jsonrpc:"2.0",method:e,...t&&{params:t}};return bv(this.nodeUrl,{method:"POST",body:ni(n),headers:this.headers})}errorHandler(e,t,r,n){if(r){const{code:a,message:i,data:s}=r;throw new Af(`RPC: ${e} with params ${ni(t,null,2)} + + ${a}: ${i}: ${ni(s)}`)}if(n instanceof Af)throw n;if(n)throw Error(n.message)}async fetchEndpoint(e,t){try{const r=await this.fetch(e,t,this.requestId+=1),{error:n,result:a}=await r.json();return this.errorHandler(e,t,n),a}catch(r){throw this.errorHandler(e,t,r?.response?.data,r),r}}async getChainId(){return this.chainId??(this.chainId=await this.fetchEndpoint("starknet_chainId")),this.chainId}async getSpecVersion(){return this.specVersion??(this.specVersion=await this.fetchEndpoint("starknet_specVersion")),this.specVersion}getNonceForAddress(e,t=this.blockIdentifier){const r=Et(e),n=new Rn(t).identifier;return this.fetchEndpoint("starknet_getNonce",{contract_address:r,block_id:n})}getBlockLatestAccepted(){return this.fetchEndpoint("starknet_blockHashAndNumber")}getBlockNumber(){return this.fetchEndpoint("starknet_blockNumber")}getBlockWithTxHashes(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxHashes",{block_id:t})}getBlockWithTxs(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxs",{block_id:t})}getBlockWithReceipts(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_getBlockWithReceipts",{block_id:t})}getBlockStateUpdate(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_getStateUpdate",{block_id:t})}getBlockTransactionsTraces(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_traceBlockTransactions",{block_id:t})}getBlockTransactionCount(e=this.blockIdentifier){const t=new Rn(e).identifier;return this.fetchEndpoint("starknet_getBlockTransactionCount",{block_id:t})}getTransactionByHash(e){const t=Et(e);return this.fetchEndpoint("starknet_getTransactionByHash",{transaction_hash:t})}getTransactionByBlockIdAndIndex(e,t){const r=new Rn(e).identifier;return this.fetchEndpoint("starknet_getTransactionByBlockIdAndIndex",{block_id:r,index:t})}getTransactionReceipt(e){const t=Et(e);return this.fetchEndpoint("starknet_getTransactionReceipt",{transaction_hash:t})}getTransactionTrace(e){const t=Et(e);return this.fetchEndpoint("starknet_traceTransaction",{transaction_hash:t})}getTransactionStatus(e){const t=Et(e);return this.fetchEndpoint("starknet_getTransactionStatus",{transaction_hash:t})}simulateTransaction(e,t={}){const{blockIdentifier:r=this.blockIdentifier,skipValidate:n=!0,skipFeeCharge:a=!0}=t,i=new Rn(r).identifier,s=[];return n&&s.push(du.SKIP_VALIDATE),a&&s.push(du.SKIP_FEE_CHARGE),this.fetchEndpoint("starknet_simulateTransactions",{block_id:i,transactions:e.map(o=>this.buildTransaction(o)),simulation_flags:s})}async waitForTransaction(e,t){const r=Et(e);let{retries:n}=this,a=!1,i=!1;const s=t?.retryInterval??this.transactionRetryIntervalDefault,o=t?.errorStates??[uu.REJECTED],c=t?.successStates??[X1.SUCCEEDED,uu.ACCEPTED_ON_L2,uu.ACCEPTED_ON_L1];let d;for(;!a;){await Sd(s);try{d=await this.getTransactionStatus(r);const y=d.execution_status,M=d.finality_status;if(!M)throw new Error("waiting for transaction status");if(o.includes(y)||o.includes(M)){const j=`${y}: ${M}`,G=new Error(j);throw G.response=d,i=!0,G}else(c.includes(y)||c.includes(M))&&(a=!0)}catch(y){if(y instanceof Error&&i)throw y;if(n<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}n-=1}let l=null;for(;l===null;){try{l=await this.getTransactionReceipt(r)}catch{if(n<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}n-=1,await Sd(s)}return l}getStorageAt(e,t,r=this.blockIdentifier){const n=Et(e),a=U2(t),i=new Rn(r).identifier;return this.fetchEndpoint("starknet_getStorageAt",{contract_address:n,key:a,block_id:i})}getClassHashAt(e,t=this.blockIdentifier){const r=Et(e),n=new Rn(t).identifier;return this.fetchEndpoint("starknet_getClassHashAt",{block_id:n,contract_address:r})}getClass(e,t=this.blockIdentifier){const r=Et(e),n=new Rn(t).identifier;return this.fetchEndpoint("starknet_getClass",{class_hash:r,block_id:n})}getClassAt(e,t=this.blockIdentifier){const r=Et(e),n=new Rn(t).identifier;return this.fetchEndpoint("starknet_getClassAt",{block_id:n,contract_address:r})}async getEstimateFee(e,{blockIdentifier:t=this.blockIdentifier,skipValidate:r=!0}){const n=new Rn(t).identifier;let a={};return pg("0.5",await this.getSpecVersion())||(a={simulation_flags:r?[du.SKIP_VALIDATE]:[]}),this.fetchEndpoint("starknet_estimateFee",{request:e.map(i=>this.buildTransaction(i,"fee")),block_id:n,...a})}async invoke(e,t){let r;return hi(t)?r=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{type:Ns.INVOKE,sender_address:e.contractAddress,calldata:xn.toHex(e.calldata),version:To.V3,signature:Ta(e.signature),nonce:Et(t.nonce),resource_bounds:t.resourceBounds,tip:Et(t.tip),paymaster_data:t.paymasterData.map(n=>Et(n)),account_deployment_data:t.accountDeploymentData.map(n=>Et(n)),nonce_data_availability_mode:t.nonceDataAvailabilityMode,fee_data_availability_mode:t.feeDataAvailabilityMode}}):r=this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{sender_address:e.contractAddress,calldata:xn.toHex(e.calldata),type:Ns.INVOKE,max_fee:Et(t.maxFee||0),version:To.V1,signature:Ta(e.signature),nonce:Et(t.nonce)}}),this.waitMode?this.waitForTransaction((await r).transaction_hash):r}async declare({contract:e,signature:t,senderAddress:r,compiledClassHash:n},a){let i;if(!Wa(e)&&!hi(a))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:Ns.DECLARE,contract_class:{program:e.program,entry_points_by_type:e.entry_points_by_type,abi:e.abi},version:To.V1,max_fee:Et(a.maxFee||0),signature:Ta(t),sender_address:r,nonce:Et(a.nonce)}});else if(Wa(e)&&!hi(a))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:Ns.DECLARE,contract_class:{sierra_program:xc(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},compiled_class_hash:n||"",version:To.V2,max_fee:Et(a.maxFee||0),signature:Ta(t),sender_address:r,nonce:Et(a.nonce)}});else if(Wa(e)&&hi(a))i=this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:Ns.DECLARE,sender_address:r,compiled_class_hash:n||"",version:To.V3,signature:Ta(t),nonce:Et(a.nonce),contract_class:{sierra_program:xc(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},resource_bounds:a.resourceBounds,tip:Et(a.tip),paymaster_data:a.paymasterData.map(s=>Et(s)),account_deployment_data:a.accountDeploymentData.map(s=>Et(s)),nonce_data_availability_mode:a.nonceDataAvailabilityMode,fee_data_availability_mode:a.feeDataAvailabilityMode}});else throw Error("declare unspotted parameters");return this.waitMode?this.waitForTransaction((await i).transaction_hash):i}async deployAccount({classHash:e,constructorCalldata:t,addressSalt:r,signature:n},a){let i;return hi(a)?i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{type:Ns.DEPLOY_ACCOUNT,version:To.V3,signature:Ta(n),nonce:Et(a.nonce),contract_address_salt:Et(r||0),constructor_calldata:xn.toHex(t||[]),class_hash:Et(e),resource_bounds:a.resourceBounds,tip:Et(a.tip),paymaster_data:a.paymasterData.map(s=>Et(s)),nonce_data_availability_mode:a.nonceDataAvailabilityMode,fee_data_availability_mode:a.feeDataAvailabilityMode}}):i=this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{constructor_calldata:xn.toHex(t||[]),class_hash:Et(e),contract_address_salt:Et(r||0),type:Ns.DEPLOY_ACCOUNT,max_fee:Et(a.maxFee||0),version:To.V1,signature:Ta(n),nonce:Et(a.nonce)}}),this.waitMode?this.waitForTransaction((await i).transaction_hash):i}callContract(e,t=this.blockIdentifier){const r=new Rn(t).identifier;return this.fetchEndpoint("starknet_call",{request:{contract_address:e.contractAddress,entry_point_selector:Aa(e.entrypoint),calldata:xn.toHex(e.calldata)},block_id:r})}estimateMessageFee(e,t=this.blockIdentifier){const{from_address:r,to_address:n,entry_point_selector:a,payload:i}=e,s={from_address:hg(r),to_address:Et(n),entry_point_selector:Hh(a),payload:H2(i)},o=new Rn(t).identifier;return this.fetchEndpoint("starknet_estimateMessageFee",{message:s,block_id:o})}getSyncingStats(){return this.fetchEndpoint("starknet_syncing")}getEvents(e){return this.fetchEndpoint("starknet_getEvents",{filter:e})}buildTransaction(e,t){const r=mg(t);let n;if(hi(e)?n={signature:Ta(e.signature),nonce:Et(e.nonce),resource_bounds:e.resourceBounds,tip:Et(e.tip),paymaster_data:e.paymasterData.map(a=>Et(a)),nonce_data_availability_mode:e.nonceDataAvailabilityMode,fee_data_availability_mode:e.feeDataAvailabilityMode,account_deployment_data:e.accountDeploymentData.map(a=>Et(a))}:n={signature:Ta(e.signature),nonce:Et(e.nonce),max_fee:Et(e.maxFee||0)},e.type==="INVOKE_FUNCTION")return{type:Ns.INVOKE,sender_address:e.contractAddress,calldata:xn.toHex(e.calldata),version:Et(e.version||r.v3),...n};if(e.type==="DECLARE")return Wa(e.contract)?{type:e.type,contract_class:{...e.contract,sierra_program:xc(e.contract.sierra_program)},compiled_class_hash:e.compiledClassHash||"",sender_address:e.senderAddress,version:Et(e.version||r.v3),...n}:{type:e.type,contract_class:e.contract,sender_address:e.senderAddress,version:Et(e.version||r.v1),...n};if(e.type==="DEPLOY_ACCOUNT"){const{account_deployment_data:a,...i}=n;return{type:e.type,constructor_calldata:xn.toHex(e.constructorCalldata||[]),class_hash:Et(e.classHash),contract_address_salt:Et(e.addressSalt||0),version:Et(e.version||r.v3),...i}}throw Error("RPC buildTransaction received unknown TransactionType")}},Ev=class{constructor(e){yt(this,"margin");this.margin=e}estimatedFeeToMaxFee(e){return hv(e,this.margin?.maxFee)}estimateFeeToBounds(e){return hl(e,this.margin?.l1BoundMaxAmount,this.margin?.l1BoundMaxPricePerUnit)}parseGetBlockResponse(e){return{status:"PENDING",...e}}parseTransactionReceipt(e){return"actual_fee"in e&&va(e.actual_fee)?{...e,actual_fee:{amount:e.actual_fee,unit:"FRI"}}:e}parseFeeEstimateResponse(e){const t=e[0];return{overall_fee:Fn(t.overall_fee),gas_consumed:Fn(t.gas_consumed),gas_price:Fn(t.gas_price),unit:t.unit,suggestedMaxFee:this.estimatedFeeToMaxFee(t.overall_fee),resourceBounds:this.estimateFeeToBounds(t),data_gas_consumed:t.data_gas_consumed?Fn(t.data_gas_consumed):0n,data_gas_price:t.data_gas_price?Fn(t.data_gas_price):0n}}parseFeeEstimateBulkResponse(e){return e.map(t=>({overall_fee:Fn(t.overall_fee),gas_consumed:Fn(t.gas_consumed),gas_price:Fn(t.gas_price),unit:t.unit,suggestedMaxFee:this.estimatedFeeToMaxFee(t.overall_fee),resourceBounds:this.estimateFeeToBounds(t),data_gas_consumed:t.data_gas_consumed?Fn(t.data_gas_consumed):0n,data_gas_price:t.data_gas_price?Fn(t.data_gas_price):0n}))}parseSimulateTransactionResponse(e){return e.map(t=>({...t,suggestedMaxFee:this.estimatedFeeToMaxFee(t.fee_estimation.overall_fee),resourceBounds:this.estimateFeeToBounds(t.fee_estimation)}))}parseContractClassResponse(e){return{...e,abi:va(e.abi)?JSON.parse(e.abi):e.abi}}parseL1GasPriceResponse(e){return e.l1_gas_price.price_in_wei}},xv=class G1{constructor(t){yt(this,"statusReceipt");yt(this,"value");[this.statusReceipt,this.value]=G1.isSuccess(t)?["success",t]:G1.isReverted(t)?["reverted",t]:G1.isRejected(t)?["rejected",t]:["error",new Error("Unknown response type")];for(const[r]of Object.entries(this))Object.defineProperty(this,r,{enumerable:!1});for(const[r,n]of Object.entries(t))Object.defineProperty(this,r,{enumerable:!0,writable:!1,value:n})}match(t){return this.statusReceipt in t?t[this.statusReceipt](this.value):t._()}isSuccess(){return this.statusReceipt==="success"}isReverted(){return this.statusReceipt==="reverted"}isRejected(){return this.statusReceipt==="rejected"}isError(){return this.statusReceipt==="error"}static isSuccess(t){return t.execution_status==="SUCCEEDED"}static isReverted(t){return t.execution_status==="REVERTED"}static isRejected(t){return t.status==="REJECTED"}},Av=class{constructor(e){yt(this,"responseParser");yt(this,"channel");yt(this,"getStateUpdate",this.getBlockStateUpdate);e&&"channel"in e?(this.channel=e.channel,this.responseParser="responseParser"in e?e.responseParser:new Ev):(this.channel=new wv({...e,waitMode:!1}),this.responseParser=new Ev(e?.feeMarginPercentage))}fetch(e,t,r=0){return this.channel.fetch(e,t,r)}async getChainId(){return this.channel.getChainId()}async getSpecVersion(){return this.channel.getSpecVersion()}async getNonceForAddress(e,t){return this.channel.getNonceForAddress(e,t)}async getBlock(e){return this.channel.getBlockWithTxHashes(e).then(this.responseParser.parseGetBlockResponse)}async getBlockLatestAccepted(){return this.channel.getBlockLatestAccepted()}async getBlockNumber(){return this.channel.getBlockNumber()}async getBlockWithTxHashes(e){return this.channel.getBlockWithTxHashes(e)}async getBlockWithTxs(e){return this.channel.getBlockWithTxs(e)}async waitForBlock(e="pending",t=5e3){if(e==="latest")return;const r=await this.getBlockNumber(),n=e==="pending"?r+1:Number(Et(e));if(n<=r)return;const{retries:a}=this.channel;let i=a,s=!1;for(;!s;)if(await this.getBlockNumber()===n?s=!0:await Sd(t),i-=1,i<=0)throw new Error(`waitForBlock() timed-out after ${a} tries.`)}async getL1GasPrice(e){return this.channel.getBlockWithTxHashes(e).then(this.responseParser.parseL1GasPriceResponse)}async getL1MessageHash(e){const t=await this.channel.getTransactionByHash(e);yn(t.type==="L1_HANDLER","This L2 transaction is not a L1 message.");const{calldata:r,contract_address:n,entry_point_selector:a,nonce:i}=t,s=[r[0],n,i,a,r.length-1,...r.slice(1)],o=Un(s.reduce((c,d)=>c+pa(Et(d)).padStart(64,"0"),""));return Un(of(QS($2(o))))}async getBlockWithReceipts(e){if(this.channel instanceof y8.RpcChannel)throw new Af("Unsupported method for RPC version");return this.channel.getBlockWithReceipts(e)}async getBlockStateUpdate(e){return this.channel.getBlockStateUpdate(e)}async getBlockTransactionsTraces(e){return this.channel.getBlockTransactionsTraces(e)}async getBlockTransactionCount(e){return this.channel.getBlockTransactionCount(e)}async getPendingTransactions(){const{transactions:e}=await this.getBlockWithTxHashes("pending").then(this.responseParser.parseGetBlockResponse);return Promise.all(e.map(t=>this.getTransactionByHash(t)))}async getTransaction(e){return this.channel.getTransactionByHash(e)}async getTransactionByHash(e){return this.channel.getTransactionByHash(e)}async getTransactionByBlockIdAndIndex(e,t){return this.channel.getTransactionByBlockIdAndIndex(e,t)}async getTransactionReceipt(e){const t=await this.channel.getTransactionReceipt(e),r=this.responseParser.parseTransactionReceipt(t);return new xv(r)}async getTransactionTrace(e){return this.channel.getTransactionTrace(e)}async getTransactionStatus(e){return this.channel.getTransactionStatus(e)}async getSimulateTransaction(e,t){return this.channel.simulateTransaction(e,t).then(r=>this.responseParser.parseSimulateTransactionResponse(r))}async waitForTransaction(e,t){const r=await this.channel.waitForTransaction(e,t);return new xv(r)}async getStorageAt(e,t,r){return this.channel.getStorageAt(e,t,r)}async getClassHashAt(e,t){return this.channel.getClassHashAt(e,t)}async getClassByHash(e){return this.getClass(e)}async getClass(e,t){return this.channel.getClass(e,t).then(this.responseParser.parseContractClassResponse)}async getClassAt(e,t){return this.channel.getClassAt(e,t).then(this.responseParser.parseContractClassResponse)}async getContractVersion(e,t,{blockIdentifier:r=this.channel.blockIdentifier,compiler:n=!0}={}){let a;if(e)a=await this.getClassAt(e,r);else if(t)a=await this.getClass(t,r);else throw Error("getContractVersion require contractAddress or classHash");return Wa(a)?n?{cairo:"1",compiler:Q2(a.abi).compiler}:{cairo:"1",compiler:void 0}:{cairo:"0",compiler:"0"}}async getEstimateFee(e,t,r,n){return this.getInvokeEstimateFee(e,t,r,n)}async getInvokeEstimateFee(e,t,r,n){return this.channel.getEstimateFee([{type:"INVOKE_FUNCTION",...e,...t}],{blockIdentifier:r,skipValidate:n}).then(a=>this.responseParser.parseFeeEstimateResponse(a))}async getDeclareEstimateFee(e,t,r,n){return this.channel.getEstimateFee([{type:"DECLARE",...e,...t}],{blockIdentifier:r,skipValidate:n}).then(a=>this.responseParser.parseFeeEstimateResponse(a))}async getDeployAccountEstimateFee(e,t,r,n){return this.channel.getEstimateFee([{type:"DEPLOY_ACCOUNT",...e,...t}],{blockIdentifier:r,skipValidate:n}).then(a=>this.responseParser.parseFeeEstimateResponse(a))}async getEstimateFeeBulk(e,t){return this.channel.getEstimateFee(e,t).then(r=>this.responseParser.parseFeeEstimateBulkResponse(r))}async invokeFunction(e,t){return this.channel.invoke(e,t)}async declareContract(e,t){return this.channel.declare(e,t)}async deployAccountContract(e,t){return this.channel.deployAccount(e,t)}async callContract(e,t){return this.channel.callContract(e,t)}async estimateMessageFee(e,t){return this.channel.estimateMessageFee(e,t)}async getSyncingStats(){return this.channel.getSyncingStats()}async getEvents(e){return this.channel.getEvents(e)}},KM={};Xn(KM,{StarknetIdContract:()=>Iv,StarknetIdIdentityContract:()=>Cv,StarknetIdMulticallContract:()=>xg,StarknetIdPfpContract:()=>Bv,StarknetIdPopContract:()=>Dv,StarknetIdVerifierContract:()=>Rv,dynamicCallData:()=>Cn,dynamicFelt:()=>La,execution:()=>zs,getStarknetIdContract:()=>np,getStarknetIdIdentityContract:()=>Ov,getStarknetIdMulticallContract:()=>Nv,getStarknetIdPfpContract:()=>Pv,getStarknetIdPopContract:()=>Lv,getStarknetIdVerifierContract:()=>Mv,useDecoded:()=>Eg,useEncoded:()=>kv});var Vs="abcdefghijklmnopqrstuvwxyz0123456789-",kd=BigInt(Vs.length+1),Na="\u8FD9\u6765",Tv=BigInt(Vs.length),vg=BigInt(Na.length),Sv=BigInt(Na.length+1);function wg(e){let t=0;for(;e.endsWith(Na[Na.length-1]);)e=e.substring(0,e.length-1),t+=1;return[e,t]}function Eg(e){let t="";return e.forEach(r=>{for(;r!==_a;){const i=r%kd;if(r/=kd,i===BigInt(Vs.length)){const s=r/Sv;if(s===_a){const o=r%Sv;r=s,o===_a?t+=Vs[0]:t+=Na[Number(o)-1]}else{const o=r%vg;t+=Na[Number(o)],r/=vg}}else t+=Vs[Number(i)]}const[n,a]=wg(t);a&&(t=n+(a%2===0?Na[Na.length-1].repeat(a/2-1)+Na[0]+Vs[1]:Na[Na.length-1].repeat((a-1)/2+1))),t+="."}),t&&t.concat("stark")}function kv(e){let t=BigInt(0),r=BigInt(1);if(e.endsWith(Na[0]+Vs[1])){const[n,a]=wg(e.substring(0,e.length-2));e=n+Na[Na.length-1].repeat(2*(a+1))}else{const[n,a]=wg(e);a&&(e=n+Na[Na.length-1].repeat(1+2*(a-1)))}for(let n=0;n(e.MAINNET="0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678",e.TESTNET_SEPOLIA="0x154bc2e1af9260b9e66af0e9c46fc757ff893b3ff6a85718a810baf1474",e))(Iv||{});function np(e){switch(e){case"0x534e5f4d41494e":return"0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678";case"0x534e5f5345504f4c4941":return"0x154bc2e1af9260b9e66af0e9c46fc757ff893b3ff6a85718a810baf1474";default:throw new Error("Starknet.id is not yet deployed on this network")}}var Cv=(e=>(e.MAINNET="0x05dbdedc203e92749e2e746e2d40a768d966bd243df04a6b712e222bc040a9af",e.TESTNET_SEPOLIA="0x3697660a0981d734780731949ecb2b4a38d6a58fc41629ed611e8defda",e))(Cv||{});function Ov(e){switch(e){case"0x534e5f4d41494e":return"0x05dbdedc203e92749e2e746e2d40a768d966bd243df04a6b712e222bc040a9af";case"0x534e5f5345504f4c4941":return"0x3697660a0981d734780731949ecb2b4a38d6a58fc41629ed611e8defda";default:throw new Error("Starknet.id verifier contract is not yet deployed on this network")}}var xg="0x034ffb8f4452df7a613a0210824d6414dbadcddce6c6e19bf4ddc9e22ce5f970";function Nv(e){switch(e){case"0x534e5f4d41494e":return xg;case"0x534e5f5345504f4c4941":return xg;default:throw new Error("Starknet.id multicall contract is not yet deployed on this network")}}var Rv=(e=>(e.MAINNET="0x07d14dfd8ee95b41fce179170d88ba1f0d5a512e13aeb232f19cfeec0a88f8bf",e.TESTNET_SEPOLIA="0x60B94fEDe525f815AE5E8377A463e121C787cCCf3a36358Aa9B18c12c4D566",e))(Rv||{});function Mv(e){switch(e){case"0x534e5f4d41494e":return"0x07d14dfd8ee95b41fce179170d88ba1f0d5a512e13aeb232f19cfeec0a88f8bf";case"0x534e5f5345504f4c4941":return"0x60B94fEDe525f815AE5E8377A463e121C787cCCf3a36358Aa9B18c12c4D566";default:throw new Error("Starknet.id verifier contract is not yet deployed on this network")}}var Bv=(e=>(e.MAINNET="0x070aaa20ec4a46da57c932d9fd89ca5e6bb9ca3188d3df361a32306aff7d59c7",e.TESTNET_SEPOLIA="0x9e7bdb8dabd02ea8cfc23b1d1c5278e46490f193f87516ed5ff2dfec02",e))(Bv||{});function Pv(e){switch(e){case"0x534e5f4d41494e":return"0x070aaa20ec4a46da57c932d9fd89ca5e6bb9ca3188d3df361a32306aff7d59c7";case"0x534e5f5345504f4c4941":return"0x9e7bdb8dabd02ea8cfc23b1d1c5278e46490f193f87516ed5ff2dfec02";default:throw new Error("Starknet.id profile picture verifier contract is not yet deployed on this network")}}var Dv=(e=>(e.MAINNET="0x0293eb2ba9862f762bd3036586d5755a782bd22e6f5028320f1d0405fd47bff4",e.TESTNET_SEPOLIA="0x15ae88ae054caa74090b89025c1595683f12edf7a4ed2ad0274de3e1d4a",e))(Dv||{});function Lv(e){switch(e){case"0x534e5f4d41494e":return"0x0293eb2ba9862f762bd3036586d5755a782bd22e6f5028320f1d0405fd47bff4";case"0x534e5f5345504f4c4941":return"0x15ae88ae054caa74090b89025c1595683f12edf7a4ed2ad0274de3e1d4a";default:throw new Error("Starknet.id proof of personhood verifier contract is not yet deployed on this network")}}function zs(e,t=void 0,r=void 0){return new ol({Static:e,IfEqual:t?xd(t[0],t[1],t[2]):void 0,IfNotEqual:r?xd(r[0],r[1],r[2]):void 0})}function La(e,t=void 0){return new ol({Hardcoded:e,Reference:t?xd(t[0],t[1]):void 0})}function Cn(e,t=void 0,r=void 0){return new ol({Hardcoded:e,Reference:t?xd(t[0],t[1]):void 0,ArrayReference:r?xd(r[0],r[1]):void 0})}var GM=class W1{async getStarkName(t,r){return W1.getStarkName(this,t,r)}async getAddressFromStarkName(t,r){return W1.getAddressFromStarkName(this,t,r)}async getStarkProfile(t,r,n,a,i,s,o){return W1.getStarkProfile(this,t,r,n,a,i,s,o)}static async getStarkName(t,r,n){const a=await t.getChainId(),i=n??np(a);try{const o=(await t.callContract({contractAddress:i,entrypoint:"address_to_domain",calldata:xn.compile({address:r,hint:[]})})).map(d=>BigInt(d)).slice(1),c=Eg(o);if(!c)throw Error("Starkname not found");return c}catch(s){throw s instanceof Error&&s.message==="Starkname not found"?s:Error("Could not get stark name")}}static async getAddressFromStarkName(t,r,n){const a=await t.getChainId(),i=n??np(a);try{const s=r.replace(".stark","").split(".").map(c=>kv(c).toString(10));return(await t.callContract({contractAddress:i,entrypoint:"domain_to_address",calldata:xn.compile({domain:s,hint:[]})}))[0]}catch{throw Error("Could not get address from stark name")}}static async getStarkProfile(t,r,n,a,i,s,o,c){const d=await t.getChainId(),l=n??np(d),y=a??Ov(d),M=i??Mv(d),j=s??Pv(d),G=o??Lv(d),$=c??Nv(d);try{const fe=[{execution:zs({}),to:Cn(l),selector:Cn(Aa("address_to_domain")),calldata:[Cn(r),Cn("0")]},{execution:zs({}),to:La(l),selector:La(Aa("domain_to_id")),calldata:[Cn(void 0,void 0,[0,0])]},{execution:zs({}),to:La(y),selector:La(Aa("get_verifier_data")),calldata:[Cn(void 0,[1,0]),Cn(Oa("twitter")),Cn(M),Cn("0")]},{execution:zs({}),to:La(y),selector:La(Aa("get_verifier_data")),calldata:[Cn(void 0,[1,0]),Cn(Oa("github")),Cn(M),Cn("0")]},{execution:zs({}),to:La(y),selector:La(Aa("get_verifier_data")),calldata:[Cn(void 0,[1,0]),Cn(Oa("discord")),Cn(M),Cn("0")]},{execution:zs({}),to:La(y),selector:La(Aa("get_verifier_data")),calldata:[Cn(void 0,[1,0]),Cn(Oa("proof_of_personhood")),Cn(G),Cn("0")]},{execution:zs({}),to:La(y),selector:La(Aa("get_verifier_data")),calldata:[Cn(void 0,[1,0]),Cn(Oa("nft_pp_contract")),Cn(j),Cn("0")]},{execution:zs({}),to:La(y),selector:La(Aa("get_extended_verifier_data")),calldata:[Cn(void 0,[1,0]),Cn(Oa("nft_pp_id")),Cn("2"),Cn(j),Cn("0")]},{execution:zs(void 0,void 0,[6,0,0]),to:La(void 0,[6,0]),selector:La(Aa("tokenURI")),calldata:[Cn(void 0,[7,1]),Cn(void 0,[7,2])]}],he=await t.callContract({contractAddress:$,entrypoint:"aggregate",calldata:xn.compile({calls:fe})});if(Array.isArray(he)){const Oe=parseInt(he[0],16),We=[];let et=1;for(let qe=0;qeBigInt(qe))),tt=We[2][0]!=="0x0"?BigInt(We[2][0]).toString():void 0,He=We[3][0]!=="0x0"?BigInt(We[3][0]).toString():void 0,Y=We[4][0]!=="0x0"?BigInt(We[4][0]).toString():void 0,ve=We[5][0]==="0x1",Ne=(he[0]==="0x9"?We[8].slice(1).map(qe=>Tf(qe)).join(""):void 0)||`https://starknet.id/api/identicons/${BigInt(We[1][0]).toString()}`;return{name:ht,twitter:tt,github:He,discord:Y,proofOfPersonhood:ve,profilePicture:Ne}}throw Error("Error while calling aggregate function")}catch(fe){throw fe instanceof Error?fe:Error("Could not get user stark profile data from address")}}},Uv=class extends H5(Av,GM){},oQ=class{},Fv=new Av({default:!0}),cQ=class{},WM={};Xn(WM,{TypedDataRevision:()=>jn,encodeData:()=>Zv,encodeType:()=>zv,encodeValue:()=>gl,getDependencies:()=>Tg,getMessageHash:()=>ip,getStructHash:()=>ml,getTypeHash:()=>qv,isMerkleTreeType:()=>Vv,prepareSelector:()=>$v});var YM={};Xn(YM,{MerkleTree:()=>Ag,proofMerklePath:()=>Hv});var Ag=class Y1{constructor(t,r=ul){yt(this,"leaves");yt(this,"branches",[]);yt(this,"root");yt(this,"hashMethod");this.hashMethod=r,this.leaves=t,this.root=this.build(t)}build(t){if(t.length===1)return t[0];t.length!==this.leaves.length&&this.branches.push(t);const r=[];for(let n=0;ns>=o?1:-1);return n(a,i)}getProof(t,r=this.leaves,n=[]){const a=r.indexOf(t);if(a===-1)throw new Error("leaf not found");if(r.length===1)return n;const i=a%2===0,s=(i?r[a+1]:r[a-1])??"0x0",o=[...n,s],c=this.leaves.length===r.length?-1:this.branches.findIndex(l=>l.length===r.length),d=this.branches[c+1]??[this.root];return this.getProof(Y1.hash(i?t:s,i?s:t,this.hashMethod),d,o)}};function Hv(e,t,r,n=ul){if(r.length===0)return e===t;const[a,...i]=r;return Hv(e,Ag.hash(t,a,n),i,n)}var JM={u256:JSON.parse('[{ "name": "low", "type": "u128" }, { "name": "high", "type": "u128" }]'),TokenAmount:JSON.parse('[{ "name": "token_address", "type": "ContractAddress" }, { "name": "amount", "type": "u256" }]'),NftId:JSON.parse('[{ "name": "collection_address", "type": "ContractAddress" }, { "name": "token_id", "type": "u256" }]')},pi={[jn.ACTIVE]:{domain:"StarknetDomain",hashMethod:iv,hashMerkleMethod:nv,escapeTypeString:e=>`"${e}"`,presetTypes:JM},[jn.LEGACY]:{domain:"StarkNetDomain",hashMethod:av,hashMerkleMethod:ul,escapeTypeString:e=>e,presetTypes:{}}};function ap(e,t,{min:r,max:n}){const a=BigInt(e);yn(a>=r&&a<=n,`${a} (${t}) is out of bounds [${r}, ${n}]`)}function jv({types:e,domain:t}){if(pi[jn.ACTIVE].domain in e&&t.revision===jn.ACTIVE)return jn.ACTIVE;if(pi[jn.LEGACY].domain in e&&(t.revision??jn.LEGACY)===jn.LEGACY)return jn.LEGACY}function qs(e){try{return Et(e)}catch{if(va(e))return Et(Oa(e));throw new Error(`Invalid BigNumberish: ${e}`)}}function XM(e){const t=e;return!!(t.message&&t.primaryType&&t.types&&jv(t))}function $v(e){return Zi(e)?e:Aa(e)}function Vv(e){return e.type==="merkletree"}function Tg(e,t,r=[],n="",a=jn.LEGACY){return t[t.length-1]==="*"?t=t.slice(0,-1):a===jn.ACTIVE&&(t==="enum"?t=n:t.match(/^\(.*\)$/)&&(t=t.slice(1,-1))),r.includes(t)||!e[t]?r:[t,...e[t].reduce((i,s)=>[...i,...Tg(e,s.type,i,s.contains,a).filter(o=>!i.includes(o))],[])]}function QM(e,t){if(t.parent&&t.key){const n=e[t.parent].find(i=>i.name===t.key);if(!Vv(n))throw new Error(`${t.key} is not a merkle tree`);if(n.contains.endsWith("*"))throw new Error(`Merkle tree contain property must not be an array but was given ${t.key}`);return n.contains}return"raw"}function zv(e,t,r=jn.LEGACY){const n=r===jn.ACTIVE?{...e,...pi[r].presetTypes}:e,[a,...i]=Tg(n,t,void 0,void 0,r),s=a?[a,...i.sort()]:[],o=pi[r].escapeTypeString;return s.map(c=>{const d=n[c].map(l=>{const y=l.type==="enum"&&r===jn.ACTIVE?l.contains:l.type,M=y.match(/^\(.*\)$/)?`(${y.slice(1,-1).split(",").map(j=>j&&o(j)).join(",")})`:o(y);return`${o(l.name)}:${M}`});return`${o(c)}(${d})`}).join("")}function qv(e,t,r=jn.LEGACY){return Aa(zv(e,t,r))}function gl(e,t,r,n={},a=jn.LEGACY){if(e[t])return[t,ml(e,t,r,a)];if(pi[a].presetTypes[t])return[t,ml(pi[a].presetTypes,t,r,a)];if(t.endsWith("*")){const i=r.map(s=>gl(e,t.slice(0,-1),s,void 0,a)[1]);return[t,pi[a].hashMethod(i)]}switch(t){case"enum":{if(a===jn.ACTIVE){const[i,s]=Object.entries(r)[0],o=e[n.parent][0],c=e[o.contains],d=c.find(M=>M.name===i),l=c.indexOf(d),y=d.type.slice(1,-1).split(",").map((M,j)=>{if(!M)return M;const G=s[j];return gl(e,M,G,void 0,a)[1]});return[t,pi[a].hashMethod([l,...y])]}return[t,qs(r)]}case"merkletree":{const i=QM(e,n),s=r.map(c=>gl(e,i,c,void 0,a)[1]),{root:o}=new Ag(s,pi[a].hashMerkleMethod);return["felt",o]}case"selector":return["felt",$v(r)];case"string":{if(a===jn.ACTIVE){const i=jh(r),s=[i.data.length,...i.data,i.pending_word,i.pending_word_len];return[t,pi[a].hashMethod(s)]}return[t,qs(r)]}case"i128":{if(a===jn.ACTIVE){const i=BigInt(r);return ap(i,t,u8),[t,qs(i<0n?O2+i:i)]}return[t,qs(r)]}case"timestamp":case"u128":return a===jn.ACTIVE&&ap(r,t,l8),[t,qs(r)];case"felt":case"shortstring":return a===jn.ACTIVE&&ap(qs(r),t,M2),[t,qs(r)];case"ClassHash":case"ContractAddress":return a===jn.ACTIVE&&ap(r,t,M2),[t,qs(r)];case"bool":return a===jn.ACTIVE&&yn(typeof r=="boolean",`Type mismatch for ${t} ${r}`),[t,qs(r)];default:{if(a===jn.ACTIVE)throw new Error(`Unsupported type: ${t}`);return[t,qs(r)]}}}function Zv(e,t,r,n=jn.LEGACY){const a=e[t]??pi[n].presetTypes[t],[i,s]=a.reduce(([o,c],d)=>{if(r[d.name]===void 0||r[d.name]===null&&d.type!=="enum")throw new Error(`Cannot encode data: missing data for '${d.name}'`);const l=r[d.name],y={parent:t,key:d.name},[M,j]=gl(e,d.type,l,y,n);return[[...o,M],[...c,j]]},[["felt"],[qv(e,t,n)]]);return[i,s]}function ml(e,t,r,n=jn.LEGACY){return pi[n].hashMethod(Zv(e,t,r,n)[1])}function ip(e,t){if(!XM(e))throw new Error("Typed data does not match JSON schema");const r=jv(e),{domain:n,hashMethod:a}=pi[r],i=[Oa("StarkNet Message"),ml(e.types,n,e.domain,r),t,ml(e.types,e.primaryType,e.message,r)];return a(i)}var eB=class{constructor(e=Su.randomPrivateKey()){yt(this,"pk");this.pk=e instanceof Uint8Array?Ju(e):Et(e)}async getPubKey(){return ku(this.pk)}async signMessage(e,t){const r=ip(e,t);return this.signRaw(r)}async signTransaction(e,t){const r=bl(e,t.cairoVersion);let n;if(Object.values(Vt.ETransactionVersion2).includes(t.version)){const a=t;n=cl({...a,senderAddress:a.walletAddress,compiledCalldata:r,version:a.version})}else if(Object.values(Vt.ETransactionVersion3).includes(t.version)){const a=t;n=cl({...a,senderAddress:a.walletAddress,compiledCalldata:r,version:a.version,nonceDataAvailabilityMode:li(a.nonceDataAvailabilityMode),feeDataAvailabilityMode:li(a.feeDataAvailabilityMode)})}else throw Error("unsupported signTransaction version");return this.signRaw(n)}async signDeployAccountTransaction(e){const t=xn.compile(e.constructorCalldata);let r;if(Object.values(Vt.ETransactionVersion2).includes(e.version)){const n=e;r=dl({...n,salt:n.addressSalt,constructorCalldata:t,version:n.version})}else if(Object.values(Vt.ETransactionVersion3).includes(e.version)){const n=e;r=dl({...n,salt:n.addressSalt,compiledConstructorCalldata:t,version:n.version,nonceDataAvailabilityMode:li(n.nonceDataAvailabilityMode),feeDataAvailabilityMode:li(n.feeDataAvailabilityMode)})}else throw Error("unsupported signDeployAccountTransaction version");return this.signRaw(r)}async signDeclareTransaction(e){let t;if(Object.values(Vt.ETransactionVersion2).includes(e.version)){const r=e;t=fl({...r,version:r.version})}else if(Object.values(Vt.ETransactionVersion3).includes(e.version)){const r=e;t=fl({...r,version:r.version,nonceDataAvailabilityMode:li(r.nonceDataAvailabilityMode),feeDataAvailabilityMode:li(r.feeDataAvailabilityMode)})}else throw Error("unsupported signDeclareTransaction version");return this.signRaw(t)}async signRaw(e){return od(e,this.pk)}},Sg={};Xn(Sg,{UINT_128_MAX:()=>wd,UINT_256_MAX:()=>R8,bnToUint256:()=>kg,isUint256:()=>rB,uint256ToBN:()=>tB});function tB(e){return new wa(e).toBigInt()}function rB(e){return wa.is(e)}function kg(e){return new wa(e).toUint256HexString()}var fQ=class{constructor(e=pv()){yt(this,"pk");this.pk=e instanceof Uint8Array?Ju(e).padStart(64,"0"):pa(Et(e)).padStart(64,"0")}async getPubKey(){return Un(Ju(secp256k12.getPublicKey(this.pk,!1)).padStart(130,"0").slice(2))}async signMessage(e,t){const r=ip(e,t),n=secp256k12.sign(pa(yd(r)),this.pk);return this.formatEthSignature(n)}async signTransaction(e,t){const r=bl(e,t.cairoVersion);let n;if(Object.values(Vt.ETransactionVersion2).includes(t.version)){const i=t;n=cl({...i,senderAddress:i.walletAddress,compiledCalldata:r,version:i.version})}else if(Object.values(Vt.ETransactionVersion3).includes(t.version)){const i=t;n=cl({...i,senderAddress:i.walletAddress,compiledCalldata:r,version:i.version,nonceDataAvailabilityMode:li(i.nonceDataAvailabilityMode),feeDataAvailabilityMode:li(i.feeDataAvailabilityMode)})}else throw Error("unsupported signTransaction version");const a=secp256k12.sign(pa(yd(n)),this.pk);return this.formatEthSignature(a)}async signDeployAccountTransaction(e){const t=xn.compile(e.constructorCalldata);let r;if(Object.values(Vt.ETransactionVersion2).includes(e.version)){const a=e;r=dl({...a,salt:a.addressSalt,constructorCalldata:t,version:a.version})}else if(Object.values(Vt.ETransactionVersion3).includes(e.version)){const a=e;r=dl({...a,salt:a.addressSalt,compiledConstructorCalldata:t,version:a.version,nonceDataAvailabilityMode:li(a.nonceDataAvailabilityMode),feeDataAvailabilityMode:li(a.feeDataAvailabilityMode)})}else throw Error("unsupported signDeployAccountTransaction version");const n=secp256k12.sign(pa(yd(r)),this.pk);return this.formatEthSignature(n)}async signDeclareTransaction(e){let t;if(Object.values(Vt.ETransactionVersion2).includes(e.version)){const n=e;t=fl({...n,version:n.version})}else if(Object.values(Vt.ETransactionVersion3).includes(e.version)){const n=e;t=fl({...n,version:n.version,nonceDataAvailabilityMode:li(n.nonceDataAvailabilityMode),feeDataAvailabilityMode:li(n.feeDataAvailabilityMode)})}else throw Error("unsupported signDeclareTransaction version");const r=secp256k12.sign(pa(yd(t)),this.pk);return this.formatEthSignature(r)}formatEthSignature(e){const t=kg(e.r),r=kg(e.s);return[Et(t.low),Et(t.high),Et(r.low),Et(r.high),Et(e.recovery)]}},nB={};Xn(nB,{getAbiEvents:()=>Kv,isAbiEvent:()=>Ig,isObject:()=>sp,parseEvents:()=>Wv,parseUDCEvent:()=>Yv});function Ig(e){return e.type==="event"}function aB(e){return e.filter(t=>t.type==="event").reduce((t,r)=>{const n=r.name,a={...r};return a.name=n,{...t,[Un(fi(mc(n)).toString(16))]:a}},{})}function iB(e){const t=e.filter(a=>Ig(a)&&a.kind==="struct"),r=e.filter(a=>Ig(a)&&a.kind==="enum");return t.reduce((a,i)=>{let s=[],{name:o}=i,c=!1;const d=M=>M.type===o;for(;;){const M=r.find(G=>G.variants.some(d));if(typeof M>"u")break;const j=M.variants.find(d);s.unshift(j.name),j.kind==="flat"&&(c=!0),o=M.name}if(s.length===0)throw new Error("inconsistency in ABI events definition.");c&&(s=[s[s.length-1]]);const l=s.pop();let y={[Un(fi(mc(l)).toString(16))]:i};for(;s.length>0;)y={[Un(fi(mc(s.pop())).toString(16))]:y};return y={...y},Gv(a,y)},{})}function Kv(e){return X2(e)?iB(e):aB(e)}function sp(e){return e&&typeof e=="object"&&!Array.isArray(e)}function Gv(e,t){const r={...e};return sp(e)&&sp(t)&&Object.keys(t).forEach(n=>{sp(t[n])?n in e?r[n]=Gv(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function Wv(e,t,r,n){return e.flat().reduce((i,s)=>{let o=t[s.keys.shift()??0];if(!o)return i;for(;!o.name;){const j=s.keys.shift();yn(!!j,'Not enough data in "key" property of this event.'),o=o[j]}const c={};c[o.name]={};const d=s.keys[Symbol.iterator](),l=s.data[Symbol.iterator](),y=o.members?.filter(j=>j.kind==="key")||o.keys,M=o.members?.filter(j=>j.kind==="data")||o.data;return y.forEach(j=>{c[o.name][j.name]=Gh(d,j,r,n,c[o.name])}),M.forEach(j=>{c[o.name][j.name]=Gh(l,j,r,n,c[o.name])}),i.push(c),i},[])}function Yv(e){if(!e.events)throw new Error("UDC emitted event is empty");const t=e.events.find(r=>el(r.from_address)===el(xf.ADDRESS))||{data:[]};return{transaction_hash:e.transaction_hash,contract_address:t.data[0],address:t.data[0],deployer:t.data[1],unique:t.data[2],classHash:t.data[3],calldata_len:t.data[4],calldata:t.data.slice(5,5+parseInt(t.data[4],16)),salt:t.data[t.data.length-1]}}var Jv=class extends Uv{constructor(t,r,n,a,i=Vt.ETransactionVersion.V2){super(t);yt(this,"signer");yt(this,"address");yt(this,"cairoVersion");yt(this,"transactionVersion");yt(this,"deploySelf",this.deployAccount);this.address=r.toLowerCase(),this.signer=va(n)||n instanceof Uint8Array?new eB(n):n,a&&(this.cairoVersion=a.toString()),this.transactionVersion=i}getPreferredVersion(t,r){return this.transactionVersion===Vt.ETransactionVersion.V3?r:this.transactionVersion===Vt.ETransactionVersion.V2?t:Vt.ETransactionVersion.V3}async getNonce(t){return super.getNonceForAddress(this.address,t)}async getNonceSafe(t){try{return Fn(t??await this.getNonce())}catch{return 0n}}async getCairoVersion(t){if(!this.cairoVersion){const{cairo:r}=t?await super.getContractVersion(void 0,t):await super.getContractVersion(this.address);this.cairoVersion=r}return this.cairoVersion}async estimateFee(t,r={}){return this.estimateInvokeFee(t,r)}async estimateInvokeFee(t,r={}){const{nonce:n,blockIdentifier:a,version:i,skipValidate:s=!0}=r,o=Array.isArray(t)?t:[t],c=Fn(n??await this.getNonce()),d=$s(this.getPreferredVersion(Vt.ETransactionVersion.F1,Vt.ETransactionVersion.F3),ep(i)),l=await this.getChainId(),y={...Sa(r),walletAddress:this.address,nonce:c,maxFee:_a,version:d,chainId:l,cairoVersion:await this.getCairoVersion(),skipValidate:s},M=await this.buildInvocation(o,y);return super.getInvokeEstimateFee({...M},{...Sa(r),version:d,nonce:c},a,r.skipValidate)}async estimateDeclareFee(t,r={}){const{blockIdentifier:n,nonce:a,version:i,skipValidate:s=!0}=r,o=Fn(a??await this.getNonce()),c=$s(Wa(t.contract)?this.getPreferredVersion(Vt.ETransactionVersion.F2,Vt.ETransactionVersion.F3):Vt.ETransactionVersion.F1,ep(i)),d=await this.getChainId(),l=await this.buildDeclarePayload(t,{...Sa(r),nonce:o,chainId:d,version:c,walletAddress:this.address,maxFee:_a,cairoVersion:void 0,skipValidate:s});return super.getDeclareEstimateFee(l,{...Sa(r),version:c,nonce:o},n,r.skipValidate)}async estimateAccountDeployFee({classHash:t,addressSalt:r=0,constructorCalldata:n=[],contractAddress:a},i={}){const{blockIdentifier:s,version:o,skipValidate:c=!0}=i,d=$s(this.getPreferredVersion(Vt.ETransactionVersion.F1,Vt.ETransactionVersion.F3),ep(o)),l=_a,y=await this.getChainId(),M=await this.buildAccountDeployPayload({classHash:t,addressSalt:r,constructorCalldata:n,contractAddress:a},{...Sa(i),nonce:l,chainId:y,version:d,walletAddress:this.address,maxFee:_a,cairoVersion:void 0,skipValidate:c});return super.getDeployAccountEstimateFee({...M},{...Sa(i),version:d,nonce:l},s,i.skipValidate)}async estimateDeployFee(t,r={}){const n=this.buildUDCContractPayload(t);return this.estimateInvokeFee(n,r)}async estimateFeeBulk(t,r={}){const{nonce:n,blockIdentifier:a,version:i,skipValidate:s}=r,o=await this.accountInvocationsFactory(t,{...Sa(r),versions:[Vt.ETransactionVersion.F1,$s(this.getPreferredVersion(Vt.ETransactionVersion.F2,Vt.ETransactionVersion.F3),i)],nonce:n,blockIdentifier:a,skipValidate:s});return super.getEstimateFeeBulk(o,{blockIdentifier:a,skipValidate:s})}async simulateTransaction(t,r={}){const{nonce:n,blockIdentifier:a,skipValidate:i=!0,skipExecute:s,version:o}=r,c=await this.accountInvocationsFactory(t,{...Sa(r),versions:[Vt.ETransactionVersion.V1,$s(this.getPreferredVersion(Vt.ETransactionVersion.V2,Vt.ETransactionVersion.V3),o)],nonce:n,blockIdentifier:a,skipValidate:i});return super.getSimulateTransaction(c,{blockIdentifier:a,skipValidate:i,skipExecute:s})}async execute(t,r,n={}){const a=r===void 0||Array.isArray(r)?n:r,i=Array.isArray(t)?t:[t],s=Fn(a.nonce??await this.getNonce()),o=$s(this.getPreferredVersion(Vt.ETransactionVersion.V1,Vt.ETransactionVersion.V3),a.version),c=await this.getUniversalSuggestedFee(o,{type:"INVOKE_FUNCTION",payload:t},{...a,version:o}),d=await this.getChainId(),l={...Sa(a),resourceBounds:c.resourceBounds,walletAddress:this.address,nonce:s,maxFee:c.maxFee,version:o,chainId:d,cairoVersion:await this.getCairoVersion()},y=await this.signer.signTransaction(i,l),M=bl(i,await this.getCairoVersion());return this.invokeFunction({contractAddress:this.address,calldata:M,signature:y},{...Sa(a),resourceBounds:c.resourceBounds,nonce:s,maxFee:c.maxFee,version:o})}async declareIfNot(t,r={}){const n=rp(t);try{await this.getClassByHash(n.classHash)}catch{return this.declare(t,r)}return{transaction_hash:"",class_hash:n.classHash}}async declare(t,r={}){const n=rp(t),{nonce:a,version:i}=r,s=$s(Wa(t.contract)?this.getPreferredVersion(Vt.ETransactionVersion.V2,Vt.ETransactionVersion.V3):Vt.ETransactionVersion.V1,i),o=await this.getUniversalSuggestedFee(s,{type:"DECLARE",payload:n},{...r,version:s}),c={...Sa(r),resourceBounds:o.resourceBounds,maxFee:o.maxFee,nonce:Fn(a??await this.getNonce()),version:s,chainId:await this.getChainId(),walletAddress:this.address,cairoVersion:void 0},d=await this.buildDeclarePayload(n,c);return this.declareContract(d,c)}async deploy(t,r={}){const{calls:n,addresses:a}=gg(t,this.address);return{...await this.execute(n,void 0,r),contract_address:a}}async deployContract(t,r={}){const n=await this.deploy(t,r),a=await this.waitForTransaction(n.transaction_hash);return Yv(a)}async declareAndDeploy(t,r={}){const{constructorCalldata:n,salt:a,unique:i}=t;let s=await this.declareIfNot(t,r);if(s.transaction_hash!==""){const c=await this.waitForTransaction(s.transaction_hash);s={...s,...c}}const o=await this.deployContract({classHash:s.class_hash,salt:a,unique:i,constructorCalldata:n},r);return{declare:{...s},deploy:o}}async deployAccount({classHash:t,constructorCalldata:r=[],addressSalt:n=0,contractAddress:a},i={}){const s=$s(this.getPreferredVersion(Vt.ETransactionVersion.V1,Vt.ETransactionVersion.V3),i.version),o=_a,c=await this.getChainId(),d=xn.compile(r),l=a??Xh(n,t,d,0),y=await this.getUniversalSuggestedFee(s,{type:"DEPLOY_ACCOUNT",payload:{classHash:t,constructorCalldata:d,addressSalt:n,contractAddress:l}},i),M=await this.signer.signDeployAccountTransaction({...Sa(i),classHash:t,constructorCalldata:d,contractAddress:l,addressSalt:n,chainId:c,resourceBounds:y.resourceBounds,maxFee:y.maxFee,version:s,nonce:o});return this.deployAccountContract({classHash:t,addressSalt:n,constructorCalldata:r,signature:M},{...Sa(i),nonce:o,resourceBounds:y.resourceBounds,maxFee:y.maxFee,version:s})}async signMessage(t){return this.signer.signMessage(t,this.address)}async hashMessage(t){return ip(t,this.address)}async verifyMessageHash(t,r,n,a){const i=n?[n]:["isValidSignature","is_valid_signature"],s=a||{okResponse:[],nokResponse:["0x0","0x00"],error:["argent/invalid-signature","is invalid, with respect to the public key","INVALID_SIG"]};let o;for(const c of i)try{const d=await this.callContract({contractAddress:this.address,entrypoint:c,calldata:xn.compile({hash:Fn(t).toString(),signature:Qh(r)})});if(s.nokResponse.includes(d[0].toString()))return!1;if(s.okResponse.length===0||s.okResponse.includes(d[0].toString()))return!0;throw Error("signatureVerificationResponse Error: response is not part of known responses")}catch(d){if(s.error.some(l=>d.message.includes(l)))return!1;o=d}throw Error(`Signature verification Error: ${o}`)}async verifyMessage(t,r,n,a){const i=await this.hashMessage(t);return this.verifyMessageHash(i,r,n,a)}async getUniversalSuggestedFee(t,{type:r,payload:n},a){let i=0,s=hl(_a);return t===Vt.ETransactionVersion.V3?s=a.resourceBounds??(await this.getSuggestedFee({type:r,payload:n},a)).resourceBounds:i=a.maxFee??(await this.getSuggestedFee({type:r,payload:n},a)).suggestedMaxFee,{maxFee:i,resourceBounds:s}}async getSuggestedFee({type:t,payload:r},n){let a;switch(t){case"INVOKE_FUNCTION":a=await this.estimateInvokeFee(r,n);break;case"DECLARE":a=await this.estimateDeclareFee(r,n);break;case"DEPLOY_ACCOUNT":a=await this.estimateAccountDeployFee(r,n);break;case"DEPLOY":a=await this.estimateDeployFee(r,n);break;default:a={gas_consumed:0n,gas_price:0n,overall_fee:_a,unit:"FRI",suggestedMaxFee:_a,resourceBounds:hl(_a),data_gas_consumed:0n,data_gas_price:0n};break}return a}async buildInvocation(t,r){const n=bl(t,await this.getCairoVersion()),a=r.skipValidate?[]:await this.signer.signTransaction(t,r);return{...Sa(r),contractAddress:this.address,calldata:n,signature:a}}async buildDeclarePayload(t,r){const{classHash:n,contract:a,compiledClassHash:i}=rp(t),s=mv(a);if(typeof i>"u"&&(r.version===Vt.ETransactionVersion3.F3||r.version===Vt.ETransactionVersion3.V3))throw Error("V3 Transaction work with Cairo1 Contracts and require compiledClassHash");const o=r.skipValidate?[]:await this.signer.signDeclareTransaction({...r,...Sa(r),classHash:n,compiledClassHash:i,senderAddress:r.walletAddress});return{senderAddress:r.walletAddress,signature:o,contract:s,compiledClassHash:i}}async buildAccountDeployPayload({classHash:t,addressSalt:r=0,constructorCalldata:n=[],contractAddress:a},i){const s=xn.compile(n),o=a??Xh(r,t,s,0),c=i.skipValidate?[]:await this.signer.signDeployAccountTransaction({...i,...Sa(i),classHash:t,contractAddress:o,addressSalt:r,constructorCalldata:s});return{...Sa(i),classHash:t,addressSalt:r,constructorCalldata:s,signature:c}}buildUDCContractPayload(t){return[].concat(t).map(n=>{const{classHash:a,salt:i="0",unique:s=!0,constructorCalldata:o=[]}=n,c=xn.compile(o);return{contractAddress:xf.ADDRESS,entrypoint:xf.ENTRYPOINT,calldata:[a,i,j2(s),c.length,...c]}})}async accountInvocationsFactory(t,r){const{nonce:n,blockIdentifier:a,skipValidate:i=!0}=r,s=await this.getNonceSafe(n),o=await this.getChainId(),c=r.versions.map(y=>$s(y)),d="payload"in t[0]?t[0].payload:t[0],l=t[0].type==="DEPLOY_ACCOUNT"?await this.getCairoVersion(d.classHash):await this.getCairoVersion();return Promise.all([].concat(t).map(async(y,M)=>{const j="payload"in y?y.payload:y,G={...Sa(r),walletAddress:this.address,nonce:Fn(Number(s)+M),maxFee:_a,chainId:o,cairoVersion:l,version:"",skipValidate:i},$={type:y.type,nonce:Fn(Number(s)+M),blockIdentifier:a,version:""};if(y.type==="INVOKE_FUNCTION"){const fe=tp(c[1]);G.version=fe,$.version=fe;const he=await this.buildInvocation([].concat(j),G);return{...$,...he}}if(y.type==="DEPLOY"){const fe=tp(c[1]);G.version=fe,$.version=fe;const he=this.buildUDCContractPayload(j),Oe=await this.buildInvocation(he,G);return{...$,...Oe,type:"INVOKE_FUNCTION"}}if(y.type==="DECLARE"){const fe=Wa(j.contract)?c[1]:c[0];G.version=fe,$.version=fe;const he=await this.buildDeclarePayload(j,G);return{...$,...he}}if(y.type==="DEPLOY_ACCOUNT"){const fe=tp(c[1]);G.version=fe,$.version=fe;const he=await this.buildAccountDeployPayload(j,G);return{...$,...he}}throw Error(`accountInvocationsFactory: unsupported transaction type: ${y}`)}))}async getStarkName(t=this.address,r){return super.getStarkName(t,r)}},dQ=class extends null{},sB={};Xn(sB,{addDeclareTransaction:()=>aw,addInvokeTransaction:()=>nw,addStarknetChain:()=>tw,deploymentData:()=>cB,getPermissions:()=>Qv,onAccountChange:()=>sw,onNetworkChanged:()=>ow,requestAccounts:()=>Xv,requestChainId:()=>oB,signMessage:()=>iw,supportedSpecs:()=>fB,switchStarknetChain:()=>rw,watchAsset:()=>ew});function Xv(e,t=!1){return e.request({type:"wallet_requestAccounts",params:{silent_mode:t}})}function Qv(e){return e.request({type:"wallet_getPermissions"})}function ew(e,t){return e.request({type:"wallet_watchAsset",params:t})}function tw(e,t){return e.request({type:"wallet_addStarknetChain",params:t})}function rw(e,t){return e.request({type:"wallet_switchStarknetChain",params:{chainId:t}})}function oB(e){return e.request({type:"wallet_requestChainId"})}function cB(e){return e.request({type:"wallet_deploymentData"})}function nw(e,t){return e.request({type:"wallet_addInvokeTransaction",params:t})}function aw(e,t){return e.request({type:"wallet_addDeclareTransaction",params:t})}function iw(e,t){return e.request({type:"wallet_signTypedData",params:t})}function fB(e){return e.request({type:"wallet_supportedSpecs"})}function sw(e,t){e.on("accountsChanged",t)}function ow(e,t){e.on("networkChanged",t)}var uQ=class extends Jv{constructor(t,r,n){super(t,"","",n);yt(this,"address","");yt(this,"walletProvider");this.walletProvider=r,this.walletProvider.on("accountsChanged",a=>{a&&(this.address=a[0].toLowerCase())}),this.walletProvider.on("networkChanged",a=>{a&&this.channel.setChainId(a)}),r.request({type:"wallet_requestAccounts",params:{silent_mode:!1}}).then(a=>{this.address=a[0].toLowerCase()})}onAccountChange(t){sw(this.walletProvider,t)}onNetworkChanged(t){ow(this.walletProvider,t)}requestAccounts(t=!1){return Xv(this.walletProvider,t)}getPermissions(){return Qv(this.walletProvider)}switchStarknetChain(t){return rw(this.walletProvider,t)}watchAsset(t){return ew(this.walletProvider,t)}addStarknetChain(t){return tw(this.walletProvider,t)}execute(t){const n={calls:[].concat(t).map(a=>{const{contractAddress:i,entrypoint:s,calldata:o}=a;return{contract_address:i,entry_point:s,calldata:o}})};return nw(this.walletProvider,n)}declare(t){const r=rp(t),n=t.contract,a={...n,abi:ni(n.abi)};if(!r.compiledClassHash)throw Error("compiledClassHash is required");const i={compiled_class_hash:r.compiledClassHash,contract_class:a};return aw(this.walletProvider,i)}async deploy(t){const{calls:r,addresses:n}=gg(t,this.address);return{...await this.execute(r),contract_address:n}}signMessage(t){return iw(this.walletProvider,t)}},Cg=e=>{const t=["blockIdentifier","parseRequest","parseResponse","formatResponse","maxFee","nonce","signature","addressSalt"],r=e[e.length-1];return typeof r=="object"&&t.some(n=>n in r)?{args:e,options:e.pop()}:{args:e}};function cw(e,t){return async function(...r){const n=Cg(r);return e.call(t.name,n.args,{parseRequest:!0,parseResponse:!0,...n.options})}}function dB(e,t){return async function(...r){const n=Cg(r);return e.invoke(t.name,n.args,{parseRequest:!0,...n.options})}}function fw(e,t){return t.stateMutability==="view"||t.state_mutability==="view"?cw(e,t):dB(e,t)}function uB(e,t){return function(...r){return e.populate(t.name,r)}}function lB(e,t){return function(...r){return e.estimate(t.name,r)}}function yl(e,t){return Array.isArray(e)&&"__compiled__"in e?e:Array.isArray(e)&&Array.isArray(e[0])&&"__compiled__"in e[0]?e[0]:t()}var dw=class{constructor(e,t,r=Fv){yt(this,"abi");yt(this,"address");yt(this,"providerOrAccount");yt(this,"deployTransactionHash");yt(this,"structs");yt(this,"events");yt(this,"functions");yt(this,"callStatic");yt(this,"populateTransaction");yt(this,"estimateFee");yt(this,"callData");this.address=t&&t.toLowerCase(),this.providerOrAccount=r,this.callData=new xn(e),this.structs=xn.getAbiStruct(e),this.events=Kv(e);const n=L8(e);this.abi=n.getLegacyFormat();const a={enumerable:!0,value:{},writable:!1};Object.defineProperties(this,{functions:{enumerable:!0,value:{},writable:!1},callStatic:{enumerable:!0,value:{},writable:!1},populateTransaction:{enumerable:!0,value:{},writable:!1},estimateFee:{enumerable:!0,value:{},writable:!1}}),this.abi.forEach(i=>{if(i.type!=="function")return;const s=i.name;this[s]||Object.defineProperty(this,s,{...a,value:fw(this,i)}),this.functions[s]||Object.defineProperty(this.functions,s,{...a,value:fw(this,i)}),this.callStatic[s]||Object.defineProperty(this.callStatic,s,{...a,value:cw(this,i)}),this.populateTransaction[s]||Object.defineProperty(this.populateTransaction,s,{...a,value:uB(this,i)}),this.estimateFee[s]||Object.defineProperty(this.estimateFee,s,{...a,value:lB(this,i)})})}attach(e){this.address=e}connect(e){this.providerOrAccount=e}async deployed(){return this.deployTransactionHash&&(await this.providerOrAccount.waitForTransaction(this.deployTransactionHash),this.deployTransactionHash=void 0),this}async call(e,t=[],{parseRequest:r=!0,parseResponse:n=!0,formatResponse:a=void 0,blockIdentifier:i=void 0}={}){yn(this.address!==null,"contract is not connected to an address");const s=yl(t,()=>r?(this.callData.validate("CALL",e,t),this.callData.compile(e,t)):(console.warn("Call skipped parsing but provided rawArgs, possible malfunction request"),t));return this.providerOrAccount.callContract({contractAddress:this.address,calldata:s,entrypoint:e},i).then(o=>n?a?this.callData.format(e,o,a):this.callData.parse(e,o):o)}invoke(e,t=[],{parseRequest:r=!0,maxFee:n,nonce:a,signature:i}={}){yn(this.address!==null,"contract is not connected to an address");const s=yl(t,()=>r?(this.callData.validate("INVOKE",e,t),this.callData.compile(e,t)):(console.warn("Invoke skipped parsing but provided rawArgs, possible malfunction request"),t)),o={contractAddress:this.address,calldata:s,entrypoint:e};if("execute"in this.providerOrAccount)return this.providerOrAccount.execute(o,void 0,{maxFee:n,nonce:a});if(!a)throw new Error("Nonce is required when invoking a function without an account");return console.warn(`Invoking ${e} without an account. This will not work on a public node.`),this.providerOrAccount.invokeFunction({...o,signature:i},{nonce:a})}async estimate(e,t=[]){yn(this.address!==null,"contract is not connected to an address"),yl(t,()=>!1)||this.callData.validate("INVOKE",e,t);const r=this.populate(e,t);if("estimateInvokeFee"in this.providerOrAccount)return this.providerOrAccount.estimateInvokeFee(r);throw Error("Contract must be connected to the account contract to estimate")}populate(e,t=[]){const r=yl(t,()=>this.callData.compile(e,t));return{contractAddress:this.address,entrypoint:e,calldata:r}}parseEvents(e){return Wv(e.events?.filter(t=>el(t.from_address)===el(this.address),[])||[],this.events,this.structs,xn.getAbiEnum(this.abi))}isCairo1(){return N8.isCairo1Abi(this.abi)}async getVersion(){return this.providerOrAccount.getContractVersion(this.address)}typedv2(e){return this}},lQ=class{constructor(){yt(this,"functions");yt(this,"callStatic");yt(this,"populateTransaction");yt(this,"estimateFee")}},hQ=class{constructor(e){yt(this,"compiledContract");yt(this,"account");yt(this,"abi");yt(this,"classHash");yt(this,"casm");yt(this,"compiledClassHash");yt(this,"CallData");this.compiledContract=e.compiledContract,this.account=e.account,this.casm=e.casm,this.abi=e.abi??e.compiledContract.abi,this.classHash=e.classHash,this.compiledClassHash=e.compiledClassHash,this.CallData=new xn(this.abi)}async deploy(...e){const{args:t,options:r={parseRequest:!0}}=Cg(e),n=yl(t,()=>r.parseRequest?(this.CallData.validate("DEPLOY","constructor",t),this.CallData.compile("constructor",t)):(console.warn("Call skipped parsing but provided rawArgs, possible malfunction request"),t)),{deploy:{contract_address:a,transaction_hash:i}}=await this.account.declareAndDeploy({contract:this.compiledContract,casm:this.casm,classHash:this.classHash,compiledClassHash:this.compiledClassHash,constructorCalldata:n,salt:r.addressSalt});yn(!!a,"Deployment of the contract failed");const s=new dw(this.compiledContract.abi,a,this.account);return s.deployTransactionHash=i,s}connect(e){return this.account=e,this}attach(e){return new dw(this.abi,e,this.account)}},pQ=class{};function hB(e){const t=Et(Un(e.toString())),r=pa(t).padStart(64,"0");return Un(r)}function uw(e){const t=hB(e);if(!t.match(/^(0x)?[0-9a-fA-F]{64}$/))throw new Error("Invalid Address Format");return F2(t,_a,N2-1n,"Starknet Address"),t}function pB(e){const t=pa(uw(e)).toLowerCase().split(""),r=pa(z2(e)),n=Qo(r.padStart(64,"0"));for(let a=0;a>1]>>4>=8&&(t[a]=t[a].toUpperCase()),(n[a>>1]&15)>=8&&(t[a+1]=t[a+1].toUpperCase());return Un(t.join(""))}function bB(e){return pB(e)===e}var gB=/^(?:\w+:)?\/\/(\S+)$/,mB=/^localhost[:?\d]*(?:[^:?\d]\S*)?$/,yB=/^[^\s.]+\.\S{2,}$/;function _B(e){if(!e||typeof e!="string")return!1;const t=e.match(gB);if(!t)return!1;const r=t[1];return r?!!(mB.test(r)||yB.test(r)):!1}function bQ(e,t,r){return _B(r)?r:urljoin(e,r??t)}var gQ=null;const lw=()=>({"argent-version":"5.19.5","argent-client":"argent-x"}),Og=lw(),Ng=e=>{switch(e){case"sepolia-alpha":return"sepolia";case"mainnet-alpha":return"mainnet"}return null},mQ=e=>{const t=Ng(e),r=lw();return t?{...r,"argent-network":t}:r},vB=Y0((e,t)=>new Uv({nodeUrl:e,chainId:t,headers:Og}),(e,t="")=>`${e}::${t}`);function hw(e){const t=rl.encodeShortString(e.chainId);return vB(e.rpcUrl,t)}const wB=document.getElementById("argent-x-extension")?.getAttribute("data-extension-id");function An(e){return window.postMessage({...e,extensionId:wB},window.location.origin)}function hn(e,t,r=()=>!0){return new Promise((n,a)=>{const i=setTimeout(()=>a(new Error("Timeout")),t),s=o=>{if(o.origin===window.location.origin&&o.data.type===e&&r(o.data))return clearTimeout(i),window.removeEventListener("message",s),n("data"in o.data?o.data.data:void 0)};window.addEventListener("message",s)})}const EB=async()=>{An({type:"DISCONNECT_ACCOUNT"})};function yQ(e){return e=e||new Map,{all:e,on(t,r){const n=e.get(t);n?n.push(r):e.set(t,[r])},off(t,r){const n=e.get(t);n&&(r?n.splice(n.indexOf(r)>>>0,1):e.set(t,[]))},emit(t,r){let n=e?.get(t);n&&n.slice().map(a=>{a(r)}),n=e.get("*"),n&&n.slice().forEach(a=>{a(t,r)})}}}var kn;(function(e){e.assertEqual=a=>a;function t(a){}e.assertIs=t;function r(a){throw new Error}e.assertNever=r,e.arrayToEnum=a=>{const i={};for(const s of a)i[s]=s;return i},e.getValidEnumValues=a=>{const i=e.objectKeys(a).filter(o=>typeof a[a[o]]!="number"),s={};for(const o of i)s[o]=a[o];return e.objectValues(s)},e.objectValues=a=>e.objectKeys(a).map(function(i){return a[i]}),e.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{const i=[];for(const s in a)Object.prototype.hasOwnProperty.call(a,s)&&i.push(s);return i},e.find=(a,i)=>{for(const s of a)if(i(s))return s},e.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&isFinite(a)&&Math.floor(a)===a;function n(a,i=" | "){return a.map(s=>typeof s=="string"?`'${s}'`:s).join(i)}e.joinValues=n,e.jsonStringifyReplacer=(a,i)=>typeof i=="bigint"?i.toString():i})(kn||(kn={}));var Rg;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(Rg||(Rg={}));const Yt=kn.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Ac=e=>{switch(typeof e){case"undefined":return Yt.undefined;case"string":return Yt.string;case"number":return isNaN(e)?Yt.nan:Yt.number;case"boolean":return Yt.boolean;case"function":return Yt.function;case"bigint":return Yt.bigint;case"symbol":return Yt.symbol;case"object":return Array.isArray(e)?Yt.array:e===null?Yt.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?Yt.promise:typeof Map<"u"&&e instanceof Map?Yt.map:typeof Set<"u"&&e instanceof Set?Yt.set:typeof Date<"u"&&e instanceof Date?Yt.date:Yt.object;default:return Yt.unknown}},Rt=kn.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),xB=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:");class bi extends Error{constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};const r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}get errors(){return this.issues}format(t){const r=t||function(i){return i.message},n={_errors:[]},a=i=>{for(const s of i.issues)if(s.code==="invalid_union")s.unionErrors.map(a);else if(s.code==="invalid_return_type")a(s.returnTypeError);else if(s.code==="invalid_arguments")a(s.argumentsError);else if(s.path.length===0)n._errors.push(r(s));else{let o=n,c=0;for(;cr.message){const r={},n=[];for(const a of this.issues)a.path.length>0?(r[a.path[0]]=r[a.path[0]]||[],r[a.path[0]].push(t(a))):n.push(t(a));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}}bi.create=e=>new bi(e);const Id=(e,t)=>{let r;switch(e.code){case Rt.invalid_type:e.received===Yt.undefined?r="Required":r=`Expected ${e.expected}, received ${e.received}`;break;case Rt.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,kn.jsonStringifyReplacer)}`;break;case Rt.unrecognized_keys:r=`Unrecognized key(s) in object: ${kn.joinValues(e.keys,", ")}`;break;case Rt.invalid_union:r="Invalid input";break;case Rt.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${kn.joinValues(e.options)}`;break;case Rt.invalid_enum_value:r=`Invalid enum value. Expected ${kn.joinValues(e.options)}, received '${e.received}'`;break;case Rt.invalid_arguments:r="Invalid function arguments";break;case Rt.invalid_return_type:r="Invalid function return type";break;case Rt.invalid_date:r="Invalid date";break;case Rt.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:kn.assertNever(e.validation):e.validation!=="regex"?r=`Invalid ${e.validation}`:r="Invalid";break;case Rt.too_small:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:r="Invalid input";break;case Rt.too_big:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?r=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:r="Invalid input";break;case Rt.custom:r="Invalid input";break;case Rt.invalid_intersection_types:r="Intersection results could not be merged";break;case Rt.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case Rt.not_finite:r="Number must be finite";break;default:r=t.defaultError,kn.assertNever(e)}return{message:r}};let pw=Id;function AB(e){pw=e}function op(){return pw}const cp=e=>{const{data:t,path:r,errorMaps:n,issueData:a}=e,i=[...r,...a.path||[]],s={...a,path:i};if(a.message!==void 0)return{...a,path:i,message:a.message};let o="";const c=n.filter(d=>!!d).slice().reverse();for(const d of c)o=d(s,{data:t,defaultError:o}).message;return{...a,path:i,message:o}},TB=[];function Kt(e,t){const r=op(),n=cp({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===Id?void 0:Id].filter(a=>!!a)});e.common.issues.push(n)}class $a{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,r){const n=[];for(const a of r){if(a.status==="aborted")return _r;a.status==="dirty"&&t.dirty(),n.push(a.value)}return{status:t.value,value:n}}static async mergeObjectAsync(t,r){const n=[];for(const a of r){const i=await a.key,s=await a.value;n.push({key:i,value:s})}return $a.mergeObjectSync(t,n)}static mergeObjectSync(t,r){const n={};for(const a of r){const{key:i,value:s}=a;if(i.status==="aborted"||s.status==="aborted")return _r;i.status==="dirty"&&t.dirty(),s.status==="dirty"&&t.dirty(),i.value!=="__proto__"&&(typeof s.value<"u"||a.alwaysSet)&&(n[i.value]=s.value)}return{status:t.value,value:n}}}const _r=Object.freeze({status:"aborted"}),fp=e=>({status:"dirty",value:e}),Ya=e=>({status:"valid",value:e}),Mg=e=>e.status==="aborted",Bg=e=>e.status==="dirty",_l=e=>e.status==="valid",vl=e=>typeof Promise<"u"&&e instanceof Promise;function dp(e,t,r,n){if(typeof t=="function"?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t.get(e)}function bw(e,t,r,n,a){if(typeof t=="function"?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t.set(e,r),r}var ir;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(ir||(ir={}));var wl,El;class Zs{constructor(t,r,n,a){this._cachedPath=[],this.parent=t,this.data=r,this._path=n,this._key=a}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const gw=(e,t)=>{if(_l(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const r=new bi(e.common.issues);return this._error=r,this._error}}};function bn(e){if(!e)return{};const{errorMap:t,invalid_type_error:r,required_error:n,description:a}=e;if(t&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:a}:{errorMap:(i,s)=>{var o,c;const{message:d}=e;return i.code==="invalid_enum_value"?{message:d??s.defaultError}:typeof s.data>"u"?{message:(o=d??n)!==null&&o!==void 0?o:s.defaultError}:i.code!=="invalid_type"?{message:s.defaultError}:{message:(c=d??r)!==null&&c!==void 0?c:s.defaultError}},description:a}}class _n{constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(t){return Ac(t.data)}_getOrReturnCtx(t,r){return r||{common:t.parent.common,data:t.data,parsedType:Ac(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new $a,ctx:{common:t.parent.common,data:t.data,parsedType:Ac(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){const r=this._parse(t);if(vl(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(t){const r=this._parse(t);return Promise.resolve(r)}parse(t,r){const n=this.safeParse(t,r);if(n.success)return n.data;throw n.error}safeParse(t,r){var n;const a={common:{issues:[],async:(n=r?.async)!==null&&n!==void 0?n:!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ac(t)},i=this._parseSync({data:t,path:a.path,parent:a});return gw(a,i)}async parseAsync(t,r){const n=await this.safeParseAsync(t,r);if(n.success)return n.data;throw n.error}async safeParseAsync(t,r){const n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ac(t)},a=this._parse({data:t,path:n.path,parent:n}),i=await(vl(a)?a:Promise.resolve(a));return gw(n,i)}refine(t,r){const n=a=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(a):r;return this._refinement((a,i)=>{const s=t(a),o=()=>i.addIssue({code:Rt.custom,...n(a)});return typeof Promise<"u"&&s instanceof Promise?s.then(c=>c?!0:(o(),!1)):s?!0:(o(),!1)})}refinement(t,r){return this._refinement((n,a)=>t(n)?!0:(a.addIssue(typeof r=="function"?r(n,a):r),!1))}_refinement(t){return new Yi({schema:this,typeName:pr.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}optional(){return Gs.create(this,this._def)}nullable(){return Cc.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Wi.create(this,this._def)}promise(){return Rd.create(this,this._def)}or(t){return Sl.create([this,t],this._def)}and(t){return kl.create(this,t,this._def)}transform(t){return new Yi({...bn(this._def),schema:this,typeName:pr.ZodEffects,effect:{type:"transform",transform:t}})}default(t){const r=typeof t=="function"?t:()=>t;return new Rl({...bn(this._def),innerType:this,defaultValue:r,typeName:pr.ZodDefault})}brand(){return new Lg({typeName:pr.ZodBranded,type:this,...bn(this._def)})}catch(t){const r=typeof t=="function"?t:()=>t;return new Ml({...bn(this._def),innerType:this,catchValue:r,typeName:pr.ZodCatch})}describe(t){const r=this.constructor;return new r({...this._def,description:t})}pipe(t){return Bl.create(this,t)}readonly(){return Pl.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const SB=/^c[^\s-]{8,}$/i,kB=/^[0-9a-z]+$/,IB=/^[0-9A-HJKMNP-TV-Z]{26}$/,CB=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,OB=/^[a-z0-9_-]{21}$/i,NB=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,RB=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,MB="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Pg;const BB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,PB=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,DB=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,mw="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",LB=new RegExp(`^${mw}$`);function yw(e){let t="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`),t}function UB(e){return new RegExp(`^${yw(e)}$`)}function _w(e){let t=`${mw}T${yw(e)}`;const r=[];return r.push(e.local?"Z?":"Z"),e.offset&&r.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${r.join("|")})`,new RegExp(`^${t}$`)}function FB(e,t){return!!((t==="v4"||!t)&&BB.test(e)||(t==="v6"||!t)&&PB.test(e))}class Gi extends _n{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==Yt.string){const a=this._getOrReturnCtx(t);return Kt(a,{code:Rt.invalid_type,expected:Yt.string,received:a.parsedType}),_r}const r=new $a;let n;for(const a of this._def.checks)if(a.kind==="min")t.data.lengtha.value&&(n=this._getOrReturnCtx(t,n),Kt(n,{code:Rt.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="length"){const i=t.data.length>a.value,s=t.data.lengtht.test(a),{validation:r,code:Rt.invalid_string,...ir.errToObj(n)})}_addCheck(t){return new Gi({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...ir.errToObj(t)})}url(t){return this._addCheck({kind:"url",...ir.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...ir.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...ir.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...ir.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...ir.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...ir.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...ir.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...ir.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...ir.errToObj(t)})}datetime(t){var r,n;return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:(r=t?.offset)!==null&&r!==void 0?r:!1,local:(n=t?.local)!==null&&n!==void 0?n:!1,...ir.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,...ir.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...ir.errToObj(t)})}regex(t,r){return this._addCheck({kind:"regex",regex:t,...ir.errToObj(r)})}includes(t,r){return this._addCheck({kind:"includes",value:t,position:r?.position,...ir.errToObj(r?.message)})}startsWith(t,r){return this._addCheck({kind:"startsWith",value:t,...ir.errToObj(r)})}endsWith(t,r){return this._addCheck({kind:"endsWith",value:t,...ir.errToObj(r)})}min(t,r){return this._addCheck({kind:"min",value:t,...ir.errToObj(r)})}max(t,r){return this._addCheck({kind:"max",value:t,...ir.errToObj(r)})}length(t,r){return this._addCheck({kind:"length",value:t,...ir.errToObj(r)})}nonempty(t){return this.min(1,ir.errToObj(t))}trim(){return new Gi({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Gi({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Gi({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get minLength(){let t=null;for(const r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxLength(){let t=null;for(const r of this._def.checks)r.kind==="max"&&(t===null||r.value{var t;return new Gi({checks:[],typeName:pr.ZodString,coerce:(t=e?.coerce)!==null&&t!==void 0?t:!1,...bn(e)})};function HB(e,t){const r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,a=r>n?r:n,i=parseInt(e.toFixed(a).replace(".","")),s=parseInt(t.toFixed(a).replace(".",""));return i%s/Math.pow(10,a)}class Tc extends _n{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==Yt.number){const a=this._getOrReturnCtx(t);return Kt(a,{code:Rt.invalid_type,expected:Yt.number,received:a.parsedType}),_r}let r;const n=new $a;for(const a of this._def.checks)a.kind==="int"?kn.isInteger(t.data)||(r=this._getOrReturnCtx(t,r),Kt(r,{code:Rt.invalid_type,expected:"integer",received:"float",message:a.message}),n.dirty()):a.kind==="min"?(a.inclusive?t.dataa.value:t.data>=a.value)&&(r=this._getOrReturnCtx(t,r),Kt(r,{code:Rt.too_big,maximum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),n.dirty()):a.kind==="multipleOf"?HB(t.data,a.value)!==0&&(r=this._getOrReturnCtx(t,r),Kt(r,{code:Rt.not_multiple_of,multipleOf:a.value,message:a.message}),n.dirty()):a.kind==="finite"?Number.isFinite(t.data)||(r=this._getOrReturnCtx(t,r),Kt(r,{code:Rt.not_finite,message:a.message}),n.dirty()):kn.assertNever(a);return{status:n.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,ir.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ir.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ir.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ir.toString(r))}setLimit(t,r,n,a){return new Tc({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ir.toString(a)}]})}_addCheck(t){return new Tc({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:ir.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ir.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ir.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ir.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ir.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ir.toString(r)})}finite(t){return this._addCheck({kind:"finite",message:ir.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ir.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ir.toString(t)})}get minValue(){let t=null;for(const r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(const r of this._def.checks)r.kind==="max"&&(t===null||r.valuet.kind==="int"||t.kind==="multipleOf"&&kn.isInteger(t.value))}get isFinite(){let t=null,r=null;for(const n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(t===null||n.valuenew Tc({checks:[],typeName:pr.ZodNumber,coerce:e?.coerce||!1,...bn(e)});class Sc extends _n{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce&&(t.data=BigInt(t.data)),this._getType(t)!==Yt.bigint){const a=this._getOrReturnCtx(t);return Kt(a,{code:Rt.invalid_type,expected:Yt.bigint,received:a.parsedType}),_r}let r;const n=new $a;for(const a of this._def.checks)a.kind==="min"?(a.inclusive?t.dataa.value:t.data>=a.value)&&(r=this._getOrReturnCtx(t,r),Kt(r,{code:Rt.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),n.dirty()):a.kind==="multipleOf"?t.data%a.value!==BigInt(0)&&(r=this._getOrReturnCtx(t,r),Kt(r,{code:Rt.not_multiple_of,multipleOf:a.value,message:a.message}),n.dirty()):kn.assertNever(a);return{status:n.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,ir.toString(r))}gt(t,r){return this.setLimit("min",t,!1,ir.toString(r))}lte(t,r){return this.setLimit("max",t,!0,ir.toString(r))}lt(t,r){return this.setLimit("max",t,!1,ir.toString(r))}setLimit(t,r,n,a){return new Sc({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:ir.toString(a)}]})}_addCheck(t){return new Sc({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ir.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ir.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ir.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ir.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:ir.toString(r)})}get minValue(){let t=null;for(const r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(const r of this._def.checks)r.kind==="max"&&(t===null||r.value{var t;return new Sc({checks:[],typeName:pr.ZodBigInt,coerce:(t=e?.coerce)!==null&&t!==void 0?t:!1,...bn(e)})};class xl extends _n{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==Yt.boolean){const r=this._getOrReturnCtx(t);return Kt(r,{code:Rt.invalid_type,expected:Yt.boolean,received:r.parsedType}),_r}return Ya(t.data)}}xl.create=e=>new xl({typeName:pr.ZodBoolean,coerce:e?.coerce||!1,...bn(e)});class Of extends _n{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==Yt.date){const a=this._getOrReturnCtx(t);return Kt(a,{code:Rt.invalid_type,expected:Yt.date,received:a.parsedType}),_r}if(isNaN(t.data.getTime())){const a=this._getOrReturnCtx(t);return Kt(a,{code:Rt.invalid_date}),_r}const r=new $a;let n;for(const a of this._def.checks)a.kind==="min"?t.data.getTime()a.value&&(n=this._getOrReturnCtx(t,n),Kt(n,{code:Rt.too_big,message:a.message,inclusive:!0,exact:!1,maximum:a.value,type:"date"}),r.dirty()):kn.assertNever(a);return{status:r.value,value:new Date(t.data.getTime())}}_addCheck(t){return new Of({...this._def,checks:[...this._def.checks,t]})}min(t,r){return this._addCheck({kind:"min",value:t.getTime(),message:ir.toString(r)})}max(t,r){return this._addCheck({kind:"max",value:t.getTime(),message:ir.toString(r)})}get minDate(){let t=null;for(const r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(const r of this._def.checks)r.kind==="max"&&(t===null||r.valuenew Of({checks:[],coerce:e?.coerce||!1,typeName:pr.ZodDate,...bn(e)});class up extends _n{_parse(t){if(this._getType(t)!==Yt.symbol){const r=this._getOrReturnCtx(t);return Kt(r,{code:Rt.invalid_type,expected:Yt.symbol,received:r.parsedType}),_r}return Ya(t.data)}}up.create=e=>new up({typeName:pr.ZodSymbol,...bn(e)});class Al extends _n{_parse(t){if(this._getType(t)!==Yt.undefined){const r=this._getOrReturnCtx(t);return Kt(r,{code:Rt.invalid_type,expected:Yt.undefined,received:r.parsedType}),_r}return Ya(t.data)}}Al.create=e=>new Al({typeName:pr.ZodUndefined,...bn(e)});class Tl extends _n{_parse(t){if(this._getType(t)!==Yt.null){const r=this._getOrReturnCtx(t);return Kt(r,{code:Rt.invalid_type,expected:Yt.null,received:r.parsedType}),_r}return Ya(t.data)}}Tl.create=e=>new Tl({typeName:pr.ZodNull,...bn(e)});class Cd extends _n{constructor(){super(...arguments),this._any=!0}_parse(t){return Ya(t.data)}}Cd.create=e=>new Cd({typeName:pr.ZodAny,...bn(e)});class Nf extends _n{constructor(){super(...arguments),this._unknown=!0}_parse(t){return Ya(t.data)}}Nf.create=e=>new Nf({typeName:pr.ZodUnknown,...bn(e)});class Po extends _n{_parse(t){const r=this._getOrReturnCtx(t);return Kt(r,{code:Rt.invalid_type,expected:Yt.never,received:r.parsedType}),_r}}Po.create=e=>new Po({typeName:pr.ZodNever,...bn(e)});class lp extends _n{_parse(t){if(this._getType(t)!==Yt.undefined){const r=this._getOrReturnCtx(t);return Kt(r,{code:Rt.invalid_type,expected:Yt.void,received:r.parsedType}),_r}return Ya(t.data)}}lp.create=e=>new lp({typeName:pr.ZodVoid,...bn(e)});class Wi extends _n{_parse(t){const{ctx:r,status:n}=this._processInputParams(t),a=this._def;if(r.parsedType!==Yt.array)return Kt(r,{code:Rt.invalid_type,expected:Yt.array,received:r.parsedType}),_r;if(a.exactLength!==null){const s=r.data.length>a.exactLength.value,o=r.data.lengtha.maxLength.value&&(Kt(r,{code:Rt.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((s,o)=>a.type._parseAsync(new Zs(r,s,r.path,o)))).then(s=>$a.mergeArray(n,s));const i=[...r.data].map((s,o)=>a.type._parseSync(new Zs(r,s,r.path,o)));return $a.mergeArray(n,i)}get element(){return this._def.type}min(t,r){return new Wi({...this._def,minLength:{value:t,message:ir.toString(r)}})}max(t,r){return new Wi({...this._def,maxLength:{value:t,message:ir.toString(r)}})}length(t,r){return new Wi({...this._def,exactLength:{value:t,message:ir.toString(r)}})}nonempty(t){return this.min(1,t)}}Wi.create=(e,t)=>new Wi({type:e,minLength:null,maxLength:null,exactLength:null,typeName:pr.ZodArray,...bn(t)});function Od(e){if(e instanceof ca){const t={};for(const r in e.shape){const n=e.shape[r];t[r]=Gs.create(Od(n))}return new ca({...e._def,shape:()=>t})}else return e instanceof Wi?new Wi({...e._def,type:Od(e.element)}):e instanceof Gs?Gs.create(Od(e.unwrap())):e instanceof Cc?Cc.create(Od(e.unwrap())):e instanceof Ks?Ks.create(e.items.map(t=>Od(t))):e}class ca extends _n{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const t=this._def.shape(),r=kn.objectKeys(t);return this._cached={shape:t,keys:r}}_parse(t){if(this._getType(t)!==Yt.object){const c=this._getOrReturnCtx(t);return Kt(c,{code:Rt.invalid_type,expected:Yt.object,received:c.parsedType}),_r}const{status:r,ctx:n}=this._processInputParams(t),{shape:a,keys:i}=this._getCached(),s=[];if(!(this._def.catchall instanceof Po&&this._def.unknownKeys==="strip"))for(const c in n.data)i.includes(c)||s.push(c);const o=[];for(const c of i){const d=a[c],l=n.data[c];o.push({key:{status:"valid",value:c},value:d._parse(new Zs(n,l,n.path,c)),alwaysSet:c in n.data})}if(this._def.catchall instanceof Po){const c=this._def.unknownKeys;if(c==="passthrough")for(const d of s)o.push({key:{status:"valid",value:d},value:{status:"valid",value:n.data[d]}});else if(c==="strict")s.length>0&&(Kt(n,{code:Rt.unrecognized_keys,keys:s}),r.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const c=this._def.catchall;for(const d of s){const l=n.data[d];o.push({key:{status:"valid",value:d},value:c._parse(new Zs(n,l,n.path,d)),alwaysSet:d in n.data})}}return n.common.async?Promise.resolve().then(async()=>{const c=[];for(const d of o){const l=await d.key,y=await d.value;c.push({key:l,value:y,alwaysSet:d.alwaysSet})}return c}).then(c=>$a.mergeObjectSync(r,c)):$a.mergeObjectSync(r,o)}get shape(){return this._def.shape()}strict(t){return ir.errToObj,new ca({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(r,n)=>{var a,i,s,o;const c=(s=(i=(a=this._def).errorMap)===null||i===void 0?void 0:i.call(a,r,n).message)!==null&&s!==void 0?s:n.defaultError;return r.code==="unrecognized_keys"?{message:(o=ir.errToObj(t).message)!==null&&o!==void 0?o:c}:{message:c}}}:{}})}strip(){return new ca({...this._def,unknownKeys:"strip"})}passthrough(){return new ca({...this._def,unknownKeys:"passthrough"})}extend(t){return new ca({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new ca({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:pr.ZodObject})}setKey(t,r){return this.augment({[t]:r})}catchall(t){return new ca({...this._def,catchall:t})}pick(t){const r={};return kn.objectKeys(t).forEach(n=>{t[n]&&this.shape[n]&&(r[n]=this.shape[n])}),new ca({...this._def,shape:()=>r})}omit(t){const r={};return kn.objectKeys(this.shape).forEach(n=>{t[n]||(r[n]=this.shape[n])}),new ca({...this._def,shape:()=>r})}deepPartial(){return Od(this)}partial(t){const r={};return kn.objectKeys(this.shape).forEach(n=>{const a=this.shape[n];t&&!t[n]?r[n]=a:r[n]=a.optional()}),new ca({...this._def,shape:()=>r})}required(t){const r={};return kn.objectKeys(this.shape).forEach(n=>{if(t&&!t[n])r[n]=this.shape[n];else{let a=this.shape[n];for(;a instanceof Gs;)a=a._def.innerType;r[n]=a}}),new ca({...this._def,shape:()=>r})}keyof(){return vw(kn.objectKeys(this.shape))}}ca.create=(e,t)=>new ca({shape:()=>e,unknownKeys:"strip",catchall:Po.create(),typeName:pr.ZodObject,...bn(t)}),ca.strictCreate=(e,t)=>new ca({shape:()=>e,unknownKeys:"strict",catchall:Po.create(),typeName:pr.ZodObject,...bn(t)}),ca.lazycreate=(e,t)=>new ca({shape:e,unknownKeys:"strip",catchall:Po.create(),typeName:pr.ZodObject,...bn(t)});class Sl extends _n{_parse(t){const{ctx:r}=this._processInputParams(t),n=this._def.options;function a(i){for(const o of i)if(o.result.status==="valid")return o.result;for(const o of i)if(o.result.status==="dirty")return r.common.issues.push(...o.ctx.common.issues),o.result;const s=i.map(o=>new bi(o.ctx.common.issues));return Kt(r,{code:Rt.invalid_union,unionErrors:s}),_r}if(r.common.async)return Promise.all(n.map(async i=>{const s={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:s}),ctx:s}})).then(a);{let i;const s=[];for(const c of n){const d={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:d});if(l.status==="valid")return l;l.status==="dirty"&&!i&&(i={result:l,ctx:d}),d.common.issues.length&&s.push(d.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;const o=s.map(c=>new bi(c));return Kt(r,{code:Rt.invalid_union,unionErrors:o}),_r}}get options(){return this._def.options}}Sl.create=(e,t)=>new Sl({options:e,typeName:pr.ZodUnion,...bn(t)});const kc=e=>e instanceof Cl?kc(e.schema):e instanceof Yi?kc(e.innerType()):e instanceof Ol?[e.value]:e instanceof Ic?e.options:e instanceof Nl?kn.objectValues(e.enum):e instanceof Rl?kc(e._def.innerType):e instanceof Al?[void 0]:e instanceof Tl?[null]:e instanceof Gs?[void 0,...kc(e.unwrap())]:e instanceof Cc?[null,...kc(e.unwrap())]:e instanceof Lg||e instanceof Pl?kc(e.unwrap()):e instanceof Ml?kc(e._def.innerType):[];class hp extends _n{_parse(t){const{ctx:r}=this._processInputParams(t);if(r.parsedType!==Yt.object)return Kt(r,{code:Rt.invalid_type,expected:Yt.object,received:r.parsedType}),_r;const n=this.discriminator,a=r.data[n],i=this.optionsMap.get(a);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(Kt(r,{code:Rt.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),_r)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,r,n){const a=new Map;for(const i of r){const s=kc(i.shape[t]);if(!s.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(const o of s){if(a.has(o))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(o)}`);a.set(o,i)}}return new hp({typeName:pr.ZodDiscriminatedUnion,discriminator:t,options:r,optionsMap:a,...bn(n)})}}function Dg(e,t){const r=Ac(e),n=Ac(t);if(e===t)return{valid:!0,data:e};if(r===Yt.object&&n===Yt.object){const a=kn.objectKeys(t),i=kn.objectKeys(e).filter(o=>a.indexOf(o)!==-1),s={...e,...t};for(const o of i){const c=Dg(e[o],t[o]);if(!c.valid)return{valid:!1};s[o]=c.data}return{valid:!0,data:s}}else if(r===Yt.array&&n===Yt.array){if(e.length!==t.length)return{valid:!1};const a=[];for(let i=0;i{if(Mg(i)||Mg(s))return _r;const o=Dg(i.value,s.value);return o.valid?((Bg(i)||Bg(s))&&r.dirty(),{status:r.value,value:o.data}):(Kt(n,{code:Rt.invalid_intersection_types}),_r)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,s])=>a(i,s)):a(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}}kl.create=(e,t,r)=>new kl({left:e,right:t,typeName:pr.ZodIntersection,...bn(r)});class Ks extends _n{_parse(t){const{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==Yt.array)return Kt(n,{code:Rt.invalid_type,expected:Yt.array,received:n.parsedType}),_r;if(n.data.lengththis._def.items.length&&(Kt(n,{code:Rt.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());const a=[...n.data].map((i,s)=>{const o=this._def.items[s]||this._def.rest;return o?o._parse(new Zs(n,i,n.path,s)):null}).filter(i=>!!i);return n.common.async?Promise.all(a).then(i=>$a.mergeArray(r,i)):$a.mergeArray(r,a)}get items(){return this._def.items}rest(t){return new Ks({...this._def,rest:t})}}Ks.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Ks({items:e,typeName:pr.ZodTuple,rest:null,...bn(t)})};class Il extends _n{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==Yt.object)return Kt(n,{code:Rt.invalid_type,expected:Yt.object,received:n.parsedType}),_r;const a=[],i=this._def.keyType,s=this._def.valueType;for(const o in n.data)a.push({key:i._parse(new Zs(n,o,n.path,o)),value:s._parse(new Zs(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?$a.mergeObjectAsync(r,a):$a.mergeObjectSync(r,a)}get element(){return this._def.valueType}static create(t,r,n){return r instanceof _n?new Il({keyType:t,valueType:r,typeName:pr.ZodRecord,...bn(n)}):new Il({keyType:Gi.create(),valueType:t,typeName:pr.ZodRecord,...bn(r)})}}class pp extends _n{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==Yt.map)return Kt(n,{code:Rt.invalid_type,expected:Yt.map,received:n.parsedType}),_r;const a=this._def.keyType,i=this._def.valueType,s=[...n.data.entries()].map(([o,c],d)=>({key:a._parse(new Zs(n,o,n.path,[d,"key"])),value:i._parse(new Zs(n,c,n.path,[d,"value"]))}));if(n.common.async){const o=new Map;return Promise.resolve().then(async()=>{for(const c of s){const d=await c.key,l=await c.value;if(d.status==="aborted"||l.status==="aborted")return _r;(d.status==="dirty"||l.status==="dirty")&&r.dirty(),o.set(d.value,l.value)}return{status:r.value,value:o}})}else{const o=new Map;for(const c of s){const d=c.key,l=c.value;if(d.status==="aborted"||l.status==="aborted")return _r;(d.status==="dirty"||l.status==="dirty")&&r.dirty(),o.set(d.value,l.value)}return{status:r.value,value:o}}}}pp.create=(e,t,r)=>new pp({valueType:t,keyType:e,typeName:pr.ZodMap,...bn(r)});class Rf extends _n{_parse(t){const{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==Yt.set)return Kt(n,{code:Rt.invalid_type,expected:Yt.set,received:n.parsedType}),_r;const a=this._def;a.minSize!==null&&n.data.sizea.maxSize.value&&(Kt(n,{code:Rt.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),r.dirty());const i=this._def.valueType;function s(c){const d=new Set;for(const l of c){if(l.status==="aborted")return _r;l.status==="dirty"&&r.dirty(),d.add(l.value)}return{status:r.value,value:d}}const o=[...n.data.values()].map((c,d)=>i._parse(new Zs(n,c,n.path,d)));return n.common.async?Promise.all(o).then(c=>s(c)):s(o)}min(t,r){return new Rf({...this._def,minSize:{value:t,message:ir.toString(r)}})}max(t,r){return new Rf({...this._def,maxSize:{value:t,message:ir.toString(r)}})}size(t,r){return this.min(t,r).max(t,r)}nonempty(t){return this.min(1,t)}}Rf.create=(e,t)=>new Rf({valueType:e,minSize:null,maxSize:null,typeName:pr.ZodSet,...bn(t)});class Nd extends _n{constructor(){super(...arguments),this.validate=this.implement}_parse(t){const{ctx:r}=this._processInputParams(t);if(r.parsedType!==Yt.function)return Kt(r,{code:Rt.invalid_type,expected:Yt.function,received:r.parsedType}),_r;function n(o,c){return cp({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,op(),Id].filter(d=>!!d),issueData:{code:Rt.invalid_arguments,argumentsError:c}})}function a(o,c){return cp({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,op(),Id].filter(d=>!!d),issueData:{code:Rt.invalid_return_type,returnTypeError:c}})}const i={errorMap:r.common.contextualErrorMap},s=r.data;if(this._def.returns instanceof Rd){const o=this;return Ya(async function(...c){const d=new bi([]),l=await o._def.args.parseAsync(c,i).catch(M=>{throw d.addIssue(n(c,M)),d}),y=await Reflect.apply(s,this,l);return await o._def.returns._def.type.parseAsync(y,i).catch(M=>{throw d.addIssue(a(y,M)),d})})}else{const o=this;return Ya(function(...c){const d=o._def.args.safeParse(c,i);if(!d.success)throw new bi([n(c,d.error)]);const l=Reflect.apply(s,this,d.data),y=o._def.returns.safeParse(l,i);if(!y.success)throw new bi([a(l,y.error)]);return y.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new Nd({...this._def,args:Ks.create(t).rest(Nf.create())})}returns(t){return new Nd({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,r,n){return new Nd({args:t||Ks.create([]).rest(Nf.create()),returns:r||Nf.create(),typeName:pr.ZodFunction,...bn(n)})}}class Cl extends _n{get schema(){return this._def.getter()}_parse(t){const{ctx:r}=this._processInputParams(t);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}}Cl.create=(e,t)=>new Cl({getter:e,typeName:pr.ZodLazy,...bn(t)});class Ol extends _n{_parse(t){if(t.data!==this._def.value){const r=this._getOrReturnCtx(t);return Kt(r,{received:r.data,code:Rt.invalid_literal,expected:this._def.value}),_r}return{status:"valid",value:t.data}}get value(){return this._def.value}}Ol.create=(e,t)=>new Ol({value:e,typeName:pr.ZodLiteral,...bn(t)});function vw(e,t){return new Ic({values:e,typeName:pr.ZodEnum,...bn(t)})}class Ic extends _n{constructor(){super(...arguments),wl.set(this,void 0)}_parse(t){if(typeof t.data!="string"){const r=this._getOrReturnCtx(t),n=this._def.values;return Kt(r,{expected:kn.joinValues(n),received:r.parsedType,code:Rt.invalid_type}),_r}if(dp(this,wl)||bw(this,wl,new Set(this._def.values)),!dp(this,wl).has(t.data)){const r=this._getOrReturnCtx(t),n=this._def.values;return Kt(r,{received:r.data,code:Rt.invalid_enum_value,options:n}),_r}return Ya(t.data)}get options(){return this._def.values}get enum(){const t={};for(const r of this._def.values)t[r]=r;return t}get Values(){const t={};for(const r of this._def.values)t[r]=r;return t}get Enum(){const t={};for(const r of this._def.values)t[r]=r;return t}extract(t,r=this._def){return Ic.create(t,{...this._def,...r})}exclude(t,r=this._def){return Ic.create(this.options.filter(n=>!t.includes(n)),{...this._def,...r})}}wl=new WeakMap,Ic.create=vw;class Nl extends _n{constructor(){super(...arguments),El.set(this,void 0)}_parse(t){const r=kn.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(t);if(n.parsedType!==Yt.string&&n.parsedType!==Yt.number){const a=kn.objectValues(r);return Kt(n,{expected:kn.joinValues(a),received:n.parsedType,code:Rt.invalid_type}),_r}if(dp(this,El)||bw(this,El,new Set(kn.getValidEnumValues(this._def.values))),!dp(this,El).has(t.data)){const a=kn.objectValues(r);return Kt(n,{received:n.data,code:Rt.invalid_enum_value,options:a}),_r}return Ya(t.data)}get enum(){return this._def.values}}El=new WeakMap,Nl.create=(e,t)=>new Nl({values:e,typeName:pr.ZodNativeEnum,...bn(t)});class Rd extends _n{unwrap(){return this._def.type}_parse(t){const{ctx:r}=this._processInputParams(t);if(r.parsedType!==Yt.promise&&r.common.async===!1)return Kt(r,{code:Rt.invalid_type,expected:Yt.promise,received:r.parsedType}),_r;const n=r.parsedType===Yt.promise?r.data:Promise.resolve(r.data);return Ya(n.then(a=>this._def.type.parseAsync(a,{path:r.path,errorMap:r.common.contextualErrorMap})))}}Rd.create=(e,t)=>new Rd({type:e,typeName:pr.ZodPromise,...bn(t)});class Yi extends _n{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===pr.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){const{status:r,ctx:n}=this._processInputParams(t),a=this._def.effect||null,i={addIssue:s=>{Kt(n,s),s.fatal?r.abort():r.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),a.type==="preprocess"){const s=a.transform(n.data,i);if(n.common.async)return Promise.resolve(s).then(async o=>{if(r.value==="aborted")return _r;const c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?_r:c.status==="dirty"||r.value==="dirty"?fp(c.value):c});{if(r.value==="aborted")return _r;const o=this._def.schema._parseSync({data:s,path:n.path,parent:n});return o.status==="aborted"?_r:o.status==="dirty"||r.value==="dirty"?fp(o.value):o}}if(a.type==="refinement"){const s=o=>{const c=a.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){const o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?_r:(o.status==="dirty"&&r.dirty(),s(o.value),{status:r.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?_r:(o.status==="dirty"&&r.dirty(),s(o.value).then(()=>({status:r.value,value:o.value}))))}if(a.type==="transform")if(n.common.async===!1){const s=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!_l(s))return s;const o=a.transform(s.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(s=>_l(s)?Promise.resolve(a.transform(s.value,i)).then(o=>({status:r.value,value:o})):s);kn.assertNever(a)}}Yi.create=(e,t,r)=>new Yi({schema:e,typeName:pr.ZodEffects,effect:t,...bn(r)}),Yi.createWithPreprocess=(e,t,r)=>new Yi({schema:t,effect:{type:"preprocess",transform:e},typeName:pr.ZodEffects,...bn(r)});class Gs extends _n{_parse(t){return this._getType(t)===Yt.undefined?Ya(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}Gs.create=(e,t)=>new Gs({innerType:e,typeName:pr.ZodOptional,...bn(t)});class Cc extends _n{_parse(t){return this._getType(t)===Yt.null?Ya(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}Cc.create=(e,t)=>new Cc({innerType:e,typeName:pr.ZodNullable,...bn(t)});class Rl extends _n{_parse(t){const{ctx:r}=this._processInputParams(t);let n=r.data;return r.parsedType===Yt.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}}Rl.create=(e,t)=>new Rl({innerType:e,typeName:pr.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...bn(t)});class Ml extends _n{_parse(t){const{ctx:r}=this._processInputParams(t),n={...r,common:{...r.common,issues:[]}},a=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return vl(a)?a.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new bi(n.common.issues)},input:n.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new bi(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}}Ml.create=(e,t)=>new Ml({innerType:e,typeName:pr.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...bn(t)});class bp extends _n{_parse(t){if(this._getType(t)!==Yt.nan){const r=this._getOrReturnCtx(t);return Kt(r,{code:Rt.invalid_type,expected:Yt.nan,received:r.parsedType}),_r}return{status:"valid",value:t.data}}}bp.create=e=>new bp({typeName:pr.ZodNaN,...bn(e)});const jB=Symbol("zod_brand");class Lg extends _n{_parse(t){const{ctx:r}=this._processInputParams(t),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}}class Bl extends _n{_parse(t){const{status:r,ctx:n}=this._processInputParams(t);if(n.common.async)return(async()=>{const a=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?_r:a.status==="dirty"?(r.dirty(),fp(a.value)):this._def.out._parseAsync({data:a.value,path:n.path,parent:n})})();{const a=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?_r:a.status==="dirty"?(r.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:n.path,parent:n})}}static create(t,r){return new Bl({in:t,out:r,typeName:pr.ZodPipeline})}}class Pl extends _n{_parse(t){const r=this._def.innerType._parse(t),n=a=>(_l(a)&&(a.value=Object.freeze(a.value)),a);return vl(r)?r.then(a=>n(a)):n(r)}unwrap(){return this._def.innerType}}Pl.create=(e,t)=>new Pl({innerType:e,typeName:pr.ZodReadonly,...bn(t)});function ww(e,t={},r){return e?Cd.create().superRefine((n,a)=>{var i,s;if(!e(n)){const o=typeof t=="function"?t(n):typeof t=="string"?{message:t}:t,c=(s=(i=o.fatal)!==null&&i!==void 0?i:r)!==null&&s!==void 0?s:!0,d=typeof o=="string"?{message:o}:o;a.addIssue({code:"custom",...d,fatal:c})}}):Cd.create()}const $B={object:ca.lazycreate};var pr;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(pr||(pr={}));const VB=(e,t={message:`Input not instance of ${e.name}`})=>ww(r=>r instanceof e,t),Ew=Gi.create,xw=Tc.create,zB=bp.create,qB=Sc.create,Aw=xl.create,ZB=Of.create,KB=up.create,GB=Al.create,WB=Tl.create,YB=Cd.create,JB=Nf.create,XB=Po.create,QB=lp.create,eP=Wi.create,tP=ca.create,rP=ca.strictCreate,nP=Sl.create,aP=hp.create,iP=kl.create,sP=Ks.create,oP=Il.create,cP=pp.create,fP=Rf.create,dP=Nd.create,uP=Cl.create,lP=Ol.create,hP=Ic.create,pP=Nl.create,bP=Rd.create,Tw=Yi.create,gP=Gs.create,mP=Cc.create,yP=Yi.createWithPreprocess,_P=Bl.create;var Nt=Object.freeze({__proto__:null,defaultErrorMap:Id,setErrorMap:AB,getErrorMap:op,makeIssue:cp,EMPTY_PATH:TB,addIssueToContext:Kt,ParseStatus:$a,INVALID:_r,DIRTY:fp,OK:Ya,isAborted:Mg,isDirty:Bg,isValid:_l,isAsync:vl,get util(){return kn},get objectUtil(){return Rg},ZodParsedType:Yt,getParsedType:Ac,ZodType:_n,datetimeRegex:_w,ZodString:Gi,ZodNumber:Tc,ZodBigInt:Sc,ZodBoolean:xl,ZodDate:Of,ZodSymbol:up,ZodUndefined:Al,ZodNull:Tl,ZodAny:Cd,ZodUnknown:Nf,ZodNever:Po,ZodVoid:lp,ZodArray:Wi,ZodObject:ca,ZodUnion:Sl,ZodDiscriminatedUnion:hp,ZodIntersection:kl,ZodTuple:Ks,ZodRecord:Il,ZodMap:pp,ZodSet:Rf,ZodFunction:Nd,ZodLazy:Cl,ZodLiteral:Ol,ZodEnum:Ic,ZodNativeEnum:Nl,ZodPromise:Rd,ZodEffects:Yi,ZodTransformer:Yi,ZodOptional:Gs,ZodNullable:Cc,ZodDefault:Rl,ZodCatch:Ml,ZodNaN:bp,BRAND:jB,ZodBranded:Lg,ZodPipeline:Bl,ZodReadonly:Pl,custom:ww,Schema:_n,ZodSchema:_n,late:$B,get ZodFirstPartyTypeKind(){return pr},coerce:{string:e=>Gi.create({...e,coerce:!0}),number:e=>Tc.create({...e,coerce:!0}),boolean:e=>xl.create({...e,coerce:!0}),bigint:e=>Sc.create({...e,coerce:!0}),date:e=>Of.create({...e,coerce:!0})},any:YB,array:eP,bigint:qB,boolean:Aw,date:ZB,discriminatedUnion:aP,effect:Tw,enum:hP,function:dP,instanceof:VB,intersection:iP,lazy:uP,literal:lP,map:cP,nan:zB,nativeEnum:pP,never:XB,null:WB,nullable:mP,number:xw,object:tP,oboolean:()=>Aw().optional(),onumber:()=>xw().optional(),optional:gP,ostring:()=>Ew().optional(),pipeline:_P,preprocess:yP,promise:bP,record:oP,set:fP,strictObject:rP,string:Ew,symbol:KB,transformer:Tw,tuple:sP,undefined:GB,union:nP,unknown:JB,void:QB,NEVER:_r,ZodIssueCode:Rt,quotelessJson:xB,ZodError:bi});const Sw=/^0x[0-9a-f]+$/i,kw=/^\d+$/,vP=Nt.string().min(1,"The short string cannot be empty").max(31,"The short string cannot exceed 31 characters").refine(e=>!Sw.test(e),"The shortString should not be a hex string").refine(e=>!kw.test(e),"The shortString should not be an integer string"),Ni=Nt.union([Nt.string().regex(Sw,"Only hex, integers and bigint are supported in calldata"),Nt.string().regex(kw,"Only hex, integers and bigint are supported in calldata"),vP,Nt.number().int("Only hex, integers and bigint are supported in calldata"),Nt.bigint()]),gp=Nt.object({contractAddress:Nt.string(),entrypoint:Nt.string(),calldata:Nt.array(Ni.or(Nt.array(Ni))).optional()}),Ug=Nt.array(gp).nonempty(),wP=Nt.object({types:Nt.record(Nt.array(Nt.union([Nt.object({name:Nt.string(),type:Nt.literal("merkletree"),contains:Nt.string()}),Nt.object({name:Nt.string(),type:Nt.literal("enum"),contains:Nt.string()}),Nt.object({name:Nt.string(),type:Nt.string()})]))),primaryType:Nt.string(),domain:Nt.record(Nt.unknown()),message:Nt.record(Nt.unknown())}),Fg=Nt.object({type:Nt.literal("ERC20"),options:Nt.object({address:Nt.string(),symbol:Nt.string().optional(),decimals:Nt.number().optional(),image:Nt.string().optional(),name:Nt.string().optional()})}),Iw=Nt.union([Nt.object({id:Nt.string(),chain_id:Nt.string(),chain_name:Nt.string(),rpc_urls:Nt.array(Nt.string()).optional(),native_currency:Fg.optional(),block_explorer_url:Nt.array(Nt.string()).optional()}),Nt.object({id:Nt.string(),chainId:Nt.string(),chainName:Nt.string(),rpcUrls:Nt.array(Nt.string()).optional(),nativeCurrency:Fg.optional(),blockExplorerUrl:Nt.array(Nt.string()).optional()}).transform(e=>({id:e.id,chain_id:e.chainId,chain_name:e.chainName,rpc_urls:e.rpcUrls,native_currency:e.nativeCurrency,block_explorer_url:e.blockExplorerUrl}))]),Hg={enable:Nt.tuple([Nt.object({starknetVersion:Nt.union([Nt.literal("v3"),Nt.literal("v4"),Nt.literal("v5")]).optional()}).optional()]).or(Nt.tuple([])),addStarknetChain:Nt.tuple([Iw]),switchStarknetChain:Nt.tuple([Nt.object({chainId:Nt.string()})]),watchAsset:Nt.tuple([Fg]),requestAccounts:Nt.tuple([Nt.object({silent_mode:Nt.boolean().optional()})]),execute:Nt.tuple([Ug.or(gp),Nt.object({nonce:Ni.optional(),maxFee:Ni.optional(),version:Ni.optional()}).optional()]),signMessage:Nt.tuple([wP])},AQ={execute:Nt.tuple([Ug.or(gp),Nt.object({nonce:Ni.optional(),maxFee:Ni.optional(),version:Ni.optional()}).optional()]).or(Nt.tuple([Ug.or(gp),Nt.array(Nt.any()).optional(),Nt.object({nonce:Ni.optional(),maxFee:Ni.optional(),version:Ni.optional()}).optional()]))},EP=Nt.object({contract_address:Nt.string(),entry_point:Nt.string(),calldata:Nt.array(Ni).optional()}).transform(({contract_address:e,entry_point:t,calldata:r})=>({contractAddress:e,entrypoint:t,calldata:r||[]})),xP=Nt.array(EP).nonempty(),AP={ZERO:0,ONE:1},TQ=Nt.object({address:Nt.string(),class_hash:Nt.string(),salt:Nt.string(),calldata:Nt.array(Nt.string()),sigdata:Nt.array(Nt.string()).optional(),version:Nt.nativeEnum(AP)});function TP(e){return e}function SP(e){return e.length===0?TP:e.length===1?e[0]:function(r){return e.reduce((n,a)=>a(n),r)}}function SQ(e){return typeof e=="object"&&e!==null&&"subscribe"in e}function jg(e){const t={subscribe(r){let n=null,a=!1,i=!1,s=!1;function o(){if(n===null){s=!0;return}i||(i=!0,typeof n=="function"?n():n&&n.unsubscribe())}return n=e({next(c){a||r.next?.(c)},error(c){a||(a=!0,r.error?.(c),o())},complete(){a||(a=!0,r.complete?.(),o())}}),s&&o(),{unsubscribe:o}},pipe(...r){return SP(r)(t)}};return t}function kP(e){return t=>{let r=0,n=null;const a=[];function i(){n||(n=t.subscribe({next(o){for(const c of a)c.next?.(o)},error(o){for(const c of a)c.error?.(o)},complete(){for(const o of a)o.complete?.()}}))}function s(){if(r===0&&n){const o=n;n=null,o.unsubscribe()}}return{subscribe(o){return r++,a.push(o),i(),{unsubscribe(){r--,s();const c=a.findIndex(d=>d===o);c>-1&&a.splice(c,1)}}}}}}function kQ(e){return t=>({subscribe(r){let n=0;return t.subscribe({next(i){r.next?.(e(i,n++))},error(i){r.error?.(i)},complete(){r.complete?.()}})}})}function IQ(e){return t=>({subscribe(r){return t.subscribe({next(n){e.next?.(n),r.next?.(n)},error(n){e.error?.(n),r.error?.(n)},complete(){e.complete?.(),r.complete?.()}})}})}class $g extends Error{constructor(t){super(t),this.name="ObservableAbortError",Object.setPrototypeOf(this,$g.prototype)}}function IP(e){let t;return{promise:new Promise((n,a)=>{let i=!1;function s(){i||(i=!0,a(new $g("This operation was aborted.")),o.unsubscribe())}const o=e.subscribe({next(c){i=!0,n(c),s()},error(c){i=!0,a(c),s()},complete(){i=!0,s()}});t=s}),abort:t}}function Cw(e){return jg(t=>{function r(a=0,i=e.op){const s=e.links[a];if(!s)throw new Error("No more links to execute - did you forget to add an ending link?");return s({op:i,next(c){return r(a+1,c)}})}return r().subscribe(t)})}function Ow(e){return Array.isArray(e)?e:[e]}function CQ(e){return t=>{const r=Ow(e.true).map(a=>a(t)),n=Ow(e.false).map(a=>a(t));return a=>observable(i=>{const s=e.condition(a.op)?r:n;return Cw({op:a.op,links:s}).subscribe(i)})}}function Nw(e){const t=Object.create(null);for(const r in e){const n=e[r];t[n]=r}return t}const Rw={PARSE_ERROR:-32700,BAD_REQUEST:-32600,INTERNAL_SERVER_ERROR:-32603,NOT_IMPLEMENTED:-32603,UNAUTHORIZED:-32001,FORBIDDEN:-32003,NOT_FOUND:-32004,METHOD_NOT_SUPPORTED:-32005,TIMEOUT:-32008,CONFLICT:-32009,PRECONDITION_FAILED:-32012,PAYLOAD_TOO_LARGE:-32013,UNPROCESSABLE_CONTENT:-32022,TOO_MANY_REQUESTS:-32029,CLIENT_CLOSED_REQUEST:-32099},OQ=Nw(Rw),CP=Nw(Rw),OP={PARSE_ERROR:400,BAD_REQUEST:400,UNAUTHORIZED:401,NOT_FOUND:404,FORBIDDEN:403,METHOD_NOT_SUPPORTED:405,TIMEOUT:408,CONFLICT:409,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,UNPROCESSABLE_CONTENT:422,TOO_MANY_REQUESTS:429,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501};function Mw(e){return OP[e]??500}function NQ(e){const t=Array.isArray(e)?e:[e],r=new Set(t.map(a=>{if("error"in a){const i=a.error.data;if(typeof i.httpStatus=="number")return i.httpStatus;const s=CP[a.error.code];return Mw(s)}return 200}));return r.size!==1?207:r.values().next().value}function RQ(e){return Mw(e.code)}const Bw=()=>{};function Pw(e,t){return new Proxy(Bw,{get(n,a){if(!(typeof a!="string"||a==="then"))return Pw(e,[...t,a])},apply(n,a,i){const s=t[t.length-1]==="apply";return e({args:s?i.length>=2?i[1]:[]:i,path:s?t.slice(0,-1):t})}})}const NP=e=>Pw(e,[]),RP=e=>new Proxy(Bw,{get(t,r){if(!(typeof r!="string"||r==="then"))return e(r)}});function MQ(e){const{path:t,error:r,config:n}=e,{code:a}=e.error,i={message:r.message,code:TRPC_ERROR_CODES_BY_KEY[a],data:{code:a,httpStatus:getHTTPStatusCodeFromError(r)}};return n.isDev&&typeof e.error.stack=="string"&&(i.data.stack=e.error.stack),typeof t=="string"&&(i.data.path=t),n.errorFormatter({...e,shape:i})}function Dw(e,t){return"error"in t?{...t,error:e.transformer.output.serialize(t.error)}:"data"in t.result?{...t,result:{...t.result,data:e.transformer.output.serialize(t.result.data)}}:t}function BQ(e,t){return Array.isArray(t)?t.map(r=>Dw(e,r)):Dw(e,t)}function MP(e){return!!e&&!Array.isArray(e)&&typeof e=="object"}class BP extends Error{}function PP(e){if(e instanceof Error)return e;const t=typeof e;if(!(t==="undefined"||t==="function"||e===null)){if(t!=="object")return new Error(String(e));if(MP(e)){const r=new BP;for(const n in e)r[n]=e[n];return r}}}function mp(e){return!!e&&!Array.isArray(e)&&typeof e=="object"}function DP(e,t){if("error"in e){const n=t.transformer.deserialize(e.error);return{ok:!1,error:{...e,error:n}}}return{ok:!0,result:{...e.result,...(!e.result.type||e.result.type==="data")&&{type:"data",data:t.transformer.deserialize(e.result.data)}}}}class Vg extends Error{constructor(){super("Unable to transform response from server")}}function Lw(e,t){let r;try{r=DP(e,t)}catch{throw new Vg}if(!r.ok&&(!mp(r.error.error)||typeof r.error.error.code!="number"))throw new Vg;if(r.ok&&!mp(r.result))throw new Vg;return r}function LP(e){return e instanceof Ri||e instanceof Error&&e.name==="TRPCClientError"}function UP(e){return mp(e)&&mp(e.error)&&typeof e.error.code=="number"&&typeof e.error.message=="string"}class Ri extends Error{static from(t,r={}){const n=t;return LP(n)?(r.meta&&(n.meta={...n.meta,...r.meta}),n):UP(n)?new Ri(n.error.message,{...r,result:n}):n instanceof Error?new Ri(n.message,{...r,cause:PP(n)}):new Ri("Unknown error",{...r,cause:n})}constructor(t,r){const n=r?.cause;super(t,{cause:n}),this.meta=r?.meta,this.cause=n,this.shape=r?.result?.error,this.data=r?.result?.error.data,this.name="TRPCClientError",Object.setPrototypeOf(this,Ri.prototype)}}const Uw=e=>typeof e=="function";function FP(e){if(e)return e;if(typeof window<"u"&&Uw(window.fetch))return window.fetch;if(typeof globalThis<"u"&&Uw(globalThis.fetch))return globalThis.fetch;throw new Error("No fetch implementation found")}function HP(e){return e||(typeof window<"u"&&window.AbortController?window.AbortController:typeof globalThis<"u"&&globalThis.AbortController?globalThis.AbortController:null)}function Fw(e){return{url:e.url.toString().replace(/\/$/,""),fetch:e.fetch,AbortController:HP(e.AbortController)}}function jP(e){const t={};for(let r=0;re.runtime.transformer.serialize(t)))}const zg=e=>{let t=e.url+"/"+e.path;const r=[];if("inputs"in e&&r.push("batch=1"),e.type==="query"){const n=Hw(e);n!==void 0&&r.push(`input=${encodeURIComponent(JSON.stringify(n))}`)}return r.length&&(t+="?"+r.join("&")),t},jw=e=>{if(e.type==="query")return;const t=Hw(e);return t!==void 0?JSON.stringify(t):void 0},$w=e=>zw({...e,contentTypeHeader:"application/json",getUrl:zg,getBody:jw});async function Vw(e,t){const r=e.getUrl(e),n=e.getBody(e),{type:a}=e,i=await e.headers();/* istanbul ignore if -- @preserve */if(a==="subscription")throw new Error("Subscriptions should use wsLink");const s={...e.contentTypeHeader?{"content-type":e.contentTypeHeader}:{},...e.batchModeHeader?{"trpc-batch-mode":e.batchModeHeader}:{},...i};return FP(e.fetch)(r,{method:$P[a],signal:t?.signal,body:n,headers:s})}function zw(e){const t=e.AbortController?new e.AbortController:null,r={};let n=!1;return{promise:new Promise((s,o)=>{Vw(e,t).then(c=>(r.response=c,n=!0,c.json())).then(c=>{r.responseJSON=c,s({json:c,meta:r})}).catch(c=>{n=!0,o(Ri.from(c,{meta:r}))})}),cancel:()=>{n||t?.abort()}}}const qg=()=>{throw new Error("Something went wrong. Please submit an issue at https://github.com/trpc/trpc/issues/new")};function Zg(e){let t=null,r=null;const n=()=>{clearTimeout(r),r=null,t=null};function a(o){const c=[[]];let d=0;for(;;){const l=o[d];if(!l)break;const y=c[c.length-1];if(l.aborted){l.reject?.(new Error("Aborted")),d++;continue}if(e.validate(y.concat(l).map(j=>j.key))){y.push(l),d++;continue}if(y.length===0){l.reject?.(new Error("Input is too big for a single dispatch")),d++;continue}c.push([])}return c}function i(){const o=a(t);n();for(const c of o){if(!c.length)continue;const d={items:c,cancel:qg};for(const j of c)j.batch=d;const l=(j,G)=>{const $=d.items[j];$.resolve?.(G),$.batch=null,$.reject=null,$.resolve=null},{promise:y,cancel:M}=e.fetch(d.items.map(j=>j.key),l);d.cancel=M,y.then(j=>{for(let G=0;G{for(const G of d.items)G.reject?.(j),G.batch=null})}}function s(o){const c={aborted:!1,key:o,batch:null,resolve:qg,reject:qg},d=new Promise((y,M)=>{c.reject=M,c.resolve=y,t||(t=[]),t.push(c)});return r||(r=setTimeout(i)),{promise:d,cancel:()=>{c.aborted=!0,c.batch?.items.every(y=>y.aborted)&&(c.batch.cancel(),c.batch=null)}}}return{load:s}}function qw(e){return function(r){const n=Fw(r),a=r.maxURLLength??1/0;return i=>{const s=y=>{const M=G=>{if(a===1/0)return!0;const $=G.map(Oe=>Oe.path).join(","),fe=G.map(Oe=>Oe.input);return zg({...n,runtime:i,type:y,path:$,inputs:fe}).length<=a},j=e({...n,runtime:i,type:y,opts:r});return{validate:M,fetch:j}},o=Zg(s("query")),c=Zg(s("mutation")),d=Zg(s("subscription")),l={query:o,subscription:d,mutation:c};return({op:y})=>jg(M=>{const j=l[y.type],{promise:G,cancel:$}=j.load(y);let fe;return G.then(he=>{fe=he;const Oe=Lw(he.json,i);if(!Oe.ok){M.error(Ri.from(Oe.error,{meta:he.meta}));return}M.next({context:he.meta,result:Oe.result}),M.complete()}).catch(he=>{M.error(Ri.from(he,{meta:fe?.meta}))}),()=>{$()}})}}}const DQ=qw(e=>t=>{const r=t.map(s=>s.path).join(","),n=t.map(s=>s.input),{promise:a,cancel:i}=$w({...e,path:r,inputs:n,headers(){return e.opts.headers?typeof e.opts.headers=="function"?e.opts.headers({opList:t}):e.opts.headers:{}}});return{promise:a.then(s=>(Array.isArray(s.json)?s.json:t.map(()=>s.json)).map(d=>({meta:s.meta,json:d}))),cancel:i}});function Zw(e){return t=>{const r=Fw(t);return n=>({op:a})=>jg(i=>{const{path:s,input:o,type:c}=a,{promise:d,cancel:l}=e.requester({...r,runtime:n,type:c,path:s,input:o,headers(){return t.headers?typeof t.headers=="function"?t.headers({op:a}):t.headers:{}}});let y;return d.then(M=>{y=M.meta;const j=Lw(M.json,n);if(!j.ok){i.error(Ri.from(j.error,{meta:y}));return}i.next({context:M.meta,result:j.result}),i.complete()}).catch(M=>{i.error(Ri.from(M,{meta:y}))}),()=>{l()}})}}const LQ=Zw({requester:$w});function VP(e){return typeof FormData>"u"?!1:e instanceof FormData}const Kg={css:{query:["72e3ff","3fb0d8"],mutation:["c5a3fc","904dfc"],subscription:["ff49e1","d83fbe"]},ansi:{regular:{query:["\x1B[30;46m","\x1B[97;46m"],mutation:["\x1B[30;45m","\x1B[97;45m"],subscription:["\x1B[30;42m","\x1B[97;42m"]},bold:{query:["\x1B[1;30;46m","\x1B[1;97;46m"],mutation:["\x1B[1;30;45m","\x1B[1;97;45m"],subscription:["\x1B[1;30;42m","\x1B[1;97;42m"]}}};function zP(e){const{direction:t,type:r,path:n,id:a,input:i}=e,s=[],o=[];if(e.colorMode==="ansi"){const[y,M]=Kg.ansi.regular[r],[j,G]=Kg.ansi.bold[r];return s.push(t==="up"?y:M,t==="up"?">>":"<<",r,t==="up"?j:G,`#${a}`,n,"\x1B[0m"),t==="up"?o.push({input:e.input}):o.push({input:e.input,result:"result"in e.result?e.result.result:e.result,elapsedMs:e.elapsedMs}),{parts:s,args:o}}const[c,d]=Kg.css[r],l=` + background-color: #${t==="up"?c:d}; + color: ${t==="up"?"black":"white"}; + padding: 2px; + `;return s.push("%c",t==="up"?">>":"<<",r,`#${a}`,`%c${n}%c`,"%O"),o.push(l,`${l}; font-weight: bold;`,`${l}; font-weight: normal;`),t==="up"?o.push({input:i,context:e.context}):o.push({input:i,result:e.result,elapsedMs:e.elapsedMs,context:e.context}),{parts:s,args:o}}const qP=({c:e=console,colorMode:t="css"})=>r=>{const n=r.input,a=VP(n)?Object.fromEntries(n):n,{parts:i,args:s}=zP({...r,colorMode:t,input:a}),o=r.direction==="down"&&r.result&&(r.result instanceof Error||"error"in r.result.result)?"error":"log";e[o].apply(null,[i.join(" ")].concat(s))};function UQ(e={}){const{enabled:t=()=>!0}=e,r=e.colorMode??(typeof window>"u"?"ansi":"css"),{logger:n=qP({c:e.console,colorMode:r})}=e;return()=>({op:a,next:i})=>observable(s=>{t({...a,direction:"up"})&&n({...a,direction:"up"});const o=Date.now();function c(d){const l=Date.now()-o;t({...a,direction:"down",result:d})&&n({...a,direction:"down",elapsedMs:l,result:d})}return i(a).pipe(tap({next(d){c(d)},error(d){c(d)}})).subscribe(s)})}/* istanbul ignore next -- @preserve */const ZP=e=>e===0?0:Math.min(1e3*2**e,3e4);function FQ(e){const{url:t,WebSocket:r=WebSocket,retryDelayMs:n=ZP,onOpen:a,onClose:i}=e;/* istanbul ignore next -- @preserve */if(!r)throw new Error("No WebSocket implementation found - you probably don't want to use this on the server, but if you do you need to pass a `WebSocket`-ponyfill");let s=[];const o=Object.create(null);let c=0,d=null,l=null,y=et(),M="connecting";function j(){M!=="open"||d||(d=setTimeout(()=>{d=null,s.length===1?y.send(JSON.stringify(s.pop())):y.send(JSON.stringify(s)),s=[]}))}function G(){if(l!==null||M==="closed")return;const tt=n(c++);fe(tt)}function $(){M="connecting";const tt=y;y=et(),he(tt)}function fe(tt){l||(M="connecting",l=setTimeout($,tt))}function he(tt){Object.values(o).some(Y=>Y.ws===tt)||tt.close()}function Oe(){Object.values(o).forEach(tt=>{tt.type==="subscription"&&tt.callbacks.complete()})}function We(tt){s.some(He=>He.id===tt.op.id)||ht(tt.op,tt.callbacks)}function et(){const tt=typeof t=="function"?t():t,He=new r(tt);clearTimeout(l),l=null,He.addEventListener("open",()=>{/* istanbul ignore next -- @preserve */He===y&&(c=0,M="open",a?.(),j())}),He.addEventListener("error",()=>{He===y&&G()});const Y=me=>{if(me.method==="reconnect"&&He===y){M==="open"&&i?.(),$();for(const Ne of Object.values(o))Ne.type==="subscription"&&We(Ne)}},ve=me=>{const Ne=me.id!==null&&o[me.id];if(Ne){if(Ne.callbacks.next?.(me),Ne.ws!==y&&He===y){const qe=Ne.ws;Ne.ws=y,he(qe)}"result"in me&&me.result.type==="stopped"&&He===y&&Ne.callbacks.complete()}};return He.addEventListener("message",({data:me})=>{const Ne=JSON.parse(me);"method"in Ne?Y(Ne):ve(Ne),(He!==y||M==="closed")&&he(He)}),He.addEventListener("close",({code:me})=>{M==="open"&&i?.({code:me}),y===He&&G();for(const[Ne,qe]of Object.entries(o))if(qe.ws===He){if(M==="closed"){delete o[Ne],qe.callbacks.complete?.();continue}qe.type==="subscription"?We(qe):(delete o[Ne],qe.callbacks.error?.(TRPCClientError.from(new Gg("WebSocket closed prematurely"))))}}),He}function ht(tt,He){const{type:Y,input:ve,path:me,id:Ne}=tt,qe={id:Ne,method:Y,params:{input:ve,path:me}};return o[Ne]={ws:y,type:Y,callbacks:He,op:tt},s.push(qe),j(),()=>{const Je=o[Ne]?.callbacks;delete o[Ne],s=s.filter(je=>je.id!==Ne),Je?.complete?.(),y.readyState===r.OPEN&&tt.type==="subscription"&&(s.push({id:Ne,method:"subscription.stop"}),j())}}return{close:()=>{M="closed",i?.(),Oe(),he(y),clearTimeout(l),l=null},request:ht,getConnection(){return y}}}class Gg extends Error{constructor(t){super(t),this.name="TRPCWebSocketClosedError",Object.setPrototypeOf(this,Gg.prototype)}}function HQ(e){return t=>{const{client:r}=e;return({op:n})=>observable(a=>{const{type:i,path:s,id:o,context:c}=n,d=t.transformer.serialize(n.input),l=r.request({type:i,path:s,input:d,id:o,context:c},{error(y){a.error(y),l()},complete(){a.complete()},next(y){const M=transformResult(y,t);if(!M.ok){a.error(TRPCClientError.from(M.error));return}a.next({result:M.result}),n.type!=="subscription"&&(l(),a.complete())}});return()=>{l()}})}}class Wg{$request({type:t,input:r,path:n,context:a={}}){return Cw({links:this.links,op:{id:++this.requestId,type:t,path:n,input:r,context:a}}).pipe(kP())}requestAsPromise(t){const r=this.$request(t),{promise:n,abort:a}=IP(r);return new Promise((s,o)=>{t.signal?.addEventListener("abort",a),n.then(c=>{s(c.result.data)}).catch(c=>{o(Ri.from(c))})})}query(t,r,n){return this.requestAsPromise({type:"query",path:t,input:r,context:n?.context,signal:n?.signal})}mutation(t,r,n){return this.requestAsPromise({type:"mutation",path:t,input:r,context:n?.context,signal:n?.signal})}subscription(t,r,n){return this.$request({type:"subscription",path:t,input:r,context:n?.context}).subscribe({next(i){i.result.type==="started"?n.onStarted?.():i.result.type==="stopped"?n.onStopped?.():n.onData?.(i.result.data)},error(i){n.onError?.(i)},complete(){n.onComplete?.()}})}constructor(t){this.requestId=0;const r=(()=>{const n=t.transformer;return n?"input"in n?t.transformer:{input:n,output:n}:{input:{serialize:a=>a,deserialize:a=>a},output:{serialize:a=>a,deserialize:a=>a}}})();this.runtime={transformer:{serialize:n=>r.input.serialize(n),deserialize:n=>r.output.deserialize(n)},combinedTransformer:r},this.links=t.links.map(n=>n(this.runtime))}}function jQ(e){return new Wg(e)}function $Q(e){return new Wg(e)}const KP={query:"query",mutate:"mutation",subscribe:"subscription"},GP=e=>KP[e];function WP(e){return RP(t=>e.hasOwnProperty(t)?e[t]:t==="__untypedClient"?e:NP(({path:r,args:n})=>{const a=[t,...r],i=GP(a.pop()),s=a.join(".");return e[i](s,...n)}))}function YP(e){const t=new Wg(e);return WP(t)}function VQ(e){return e.__untypedClient}function JP(e){if(e)return e;if(typeof window<"u"&&window.TextDecoder)return new window.TextDecoder;if(typeof globalThis<"u"&&globalThis.TextDecoder)return new globalThis.TextDecoder;throw new Error("No TextDecoder implementation found")}async function XP(e){const t=e.parse??JSON.parse,r=n=>{if(e.signal?.aborted||!n||n==="}")return;const a=n.indexOf(":"),i=n.substring(2,a-1),s=n.substring(a+1);e.onSingle(Number(i),t(s))};await QP(e.readableStream,r,e.textDecoder)}async function QP(e,t,r){let n="";const a=i=>{const o=r.decode(i).split(` +`);if(o.length===1)n+=o[0];else if(o.length>1){t(n+o[0]);for(let c=1;c{e.on("data",t),e.on("end",r)})}async function tD(e,t){const r=e.getReader();let n=await r.read();for(;!n.done;)t(n.value),n=await r.read()}const rD=(e,t)=>{const r=e.AbortController?new e.AbortController:null,n=Vw({...e,contentTypeHeader:"application/json",batchModeHeader:"stream",getUrl:zg,getBody:jw},r),a=()=>r?.abort(),i=n.then(async s=>{if(!s.body)throw new Error("Received response without body");const o={response:s};return XP({readableStream:s.body,onSingle:t,parse:c=>({json:JSON.parse(c),meta:o}),signal:r?.signal,textDecoder:e.textDecoder})});return{cancel:a,promise:i}},qQ=qw(e=>{const t=JP(e.opts.textDecoder);return(r,n)=>{const a=r.map(c=>c.path).join(","),i=r.map(c=>c.input),{cancel:s,promise:o}=rD({...e,textDecoder:t,path:a,inputs:i,headers(){return e.opts.headers?typeof e.opts.headers=="function"?e.opts.headers({opList:r}):e.opts.headers:{}}},(c,d)=>{n(c,d)});return{promise:o.then(()=>[]),cancel:s}}}),nD=e=>{if("input"in e){if(!(e.input instanceof FormData))throw new Error("Input is not FormData");return e.input}},KQ=Zw({requester:e=>{if(e.type!=="mutation")throw new Error("We only handle mutations with formdata");return zw({...e,getUrl(){return`${e.url}/${e.path}`},getBody:nD})}});var aD=fr(6201);class iD{constructor(){this.keyToValue=new Map,this.valueToKey=new Map}set(t,r){this.keyToValue.set(t,r),this.valueToKey.set(r,t)}getByKey(t){return this.keyToValue.get(t)}getByValue(t){return this.valueToKey.get(t)}clear(){this.keyToValue.clear(),this.valueToKey.clear()}}class Kw{constructor(t){this.generateIdentifier=t,this.kv=new iD}register(t,r){this.kv.getByValue(t)||(r||(r=this.generateIdentifier(t)),this.kv.set(r,t))}clear(){this.kv.clear()}getIdentifier(t){return this.kv.getByValue(t)}getValue(t){return this.kv.getByKey(t)}}class sD extends Kw{constructor(){super(t=>t.name),this.classToAllowedProps=new Map}register(t,r){typeof r=="object"?(r.allowProps&&this.classToAllowedProps.set(t,r.allowProps),super.register(t,r.identifier)):super.register(t,r)}getAllowedProps(t){return this.classToAllowedProps.get(t)}}function oD(e){if("values"in Object)return Object.values(e);const t=[];for(const r in e)e.hasOwnProperty(r)&&t.push(e[r]);return t}function cD(e,t){const r=oD(e);if("find"in r)return r.find(t);const n=r;for(let a=0;at(n,r))}function yp(e,t){return e.indexOf(t)!==-1}function Gw(e,t){for(let r=0;rr.isApplicable(t))}findByName(t){return this.transfomers[t]}}const dD=e=>Object.prototype.toString.call(e).slice(8,-1),Ww=e=>typeof e>"u",uD=e=>e===null,Dl=e=>typeof e!="object"||e===null||e===Object.prototype?!1:Object.getPrototypeOf(e)===null?!0:Object.getPrototypeOf(e)===Object.prototype,Yg=e=>Dl(e)&&Object.keys(e).length===0,Oc=e=>Array.isArray(e),lD=e=>typeof e=="string",hD=e=>typeof e=="number"&&!isNaN(e),pD=e=>typeof e=="boolean",bD=e=>e instanceof RegExp,Ll=e=>e instanceof Map,Ul=e=>e instanceof Set,Yw=e=>dD(e)==="Symbol",gD=e=>e instanceof Date&&!isNaN(e.valueOf()),mD=e=>e instanceof Error,Jw=e=>typeof e=="number"&&isNaN(e),yD=e=>pD(e)||uD(e)||Ww(e)||hD(e)||lD(e)||Yw(e),_D=e=>typeof e=="bigint",vD=e=>e===1/0||e===-1/0,wD=e=>ArrayBuffer.isView(e)&&!(e instanceof DataView),ED=e=>e instanceof URL,Xw=e=>e.replace(/\./g,"\\."),Jg=e=>e.map(String).map(Xw).join("."),Fl=e=>{const t=[];let r="";for(let a=0;anull,()=>{}),Ws(_D,"bigint",e=>e.toString(),e=>typeof BigInt<"u"?BigInt(e):(console.error("Please add a BigInt polyfill."),e)),Ws(gD,"Date",e=>e.toISOString(),e=>new Date(e)),Ws(mD,"Error",(e,t)=>{const r={name:e.name,message:e.message};return t.allowedErrorProps.forEach(n=>{r[n]=e[n]}),r},(e,t)=>{const r=new Error(e.message);return r.name=e.name,r.stack=e.stack,t.allowedErrorProps.forEach(n=>{r[n]=e[n]}),r}),Ws(bD,"regexp",e=>""+e,e=>{const t=e.slice(1,e.lastIndexOf("/")),r=e.slice(e.lastIndexOf("/")+1);return new RegExp(t,r)}),Ws(Ul,"set",e=>[...e.values()],e=>new Set(e)),Ws(Ll,"map",e=>[...e.entries()],e=>new Map(e)),Ws(e=>Jw(e)||vD(e),"number",e=>Jw(e)?"NaN":e>0?"Infinity":"-Infinity",Number),Ws(e=>e===0&&1/e===-1/0,"number",()=>"-0",Number),Ws(ED,"URL",e=>e.toString(),e=>new URL(e))];function _p(e,t,r,n){return{isApplicable:e,annotation:t,transform:r,untransform:n}}const e7=_p((e,t)=>Yw(e)?!!t.symbolRegistry.getIdentifier(e):!1,(e,t)=>["symbol",t.symbolRegistry.getIdentifier(e)],e=>e.description,(e,t,r)=>{const n=r.symbolRegistry.getValue(t[1]);if(!n)throw new Error("Trying to deserialize unknown symbol");return n}),xD=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,Uint8ClampedArray].reduce((e,t)=>(e[t.name]=t,e),{}),t7=_p(wD,e=>["typed-array",e.constructor.name],e=>[...e],(e,t)=>{const r=xD[t[1]];if(!r)throw new Error("Trying to deserialize unknown typed array");return new r(e)});function r7(e,t){return e?.constructor?!!t.classRegistry.getIdentifier(e.constructor):!1}const n7=_p(r7,(e,t)=>["class",t.classRegistry.getIdentifier(e.constructor)],(e,t)=>{const r=t.classRegistry.getAllowedProps(e.constructor);if(!r)return{...e};const n={};return r.forEach(a=>{n[a]=e[a]}),n},(e,t,r)=>{const n=r.classRegistry.getValue(t[1]);if(!n)throw new Error("Trying to deserialize unknown class - check https://github.com/blitz-js/superjson/issues/116#issuecomment-773996564");return Object.assign(Object.create(n.prototype),e)}),a7=_p((e,t)=>!!t.customTransformerRegistry.findApplicable(e),(e,t)=>["custom",t.customTransformerRegistry.findApplicable(e).name],(e,t)=>t.customTransformerRegistry.findApplicable(e).serialize(e),(e,t,r)=>{const n=r.customTransformerRegistry.findByName(t[1]);if(!n)throw new Error("Trying to deserialize unknown custom value");return n.deserialize(e)}),AD=[n7,e7,a7,t7],i7=(e,t)=>{const r=Gw(AD,a=>a.isApplicable(e,t));if(r)return{value:r.transform(e,t),type:r.annotation(e,t)};const n=Gw(Qw,a=>a.isApplicable(e,t));if(n)return{value:n.transform(e,t),type:n.annotation}},s7={};Qw.forEach(e=>{s7[e.annotation]=e});const TD=(e,t,r)=>{if(Oc(t))switch(t[0]){case"symbol":return e7.untransform(e,t,r);case"class":return n7.untransform(e,t,r);case"custom":return a7.untransform(e,t,r);case"typed-array":return t7.untransform(e,t,r);default:throw new Error("Unknown transformation: "+t)}else{const n=s7[t];if(!n)throw new Error("Unknown transformation: "+t);return n.untransform(e,r)}},Bd=(e,t)=>{const r=e.keys();for(;t>0;)r.next(),t--;return r.next().value};function o7(e){if(yp(e,"__proto__"))throw new Error("__proto__ is not allowed as a property");if(yp(e,"prototype"))throw new Error("prototype is not allowed as a property");if(yp(e,"constructor"))throw new Error("constructor is not allowed as a property")}const SD=(e,t)=>{o7(t);for(let r=0;r{if(o7(t),t.length===0)return r(e);let n=e;for(let i=0;iQg(i,t,[...r,...Fl(s)]));return}const[n,a]=e;a&&Md(a,(i,s)=>{Qg(i,t,[...r,...Fl(s)])}),t(n,r)}function kD(e,t,r){return Qg(t,(n,a)=>{e=Xg(e,a,i=>TD(i,n,r))}),e}function ID(e,t){function r(n,a){const i=SD(e,Fl(a));n.map(Fl).forEach(s=>{e=Xg(e,s,()=>i)})}if(Oc(t)){const[n,a]=t;n.forEach(i=>{e=Xg(e,Fl(i),()=>e)}),a&&Md(a,r)}else Md(t,r);return e}const CD=(e,t)=>Dl(e)||Oc(e)||Ll(e)||Ul(e)||r7(e,t);function OD(e,t,r){const n=r.get(e);n?n.push(t):r.set(e,[t])}function ND(e,t){const r={};let n;return e.forEach(a=>{if(a.length<=1)return;t||(a=a.map(o=>o.map(String)).sort((o,c)=>o.length-c.length));const[i,...s]=a;i.length===0?n=s.map(Jg):r[Jg(i)]=s.map(Jg)}),n?Yg(r)?[n]:[n,r]:Yg(r)?void 0:r}const c7=(e,t,r,n,a=[],i=[],s=new Map)=>{const o=yD(e);if(!o){OD(e,a,t);const j=s.get(e);if(j)return n?{transformedValue:null}:j}if(!CD(e,r)){const j=i7(e,r),G=j?{transformedValue:j.value,annotations:[j.type]}:{transformedValue:e};return o||s.set(e,G),G}if(yp(i,e))return{transformedValue:null};const c=i7(e,r),d=c?.value??e,l=Oc(d)?[]:{},y={};Md(d,(j,G)=>{if(G==="__proto__"||G==="constructor"||G==="prototype")throw new Error(`Detected property ${G}. This is a prototype pollution risk, please remove it from your object.`);const $=c7(j,t,r,n,[...a,G],[...i,e],s);l[G]=$.transformedValue,Oc($.annotations)?y[G]=$.annotations:Dl($.annotations)&&Md($.annotations,(fe,he)=>{y[Xw(G)+"."+he]=fe})});const M=Yg(y)?{transformedValue:l,annotations:c?[c.type]:void 0}:{transformedValue:l,annotations:c?[c.type,y]:y};return o||s.set(e,M),M};function ha(e){return Object.prototype.toString.call(e).slice(8,-1)}function RD(e){return ha(e)==="Object"}function vp(e){return ha(e)==="Array"}function GQ(e){return ha(e)==="Blob"}function MD(e){return ha(e)==="Boolean"}function WQ(e){return ha(e)==="Date"&&!isNaN(e)}function YQ(e){return vp(e)&&e.length===0}function wp(e){if(ha(e)!=="Object")return!1;const t=Object.getPrototypeOf(e);return!!t&&t.constructor===Object&&t===Object.prototype}function JQ(e){return wp(e)&&Object.keys(e).length===0}function XQ(e){return e===""}function QQ(e){return ha(e)==="Error"||e instanceof Error}function eee(e){return ha(e)==="File"}function tee(e){return vp(e)&&e.length>0}function ree(e){return wp(e)&&Object.keys(e).length>0}function f7(e){return ha(e)==="String"}function nee(e){return f7(e)&&e!==""}function aee(e){return typeof e=="function"}function BD(e,t){if(!(t instanceof Function))throw new TypeError("Type must be a function");if(!Object.prototype.hasOwnProperty.call(t,"prototype"))throw new TypeError("Type is not a class");const r=t.name;return ha(e)===r||!!(e&&e.constructor===t)}function iee(e,t){if(typeof t=="function"){for(let r=e;r;r=Object.getPrototypeOf(r))if(BD(r,t))return!0;return!1}else{for(let r=e;r;r=Object.getPrototypeOf(r))if(ha(r)===t)return!0;return!1}}function see(e){return ha(e)==="Map"}function oee(e){return ha(e)==="Number"&&isNaN(e)}function em(e){return ha(e)==="Number"&&!isNaN(e)}function cee(e){return em(e)&&e<0}function d7(e){return ha(e)==="Null"}function PD(e,t,r,n,a){return i=>e(i)||t(i)||!!r&&r(i)||!!n&&n(i)||!!a&&a(i)}function u7(e){return ha(e)==="Undefined"}const fee=PD(d7,u7);function dee(e){return wp(e)}function uee(e){return RD(e)}function lee(e){return em(e)&&e>0}function DD(e){return ha(e)==="Symbol"}function hee(e){return MD(e)||d7(e)||u7(e)||em(e)||f7(e)||DD(e)}function pee(e){return ha(e)==="Promise"}function bee(e){return ha(e)==="RegExp"}function gee(e){return ha(e)==="Set"}function mee(e){return ha(e)==="WeakMap"}function yee(e){return ha(e)==="WeakSet"}function LD(e,t,r,n,a){const i={}.propertyIsEnumerable.call(n,t)?"enumerable":"nonenumerable";i==="enumerable"&&(e[t]=r),a&&i==="nonenumerable"&&Object.defineProperty(e,t,{value:r,enumerable:!1,writable:!0,configurable:!0})}function tm(e,t={}){if(vp(e))return e.map(a=>tm(a,t));if(!wp(e))return e;const r=Object.getOwnPropertyNames(e),n=Object.getOwnPropertySymbols(e);return[...r,...n].reduce((a,i)=>{if(vp(t.props)&&!t.props.includes(i))return a;const s=e[i],o=tm(s,t);return LD(a,i,o,e,t.nonenumerable),a},{})}class Tn{constructor({dedupe:t=!1}={}){this.classRegistry=new sD,this.symbolRegistry=new Kw(r=>r.description??""),this.customTransformerRegistry=new fD,this.allowedErrorProps=[],this.dedupe=t}serialize(t){const r=new Map,n=c7(t,r,this,this.dedupe),a={json:n.transformedValue};n.annotations&&(a.meta={...a.meta,values:n.annotations});const i=ND(r,this.dedupe);return i&&(a.meta={...a.meta,referentialEqualities:i}),a}deserialize(t){const{json:r,meta:n}=t;let a=tm(r);return n?.values&&(a=kD(a,n.values,this)),n?.referentialEqualities&&(a=ID(a,n.referentialEqualities)),a}stringify(t){return JSON.stringify(this.serialize(t))}parse(t){return this.deserialize(JSON.parse(t))}registerClass(t,r){this.classRegistry.register(t,r)}registerSymbol(t,r){this.symbolRegistry.register(t,r)}registerCustom(t,r){this.customTransformerRegistry.register({name:r,...t})}allowErrorProps(...t){this.allowedErrorProps.push(...t)}}Tn.defaultInstance=new Tn,Tn.serialize=Tn.defaultInstance.serialize.bind(Tn.defaultInstance),Tn.deserialize=Tn.defaultInstance.deserialize.bind(Tn.defaultInstance),Tn.stringify=Tn.defaultInstance.stringify.bind(Tn.defaultInstance),Tn.parse=Tn.defaultInstance.parse.bind(Tn.defaultInstance),Tn.registerClass=Tn.defaultInstance.registerClass.bind(Tn.defaultInstance),Tn.registerSymbol=Tn.defaultInstance.registerSymbol.bind(Tn.defaultInstance),Tn.registerCustom=Tn.defaultInstance.registerCustom.bind(Tn.defaultInstance),Tn.allowErrorProps=Tn.defaultInstance.allowErrorProps.bind(Tn.defaultInstance);const _ee=Tn.serialize,vee=Tn.deserialize,wee=Tn.stringify,Eee=Tn.parse,xee=Tn.registerClass,Aee=Tn.registerCustom,Tee=Tn.registerSymbol,See=Tn.allowErrorProps,rm=YP({transformer:Tn,links:[(0,aD.windowLink)({window})]});var In;(function(e){e.assertEqual=a=>a;function t(a){}e.assertIs=t;function r(a){throw new Error}e.assertNever=r,e.arrayToEnum=a=>{const i={};for(const s of a)i[s]=s;return i},e.getValidEnumValues=a=>{const i=e.objectKeys(a).filter(o=>typeof a[a[o]]!="number"),s={};for(const o of i)s[o]=a[o];return e.objectValues(s)},e.objectValues=a=>e.objectKeys(a).map(function(i){return a[i]}),e.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{const i=[];for(const s in a)Object.prototype.hasOwnProperty.call(a,s)&&i.push(s);return i},e.find=(a,i)=>{for(const s of a)if(i(s))return s},e.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&isFinite(a)&&Math.floor(a)===a;function n(a,i=" | "){return a.map(s=>typeof s=="string"?`'${s}'`:s).join(i)}e.joinValues=n,e.jsonStringifyReplacer=(a,i)=>typeof i=="bigint"?i.toString():i})(In||(In={}));var nm;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(nm||(nm={}));const Jt=In.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Nc=e=>{switch(typeof e){case"undefined":return Jt.undefined;case"string":return Jt.string;case"number":return isNaN(e)?Jt.nan:Jt.number;case"boolean":return Jt.boolean;case"function":return Jt.function;case"bigint":return Jt.bigint;case"symbol":return Jt.symbol;case"object":return Array.isArray(e)?Jt.array:e===null?Jt.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?Jt.promise:typeof Map<"u"&&e instanceof Map?Jt.map:typeof Set<"u"&&e instanceof Set?Jt.set:typeof Date<"u"&&e instanceof Date?Jt.date:Jt.object;default:return Jt.unknown}},Mt=In.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),UD=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:");class gi extends Error{constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};const r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}get errors(){return this.issues}format(t){const r=t||function(i){return i.message},n={_errors:[]},a=i=>{for(const s of i.issues)if(s.code==="invalid_union")s.unionErrors.map(a);else if(s.code==="invalid_return_type")a(s.returnTypeError);else if(s.code==="invalid_arguments")a(s.argumentsError);else if(s.path.length===0)n._errors.push(r(s));else{let o=n,c=0;for(;cr.message){const r={},n=[];for(const a of this.issues)a.path.length>0?(r[a.path[0]]=r[a.path[0]]||[],r[a.path[0]].push(t(a))):n.push(t(a));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}}gi.create=e=>new gi(e);const Pd=(e,t)=>{let r;switch(e.code){case Mt.invalid_type:e.received===Jt.undefined?r="Required":r=`Expected ${e.expected}, received ${e.received}`;break;case Mt.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,In.jsonStringifyReplacer)}`;break;case Mt.unrecognized_keys:r=`Unrecognized key(s) in object: ${In.joinValues(e.keys,", ")}`;break;case Mt.invalid_union:r="Invalid input";break;case Mt.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${In.joinValues(e.options)}`;break;case Mt.invalid_enum_value:r=`Invalid enum value. Expected ${In.joinValues(e.options)}, received '${e.received}'`;break;case Mt.invalid_arguments:r="Invalid function arguments";break;case Mt.invalid_return_type:r="Invalid function return type";break;case Mt.invalid_date:r="Invalid date";break;case Mt.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:In.assertNever(e.validation):e.validation!=="regex"?r=`Invalid ${e.validation}`:r="Invalid";break;case Mt.too_small:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:r="Invalid input";break;case Mt.too_big:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?r=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:r="Invalid input";break;case Mt.custom:r="Invalid input";break;case Mt.invalid_intersection_types:r="Intersection results could not be merged";break;case Mt.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case Mt.not_finite:r="Number must be finite";break;default:r=t.defaultError,In.assertNever(e)}return{message:r}};let l7=Pd;function FD(e){l7=e}function Ep(){return l7}const xp=e=>{const{data:t,path:r,errorMaps:n,issueData:a}=e,i=[...r,...a.path||[]],s={...a,path:i};if(a.message!==void 0)return{...a,path:i,message:a.message};let o="";const c=n.filter(d=>!!d).slice().reverse();for(const d of c)o=d(s,{data:t,defaultError:o}).message;return{...a,path:i,message:o}},HD=[];function Gt(e,t){const r=Ep(),n=xp({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===Pd?void 0:Pd].filter(a=>!!a)});e.common.issues.push(n)}class Va{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,r){const n=[];for(const a of r){if(a.status==="aborted")return mr;a.status==="dirty"&&t.dirty(),n.push(a.value)}return{status:t.value,value:n}}static async mergeObjectAsync(t,r){const n=[];for(const a of r){const i=await a.key,s=await a.value;n.push({key:i,value:s})}return Va.mergeObjectSync(t,n)}static mergeObjectSync(t,r){const n={};for(const a of r){const{key:i,value:s}=a;if(i.status==="aborted"||s.status==="aborted")return mr;i.status==="dirty"&&t.dirty(),s.status==="dirty"&&t.dirty(),i.value!=="__proto__"&&(typeof s.value<"u"||a.alwaysSet)&&(n[i.value]=s.value)}return{status:t.value,value:n}}}const mr=Object.freeze({status:"aborted"}),Dd=e=>({status:"dirty",value:e}),Ja=e=>({status:"valid",value:e}),am=e=>e.status==="aborted",im=e=>e.status==="dirty",Hl=e=>e.status==="valid",jl=e=>typeof Promise<"u"&&e instanceof Promise;function Ap(e,t,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(e):n?n.value:t.get(e)}function h7(e,t,r,n,a){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!a)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!a:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?a.call(e,r):a?a.value=r:t.set(e,r),r}typeof SuppressedError=="function"&&SuppressedError;var sr;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(sr||(sr={}));var $l,Vl;class Ys{constructor(t,r,n,a){this._cachedPath=[],this.parent=t,this.data=r,this._path=n,this._key=a}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const p7=(e,t)=>{if(Hl(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const r=new gi(e.common.issues);return this._error=r,this._error}}};function gn(e){if(!e)return{};const{errorMap:t,invalid_type_error:r,required_error:n,description:a}=e;if(t&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:a}:{errorMap:(s,o)=>{var c,d;const{message:l}=e;return s.code==="invalid_enum_value"?{message:l??o.defaultError}:typeof o.data>"u"?{message:(c=l??n)!==null&&c!==void 0?c:o.defaultError}:s.code!=="invalid_type"?{message:o.defaultError}:{message:(d=l??r)!==null&&d!==void 0?d:o.defaultError}},description:a}}class vn{constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(t){return Nc(t.data)}_getOrReturnCtx(t,r){return r||{common:t.parent.common,data:t.data,parsedType:Nc(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new Va,ctx:{common:t.parent.common,data:t.data,parsedType:Nc(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){const r=this._parse(t);if(jl(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(t){const r=this._parse(t);return Promise.resolve(r)}parse(t,r){const n=this.safeParse(t,r);if(n.success)return n.data;throw n.error}safeParse(t,r){var n;const a={common:{issues:[],async:(n=r?.async)!==null&&n!==void 0?n:!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Nc(t)},i=this._parseSync({data:t,path:a.path,parent:a});return p7(a,i)}async parseAsync(t,r){const n=await this.safeParseAsync(t,r);if(n.success)return n.data;throw n.error}async safeParseAsync(t,r){const n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Nc(t)},a=this._parse({data:t,path:n.path,parent:n}),i=await(jl(a)?a:Promise.resolve(a));return p7(n,i)}refine(t,r){const n=a=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(a):r;return this._refinement((a,i)=>{const s=t(a),o=()=>i.addIssue({code:Mt.custom,...n(a)});return typeof Promise<"u"&&s instanceof Promise?s.then(c=>c?!0:(o(),!1)):s?!0:(o(),!1)})}refinement(t,r){return this._refinement((n,a)=>t(n)?!0:(a.addIssue(typeof r=="function"?r(n,a):r),!1))}_refinement(t){return new Qi({schema:this,typeName:br.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}optional(){return Xs.create(this,this._def)}nullable(){return Pc.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Xi.create(this,this._def)}promise(){return Hd.create(this,this._def)}or(t){return Kl.create([this,t],this._def)}and(t){return Gl.create(this,t,this._def)}transform(t){return new Qi({...gn(this._def),schema:this,typeName:br.ZodEffects,effect:{type:"transform",transform:t}})}default(t){const r=typeof t=="function"?t:()=>t;return new Ql({...gn(this._def),innerType:this,defaultValue:r,typeName:br.ZodDefault})}brand(){return new cm({typeName:br.ZodBranded,type:this,...gn(this._def)})}catch(t){const r=typeof t=="function"?t:()=>t;return new e0({...gn(this._def),innerType:this,catchValue:r,typeName:br.ZodCatch})}describe(t){const r=this.constructor;return new r({...this._def,description:t})}pipe(t){return t0.create(this,t)}readonly(){return r0.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const jD=/^c[^\s-]{8,}$/i,$D=/^[0-9a-z]+$/,VD=/^[0-9A-HJKMNP-TV-Z]{26}$/,zD=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,qD=/^[a-z0-9_-]{21}$/i,ZD=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,KD=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,GD="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let sm;const WD=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,YD=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,JD=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,b7="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",XD=new RegExp(`^${b7}$`);function g7(e){let t="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`),t}function QD(e){return new RegExp(`^${g7(e)}$`)}function m7(e){let t=`${b7}T${g7(e)}`;const r=[];return r.push(e.local?"Z?":"Z"),e.offset&&r.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${r.join("|")})`,new RegExp(`^${t}$`)}function eL(e,t){return!!((t==="v4"||!t)&&WD.test(e)||(t==="v6"||!t)&&YD.test(e))}class Ji extends vn{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==Jt.string){const i=this._getOrReturnCtx(t);return Gt(i,{code:Mt.invalid_type,expected:Jt.string,received:i.parsedType}),mr}const n=new Va;let a;for(const i of this._def.checks)if(i.kind==="min")t.data.lengthi.value&&(a=this._getOrReturnCtx(t,a),Gt(a,{code:Mt.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){const s=t.data.length>i.value,o=t.data.lengtht.test(a),{validation:r,code:Mt.invalid_string,...sr.errToObj(n)})}_addCheck(t){return new Ji({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...sr.errToObj(t)})}url(t){return this._addCheck({kind:"url",...sr.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...sr.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...sr.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...sr.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...sr.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...sr.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...sr.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...sr.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...sr.errToObj(t)})}datetime(t){var r,n;return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:(r=t?.offset)!==null&&r!==void 0?r:!1,local:(n=t?.local)!==null&&n!==void 0?n:!1,...sr.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,...sr.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...sr.errToObj(t)})}regex(t,r){return this._addCheck({kind:"regex",regex:t,...sr.errToObj(r)})}includes(t,r){return this._addCheck({kind:"includes",value:t,position:r?.position,...sr.errToObj(r?.message)})}startsWith(t,r){return this._addCheck({kind:"startsWith",value:t,...sr.errToObj(r)})}endsWith(t,r){return this._addCheck({kind:"endsWith",value:t,...sr.errToObj(r)})}min(t,r){return this._addCheck({kind:"min",value:t,...sr.errToObj(r)})}max(t,r){return this._addCheck({kind:"max",value:t,...sr.errToObj(r)})}length(t,r){return this._addCheck({kind:"length",value:t,...sr.errToObj(r)})}nonempty(t){return this.min(1,sr.errToObj(t))}trim(){return new Ji({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Ji({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Ji({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get minLength(){let t=null;for(const r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxLength(){let t=null;for(const r of this._def.checks)r.kind==="max"&&(t===null||r.value{var t;return new Ji({checks:[],typeName:br.ZodString,coerce:(t=e?.coerce)!==null&&t!==void 0?t:!1,...gn(e)})};function tL(e,t){const r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,a=r>n?r:n,i=parseInt(e.toFixed(a).replace(".","")),s=parseInt(t.toFixed(a).replace(".",""));return i%s/Math.pow(10,a)}class Rc extends vn{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==Jt.number){const i=this._getOrReturnCtx(t);return Gt(i,{code:Mt.invalid_type,expected:Jt.number,received:i.parsedType}),mr}let n;const a=new Va;for(const i of this._def.checks)i.kind==="int"?In.isInteger(t.data)||(n=this._getOrReturnCtx(t,n),Gt(n,{code:Mt.invalid_type,expected:"integer",received:"float",message:i.message}),a.dirty()):i.kind==="min"?(i.inclusive?t.datai.value:t.data>=i.value)&&(n=this._getOrReturnCtx(t,n),Gt(n,{code:Mt.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),a.dirty()):i.kind==="multipleOf"?tL(t.data,i.value)!==0&&(n=this._getOrReturnCtx(t,n),Gt(n,{code:Mt.not_multiple_of,multipleOf:i.value,message:i.message}),a.dirty()):i.kind==="finite"?Number.isFinite(t.data)||(n=this._getOrReturnCtx(t,n),Gt(n,{code:Mt.not_finite,message:i.message}),a.dirty()):In.assertNever(i);return{status:a.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,sr.toString(r))}gt(t,r){return this.setLimit("min",t,!1,sr.toString(r))}lte(t,r){return this.setLimit("max",t,!0,sr.toString(r))}lt(t,r){return this.setLimit("max",t,!1,sr.toString(r))}setLimit(t,r,n,a){return new Rc({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:sr.toString(a)}]})}_addCheck(t){return new Rc({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:sr.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:sr.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:sr.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:sr.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:sr.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:sr.toString(r)})}finite(t){return this._addCheck({kind:"finite",message:sr.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:sr.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:sr.toString(t)})}get minValue(){let t=null;for(const r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(const r of this._def.checks)r.kind==="max"&&(t===null||r.valuet.kind==="int"||t.kind==="multipleOf"&&In.isInteger(t.value))}get isFinite(){let t=null,r=null;for(const n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(t===null||n.valuenew Rc({checks:[],typeName:br.ZodNumber,coerce:e?.coerce||!1,...gn(e)});class Mc extends vn{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce&&(t.data=BigInt(t.data)),this._getType(t)!==Jt.bigint){const i=this._getOrReturnCtx(t);return Gt(i,{code:Mt.invalid_type,expected:Jt.bigint,received:i.parsedType}),mr}let n;const a=new Va;for(const i of this._def.checks)i.kind==="min"?(i.inclusive?t.datai.value:t.data>=i.value)&&(n=this._getOrReturnCtx(t,n),Gt(n,{code:Mt.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),a.dirty()):i.kind==="multipleOf"?t.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(t,n),Gt(n,{code:Mt.not_multiple_of,multipleOf:i.value,message:i.message}),a.dirty()):In.assertNever(i);return{status:a.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,sr.toString(r))}gt(t,r){return this.setLimit("min",t,!1,sr.toString(r))}lte(t,r){return this.setLimit("max",t,!0,sr.toString(r))}lt(t,r){return this.setLimit("max",t,!1,sr.toString(r))}setLimit(t,r,n,a){return new Mc({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:sr.toString(a)}]})}_addCheck(t){return new Mc({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:sr.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:sr.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:sr.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:sr.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:sr.toString(r)})}get minValue(){let t=null;for(const r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(const r of this._def.checks)r.kind==="max"&&(t===null||r.value{var t;return new Mc({checks:[],typeName:br.ZodBigInt,coerce:(t=e?.coerce)!==null&&t!==void 0?t:!1,...gn(e)})};class zl extends vn{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==Jt.boolean){const n=this._getOrReturnCtx(t);return Gt(n,{code:Mt.invalid_type,expected:Jt.boolean,received:n.parsedType}),mr}return Ja(t.data)}}zl.create=e=>new zl({typeName:br.ZodBoolean,coerce:e?.coerce||!1,...gn(e)});class Mf extends vn{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==Jt.date){const i=this._getOrReturnCtx(t);return Gt(i,{code:Mt.invalid_type,expected:Jt.date,received:i.parsedType}),mr}if(isNaN(t.data.getTime())){const i=this._getOrReturnCtx(t);return Gt(i,{code:Mt.invalid_date}),mr}const n=new Va;let a;for(const i of this._def.checks)i.kind==="min"?t.data.getTime()i.value&&(a=this._getOrReturnCtx(t,a),Gt(a,{code:Mt.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):In.assertNever(i);return{status:n.value,value:new Date(t.data.getTime())}}_addCheck(t){return new Mf({...this._def,checks:[...this._def.checks,t]})}min(t,r){return this._addCheck({kind:"min",value:t.getTime(),message:sr.toString(r)})}max(t,r){return this._addCheck({kind:"max",value:t.getTime(),message:sr.toString(r)})}get minDate(){let t=null;for(const r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(const r of this._def.checks)r.kind==="max"&&(t===null||r.valuenew Mf({checks:[],coerce:e?.coerce||!1,typeName:br.ZodDate,...gn(e)});class Tp extends vn{_parse(t){if(this._getType(t)!==Jt.symbol){const n=this._getOrReturnCtx(t);return Gt(n,{code:Mt.invalid_type,expected:Jt.symbol,received:n.parsedType}),mr}return Ja(t.data)}}Tp.create=e=>new Tp({typeName:br.ZodSymbol,...gn(e)});class ql extends vn{_parse(t){if(this._getType(t)!==Jt.undefined){const n=this._getOrReturnCtx(t);return Gt(n,{code:Mt.invalid_type,expected:Jt.undefined,received:n.parsedType}),mr}return Ja(t.data)}}ql.create=e=>new ql({typeName:br.ZodUndefined,...gn(e)});class Zl extends vn{_parse(t){if(this._getType(t)!==Jt.null){const n=this._getOrReturnCtx(t);return Gt(n,{code:Mt.invalid_type,expected:Jt.null,received:n.parsedType}),mr}return Ja(t.data)}}Zl.create=e=>new Zl({typeName:br.ZodNull,...gn(e)});class Ld extends vn{constructor(){super(...arguments),this._any=!0}_parse(t){return Ja(t.data)}}Ld.create=e=>new Ld({typeName:br.ZodAny,...gn(e)});class Bf extends vn{constructor(){super(...arguments),this._unknown=!0}_parse(t){return Ja(t.data)}}Bf.create=e=>new Bf({typeName:br.ZodUnknown,...gn(e)});class Do extends vn{_parse(t){const r=this._getOrReturnCtx(t);return Gt(r,{code:Mt.invalid_type,expected:Jt.never,received:r.parsedType}),mr}}Do.create=e=>new Do({typeName:br.ZodNever,...gn(e)});class Sp extends vn{_parse(t){if(this._getType(t)!==Jt.undefined){const n=this._getOrReturnCtx(t);return Gt(n,{code:Mt.invalid_type,expected:Jt.void,received:n.parsedType}),mr}return Ja(t.data)}}Sp.create=e=>new Sp({typeName:br.ZodVoid,...gn(e)});class Xi extends vn{_parse(t){const{ctx:r,status:n}=this._processInputParams(t),a=this._def;if(r.parsedType!==Jt.array)return Gt(r,{code:Mt.invalid_type,expected:Jt.array,received:r.parsedType}),mr;if(a.exactLength!==null){const s=r.data.length>a.exactLength.value,o=r.data.lengtha.maxLength.value&&(Gt(r,{code:Mt.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((s,o)=>a.type._parseAsync(new Ys(r,s,r.path,o)))).then(s=>Va.mergeArray(n,s));const i=[...r.data].map((s,o)=>a.type._parseSync(new Ys(r,s,r.path,o)));return Va.mergeArray(n,i)}get element(){return this._def.type}min(t,r){return new Xi({...this._def,minLength:{value:t,message:sr.toString(r)}})}max(t,r){return new Xi({...this._def,maxLength:{value:t,message:sr.toString(r)}})}length(t,r){return new Xi({...this._def,exactLength:{value:t,message:sr.toString(r)}})}nonempty(t){return this.min(1,t)}}Xi.create=(e,t)=>new Xi({type:e,minLength:null,maxLength:null,exactLength:null,typeName:br.ZodArray,...gn(t)});function Ud(e){if(e instanceof fa){const t={};for(const r in e.shape){const n=e.shape[r];t[r]=Xs.create(Ud(n))}return new fa({...e._def,shape:()=>t})}else return e instanceof Xi?new Xi({...e._def,type:Ud(e.element)}):e instanceof Xs?Xs.create(Ud(e.unwrap())):e instanceof Pc?Pc.create(Ud(e.unwrap())):e instanceof Js?Js.create(e.items.map(t=>Ud(t))):e}class fa extends vn{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const t=this._def.shape(),r=In.objectKeys(t);return this._cached={shape:t,keys:r}}_parse(t){if(this._getType(t)!==Jt.object){const d=this._getOrReturnCtx(t);return Gt(d,{code:Mt.invalid_type,expected:Jt.object,received:d.parsedType}),mr}const{status:n,ctx:a}=this._processInputParams(t),{shape:i,keys:s}=this._getCached(),o=[];if(!(this._def.catchall instanceof Do&&this._def.unknownKeys==="strip"))for(const d in a.data)s.includes(d)||o.push(d);const c=[];for(const d of s){const l=i[d],y=a.data[d];c.push({key:{status:"valid",value:d},value:l._parse(new Ys(a,y,a.path,d)),alwaysSet:d in a.data})}if(this._def.catchall instanceof Do){const d=this._def.unknownKeys;if(d==="passthrough")for(const l of o)c.push({key:{status:"valid",value:l},value:{status:"valid",value:a.data[l]}});else if(d==="strict")o.length>0&&(Gt(a,{code:Mt.unrecognized_keys,keys:o}),n.dirty());else if(d!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const d=this._def.catchall;for(const l of o){const y=a.data[l];c.push({key:{status:"valid",value:l},value:d._parse(new Ys(a,y,a.path,l)),alwaysSet:l in a.data})}}return a.common.async?Promise.resolve().then(async()=>{const d=[];for(const l of c){const y=await l.key,M=await l.value;d.push({key:y,value:M,alwaysSet:l.alwaysSet})}return d}).then(d=>Va.mergeObjectSync(n,d)):Va.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(t){return sr.errToObj,new fa({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(r,n)=>{var a,i,s,o;const c=(s=(i=(a=this._def).errorMap)===null||i===void 0?void 0:i.call(a,r,n).message)!==null&&s!==void 0?s:n.defaultError;return r.code==="unrecognized_keys"?{message:(o=sr.errToObj(t).message)!==null&&o!==void 0?o:c}:{message:c}}}:{}})}strip(){return new fa({...this._def,unknownKeys:"strip"})}passthrough(){return new fa({...this._def,unknownKeys:"passthrough"})}extend(t){return new fa({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new fa({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:br.ZodObject})}setKey(t,r){return this.augment({[t]:r})}catchall(t){return new fa({...this._def,catchall:t})}pick(t){const r={};return In.objectKeys(t).forEach(n=>{t[n]&&this.shape[n]&&(r[n]=this.shape[n])}),new fa({...this._def,shape:()=>r})}omit(t){const r={};return In.objectKeys(this.shape).forEach(n=>{t[n]||(r[n]=this.shape[n])}),new fa({...this._def,shape:()=>r})}deepPartial(){return Ud(this)}partial(t){const r={};return In.objectKeys(this.shape).forEach(n=>{const a=this.shape[n];t&&!t[n]?r[n]=a:r[n]=a.optional()}),new fa({...this._def,shape:()=>r})}required(t){const r={};return In.objectKeys(this.shape).forEach(n=>{if(t&&!t[n])r[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof Xs;)i=i._def.innerType;r[n]=i}}),new fa({...this._def,shape:()=>r})}keyof(){return y7(In.objectKeys(this.shape))}}fa.create=(e,t)=>new fa({shape:()=>e,unknownKeys:"strip",catchall:Do.create(),typeName:br.ZodObject,...gn(t)}),fa.strictCreate=(e,t)=>new fa({shape:()=>e,unknownKeys:"strict",catchall:Do.create(),typeName:br.ZodObject,...gn(t)}),fa.lazycreate=(e,t)=>new fa({shape:e,unknownKeys:"strip",catchall:Do.create(),typeName:br.ZodObject,...gn(t)});class Kl extends vn{_parse(t){const{ctx:r}=this._processInputParams(t),n=this._def.options;function a(i){for(const o of i)if(o.result.status==="valid")return o.result;for(const o of i)if(o.result.status==="dirty")return r.common.issues.push(...o.ctx.common.issues),o.result;const s=i.map(o=>new gi(o.ctx.common.issues));return Gt(r,{code:Mt.invalid_union,unionErrors:s}),mr}if(r.common.async)return Promise.all(n.map(async i=>{const s={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:s}),ctx:s}})).then(a);{let i;const s=[];for(const c of n){const d={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:d});if(l.status==="valid")return l;l.status==="dirty"&&!i&&(i={result:l,ctx:d}),d.common.issues.length&&s.push(d.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;const o=s.map(c=>new gi(c));return Gt(r,{code:Mt.invalid_union,unionErrors:o}),mr}}get options(){return this._def.options}}Kl.create=(e,t)=>new Kl({options:e,typeName:br.ZodUnion,...gn(t)});const Lo=e=>e instanceof Yl?Lo(e.schema):e instanceof Qi?Lo(e.innerType()):e instanceof Jl?[e.value]:e instanceof Bc?e.options:e instanceof Xl?In.objectValues(e.enum):e instanceof Ql?Lo(e._def.innerType):e instanceof ql?[void 0]:e instanceof Zl?[null]:e instanceof Xs?[void 0,...Lo(e.unwrap())]:e instanceof Pc?[null,...Lo(e.unwrap())]:e instanceof cm||e instanceof r0?Lo(e.unwrap()):e instanceof e0?Lo(e._def.innerType):[];class kp extends vn{_parse(t){const{ctx:r}=this._processInputParams(t);if(r.parsedType!==Jt.object)return Gt(r,{code:Mt.invalid_type,expected:Jt.object,received:r.parsedType}),mr;const n=this.discriminator,a=r.data[n],i=this.optionsMap.get(a);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(Gt(r,{code:Mt.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),mr)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,r,n){const a=new Map;for(const i of r){const s=Lo(i.shape[t]);if(!s.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(const o of s){if(a.has(o))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(o)}`);a.set(o,i)}}return new kp({typeName:br.ZodDiscriminatedUnion,discriminator:t,options:r,optionsMap:a,...gn(n)})}}function om(e,t){const r=Nc(e),n=Nc(t);if(e===t)return{valid:!0,data:e};if(r===Jt.object&&n===Jt.object){const a=In.objectKeys(t),i=In.objectKeys(e).filter(o=>a.indexOf(o)!==-1),s={...e,...t};for(const o of i){const c=om(e[o],t[o]);if(!c.valid)return{valid:!1};s[o]=c.data}return{valid:!0,data:s}}else if(r===Jt.array&&n===Jt.array){if(e.length!==t.length)return{valid:!1};const a=[];for(let i=0;i{if(am(i)||am(s))return mr;const o=om(i.value,s.value);return o.valid?((im(i)||im(s))&&r.dirty(),{status:r.value,value:o.data}):(Gt(n,{code:Mt.invalid_intersection_types}),mr)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,s])=>a(i,s)):a(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}}Gl.create=(e,t,r)=>new Gl({left:e,right:t,typeName:br.ZodIntersection,...gn(r)});class Js extends vn{_parse(t){const{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==Jt.array)return Gt(n,{code:Mt.invalid_type,expected:Jt.array,received:n.parsedType}),mr;if(n.data.lengththis._def.items.length&&(Gt(n,{code:Mt.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());const i=[...n.data].map((s,o)=>{const c=this._def.items[o]||this._def.rest;return c?c._parse(new Ys(n,s,n.path,o)):null}).filter(s=>!!s);return n.common.async?Promise.all(i).then(s=>Va.mergeArray(r,s)):Va.mergeArray(r,i)}get items(){return this._def.items}rest(t){return new Js({...this._def,rest:t})}}Js.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Js({items:e,typeName:br.ZodTuple,rest:null,...gn(t)})};class Wl extends vn{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==Jt.object)return Gt(n,{code:Mt.invalid_type,expected:Jt.object,received:n.parsedType}),mr;const a=[],i=this._def.keyType,s=this._def.valueType;for(const o in n.data)a.push({key:i._parse(new Ys(n,o,n.path,o)),value:s._parse(new Ys(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?Va.mergeObjectAsync(r,a):Va.mergeObjectSync(r,a)}get element(){return this._def.valueType}static create(t,r,n){return r instanceof vn?new Wl({keyType:t,valueType:r,typeName:br.ZodRecord,...gn(n)}):new Wl({keyType:Ji.create(),valueType:t,typeName:br.ZodRecord,...gn(r)})}}class Ip extends vn{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==Jt.map)return Gt(n,{code:Mt.invalid_type,expected:Jt.map,received:n.parsedType}),mr;const a=this._def.keyType,i=this._def.valueType,s=[...n.data.entries()].map(([o,c],d)=>({key:a._parse(new Ys(n,o,n.path,[d,"key"])),value:i._parse(new Ys(n,c,n.path,[d,"value"]))}));if(n.common.async){const o=new Map;return Promise.resolve().then(async()=>{for(const c of s){const d=await c.key,l=await c.value;if(d.status==="aborted"||l.status==="aborted")return mr;(d.status==="dirty"||l.status==="dirty")&&r.dirty(),o.set(d.value,l.value)}return{status:r.value,value:o}})}else{const o=new Map;for(const c of s){const d=c.key,l=c.value;if(d.status==="aborted"||l.status==="aborted")return mr;(d.status==="dirty"||l.status==="dirty")&&r.dirty(),o.set(d.value,l.value)}return{status:r.value,value:o}}}}Ip.create=(e,t,r)=>new Ip({valueType:t,keyType:e,typeName:br.ZodMap,...gn(r)});class Pf extends vn{_parse(t){const{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==Jt.set)return Gt(n,{code:Mt.invalid_type,expected:Jt.set,received:n.parsedType}),mr;const a=this._def;a.minSize!==null&&n.data.sizea.maxSize.value&&(Gt(n,{code:Mt.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),r.dirty());const i=this._def.valueType;function s(c){const d=new Set;for(const l of c){if(l.status==="aborted")return mr;l.status==="dirty"&&r.dirty(),d.add(l.value)}return{status:r.value,value:d}}const o=[...n.data.values()].map((c,d)=>i._parse(new Ys(n,c,n.path,d)));return n.common.async?Promise.all(o).then(c=>s(c)):s(o)}min(t,r){return new Pf({...this._def,minSize:{value:t,message:sr.toString(r)}})}max(t,r){return new Pf({...this._def,maxSize:{value:t,message:sr.toString(r)}})}size(t,r){return this.min(t,r).max(t,r)}nonempty(t){return this.min(1,t)}}Pf.create=(e,t)=>new Pf({valueType:e,minSize:null,maxSize:null,typeName:br.ZodSet,...gn(t)});class Fd extends vn{constructor(){super(...arguments),this.validate=this.implement}_parse(t){const{ctx:r}=this._processInputParams(t);if(r.parsedType!==Jt.function)return Gt(r,{code:Mt.invalid_type,expected:Jt.function,received:r.parsedType}),mr;function n(o,c){return xp({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ep(),Pd].filter(d=>!!d),issueData:{code:Mt.invalid_arguments,argumentsError:c}})}function a(o,c){return xp({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ep(),Pd].filter(d=>!!d),issueData:{code:Mt.invalid_return_type,returnTypeError:c}})}const i={errorMap:r.common.contextualErrorMap},s=r.data;if(this._def.returns instanceof Hd){const o=this;return Ja(async function(...c){const d=new gi([]),l=await o._def.args.parseAsync(c,i).catch(j=>{throw d.addIssue(n(c,j)),d}),y=await Reflect.apply(s,this,l);return await o._def.returns._def.type.parseAsync(y,i).catch(j=>{throw d.addIssue(a(y,j)),d})})}else{const o=this;return Ja(function(...c){const d=o._def.args.safeParse(c,i);if(!d.success)throw new gi([n(c,d.error)]);const l=Reflect.apply(s,this,d.data),y=o._def.returns.safeParse(l,i);if(!y.success)throw new gi([a(l,y.error)]);return y.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new Fd({...this._def,args:Js.create(t).rest(Bf.create())})}returns(t){return new Fd({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,r,n){return new Fd({args:t||Js.create([]).rest(Bf.create()),returns:r||Bf.create(),typeName:br.ZodFunction,...gn(n)})}}class Yl extends vn{get schema(){return this._def.getter()}_parse(t){const{ctx:r}=this._processInputParams(t);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}}Yl.create=(e,t)=>new Yl({getter:e,typeName:br.ZodLazy,...gn(t)});class Jl extends vn{_parse(t){if(t.data!==this._def.value){const r=this._getOrReturnCtx(t);return Gt(r,{received:r.data,code:Mt.invalid_literal,expected:this._def.value}),mr}return{status:"valid",value:t.data}}get value(){return this._def.value}}Jl.create=(e,t)=>new Jl({value:e,typeName:br.ZodLiteral,...gn(t)});function y7(e,t){return new Bc({values:e,typeName:br.ZodEnum,...gn(t)})}class Bc extends vn{constructor(){super(...arguments),$l.set(this,void 0)}_parse(t){if(typeof t.data!="string"){const r=this._getOrReturnCtx(t),n=this._def.values;return Gt(r,{expected:In.joinValues(n),received:r.parsedType,code:Mt.invalid_type}),mr}if(Ap(this,$l,"f")||h7(this,$l,new Set(this._def.values),"f"),!Ap(this,$l,"f").has(t.data)){const r=this._getOrReturnCtx(t),n=this._def.values;return Gt(r,{received:r.data,code:Mt.invalid_enum_value,options:n}),mr}return Ja(t.data)}get options(){return this._def.values}get enum(){const t={};for(const r of this._def.values)t[r]=r;return t}get Values(){const t={};for(const r of this._def.values)t[r]=r;return t}get Enum(){const t={};for(const r of this._def.values)t[r]=r;return t}extract(t,r=this._def){return Bc.create(t,{...this._def,...r})}exclude(t,r=this._def){return Bc.create(this.options.filter(n=>!t.includes(n)),{...this._def,...r})}}$l=new WeakMap,Bc.create=y7;class Xl extends vn{constructor(){super(...arguments),Vl.set(this,void 0)}_parse(t){const r=In.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(t);if(n.parsedType!==Jt.string&&n.parsedType!==Jt.number){const a=In.objectValues(r);return Gt(n,{expected:In.joinValues(a),received:n.parsedType,code:Mt.invalid_type}),mr}if(Ap(this,Vl,"f")||h7(this,Vl,new Set(In.getValidEnumValues(this._def.values)),"f"),!Ap(this,Vl,"f").has(t.data)){const a=In.objectValues(r);return Gt(n,{received:n.data,code:Mt.invalid_enum_value,options:a}),mr}return Ja(t.data)}get enum(){return this._def.values}}Vl=new WeakMap,Xl.create=(e,t)=>new Xl({values:e,typeName:br.ZodNativeEnum,...gn(t)});class Hd extends vn{unwrap(){return this._def.type}_parse(t){const{ctx:r}=this._processInputParams(t);if(r.parsedType!==Jt.promise&&r.common.async===!1)return Gt(r,{code:Mt.invalid_type,expected:Jt.promise,received:r.parsedType}),mr;const n=r.parsedType===Jt.promise?r.data:Promise.resolve(r.data);return Ja(n.then(a=>this._def.type.parseAsync(a,{path:r.path,errorMap:r.common.contextualErrorMap})))}}Hd.create=(e,t)=>new Hd({type:e,typeName:br.ZodPromise,...gn(t)});class Qi extends vn{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===br.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){const{status:r,ctx:n}=this._processInputParams(t),a=this._def.effect||null,i={addIssue:s=>{Gt(n,s),s.fatal?r.abort():r.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),a.type==="preprocess"){const s=a.transform(n.data,i);if(n.common.async)return Promise.resolve(s).then(async o=>{if(r.value==="aborted")return mr;const c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?mr:c.status==="dirty"||r.value==="dirty"?Dd(c.value):c});{if(r.value==="aborted")return mr;const o=this._def.schema._parseSync({data:s,path:n.path,parent:n});return o.status==="aborted"?mr:o.status==="dirty"||r.value==="dirty"?Dd(o.value):o}}if(a.type==="refinement"){const s=o=>{const c=a.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){const o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?mr:(o.status==="dirty"&&r.dirty(),s(o.value),{status:r.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?mr:(o.status==="dirty"&&r.dirty(),s(o.value).then(()=>({status:r.value,value:o.value}))))}if(a.type==="transform")if(n.common.async===!1){const s=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Hl(s))return s;const o=a.transform(s.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(s=>Hl(s)?Promise.resolve(a.transform(s.value,i)).then(o=>({status:r.value,value:o})):s);In.assertNever(a)}}Qi.create=(e,t,r)=>new Qi({schema:e,typeName:br.ZodEffects,effect:t,...gn(r)}),Qi.createWithPreprocess=(e,t,r)=>new Qi({schema:t,effect:{type:"preprocess",transform:e},typeName:br.ZodEffects,...gn(r)});class Xs extends vn{_parse(t){return this._getType(t)===Jt.undefined?Ja(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}Xs.create=(e,t)=>new Xs({innerType:e,typeName:br.ZodOptional,...gn(t)});class Pc extends vn{_parse(t){return this._getType(t)===Jt.null?Ja(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}Pc.create=(e,t)=>new Pc({innerType:e,typeName:br.ZodNullable,...gn(t)});class Ql extends vn{_parse(t){const{ctx:r}=this._processInputParams(t);let n=r.data;return r.parsedType===Jt.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}}Ql.create=(e,t)=>new Ql({innerType:e,typeName:br.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...gn(t)});class e0 extends vn{_parse(t){const{ctx:r}=this._processInputParams(t),n={...r,common:{...r.common,issues:[]}},a=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return jl(a)?a.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new gi(n.common.issues)},input:n.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new gi(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}}e0.create=(e,t)=>new e0({innerType:e,typeName:br.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...gn(t)});class Cp extends vn{_parse(t){if(this._getType(t)!==Jt.nan){const n=this._getOrReturnCtx(t);return Gt(n,{code:Mt.invalid_type,expected:Jt.nan,received:n.parsedType}),mr}return{status:"valid",value:t.data}}}Cp.create=e=>new Cp({typeName:br.ZodNaN,...gn(e)});const rL=Symbol("zod_brand");class cm extends vn{_parse(t){const{ctx:r}=this._processInputParams(t),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}}class t0 extends vn{_parse(t){const{status:r,ctx:n}=this._processInputParams(t);if(n.common.async)return(async()=>{const i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?mr:i.status==="dirty"?(r.dirty(),Dd(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{const a=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?mr:a.status==="dirty"?(r.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:n.path,parent:n})}}static create(t,r){return new t0({in:t,out:r,typeName:br.ZodPipeline})}}class r0 extends vn{_parse(t){const r=this._def.innerType._parse(t),n=a=>(Hl(a)&&(a.value=Object.freeze(a.value)),a);return jl(r)?r.then(a=>n(a)):n(r)}unwrap(){return this._def.innerType}}r0.create=(e,t)=>new r0({innerType:e,typeName:br.ZodReadonly,...gn(t)});function _7(e,t={},r){return e?Ld.create().superRefine((n,a)=>{var i,s;if(!e(n)){const o=typeof t=="function"?t(n):typeof t=="string"?{message:t}:t,c=(s=(i=o.fatal)!==null&&i!==void 0?i:r)!==null&&s!==void 0?s:!0,d=typeof o=="string"?{message:o}:o;a.addIssue({code:"custom",...d,fatal:c})}}):Ld.create()}const nL={object:fa.lazycreate};var br;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(br||(br={}));const aL=(e,t={message:`Input not instance of ${e.name}`})=>_7(r=>r instanceof e,t),v7=Ji.create,w7=Rc.create,iL=Cp.create,sL=Mc.create,E7=zl.create,oL=Mf.create,cL=Tp.create,fL=ql.create,dL=Zl.create,uL=Ld.create,lL=Bf.create,hL=Do.create,pL=Sp.create,bL=Xi.create,gL=fa.create,mL=fa.strictCreate,yL=Kl.create,_L=kp.create,vL=Gl.create,wL=Js.create,EL=Wl.create,xL=Ip.create,AL=Pf.create,TL=Fd.create,SL=Yl.create,kL=Jl.create,IL=Bc.create,CL=Xl.create,OL=Hd.create,x7=Qi.create,NL=Xs.create,RL=Pc.create,ML=Qi.createWithPreprocess,BL=t0.create;var _=Object.freeze({__proto__:null,defaultErrorMap:Pd,setErrorMap:FD,getErrorMap:Ep,makeIssue:xp,EMPTY_PATH:HD,addIssueToContext:Gt,ParseStatus:Va,INVALID:mr,DIRTY:Dd,OK:Ja,isAborted:am,isDirty:im,isValid:Hl,isAsync:jl,get util(){return In},get objectUtil(){return nm},ZodParsedType:Jt,getParsedType:Nc,ZodType:vn,datetimeRegex:m7,ZodString:Ji,ZodNumber:Rc,ZodBigInt:Mc,ZodBoolean:zl,ZodDate:Mf,ZodSymbol:Tp,ZodUndefined:ql,ZodNull:Zl,ZodAny:Ld,ZodUnknown:Bf,ZodNever:Do,ZodVoid:Sp,ZodArray:Xi,ZodObject:fa,ZodUnion:Kl,ZodDiscriminatedUnion:kp,ZodIntersection:Gl,ZodTuple:Js,ZodRecord:Wl,ZodMap:Ip,ZodSet:Pf,ZodFunction:Fd,ZodLazy:Yl,ZodLiteral:Jl,ZodEnum:Bc,ZodNativeEnum:Xl,ZodPromise:Hd,ZodEffects:Qi,ZodTransformer:Qi,ZodOptional:Xs,ZodNullable:Pc,ZodDefault:Ql,ZodCatch:e0,ZodNaN:Cp,BRAND:rL,ZodBranded:cm,ZodPipeline:t0,ZodReadonly:r0,custom:_7,Schema:vn,ZodSchema:vn,late:nL,get ZodFirstPartyTypeKind(){return br},coerce:{string:e=>Ji.create({...e,coerce:!0}),number:e=>Rc.create({...e,coerce:!0}),boolean:e=>zl.create({...e,coerce:!0}),bigint:e=>Mc.create({...e,coerce:!0}),date:e=>Mf.create({...e,coerce:!0})},any:uL,array:bL,bigint:sL,boolean:E7,date:oL,discriminatedUnion:_L,effect:x7,enum:IL,function:TL,instanceof:aL,intersection:vL,lazy:SL,literal:kL,map:xL,nan:iL,nativeEnum:CL,never:hL,null:dL,nullable:RL,number:w7,object:gL,oboolean:()=>E7().optional(),onumber:()=>w7().optional(),optional:NL,ostring:()=>v7().optional(),pipeline:BL,preprocess:ML,promise:OL,record:EL,set:AL,strictObject:mL,string:v7,symbol:cL,transformer:x7,tuple:wL,undefined:fL,union:yL,unknown:lL,void:pL,NEVER:mr,ZodIssueCode:Mt,quotelessJson:UD,ZodError:gi}),Ree=fr(65723),ba=fr(22155),Mee=fr(58050);/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */function A7(e,t,r,n){function a(i){return i instanceof r?i:new r(function(s){s(i)})}return new(r||(r=Promise))(function(i,s){function o(l){try{d(n.next(l))}catch(y){s(y)}}function c(l){try{d(n.throw(l))}catch(y){s(y)}}function d(l){l.done?i(l.value):a(l.value).then(o,c)}d((n=n.apply(e,t||[])).next())})}function T7(e,t){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,a,i,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(d){return function(l){return c([d,l])}}function c(d){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,a&&(i=d[0]&2?a.return:d[0]?a.throw||((i=a.return)&&i.call(a),0):a.next)&&!(i=i.call(a,d[1])).done)return i;switch(a=0,i&&(d=[d[0]&2,i.value]),d[0]){case 0:case 1:i=d;break;case 4:return r.label++,{value:d[1],done:!1};case 5:r.label++,a=d[1],d=[0];continue;case 7:d=r.ops.pop(),r.trys.pop();continue;default:if(i=r.trys,!(i=i.length>0&&i[i.length-1])&&(d[0]===6||d[0]===2)){r=0;continue}if(d[0]===3&&(!i||d[1]>i[0]&&d[1]i||setTimeout(n,o,a)},B7=M7(new Map),P7=B7[0],WL=B7[1],D7=Uo({onLoadingSlow:Qs,onSuccess:Qs,onError:Qs,onErrorRetry:GL,onDiscarded:Qs,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:k7?1e4:5e3,focusThrottleInterval:5*1e3,dedupingInterval:2*1e3,loadingTimeout:k7?5e3:3e3,compare:function(e,t){return a0(e)==a0(t)},isPaused:function(){return!1},cache:P7,mutate:WL,fallback:{}},zL),L7=function(e,t){var r=Uo(e,t);if(t){var n=e.use,a=e.fallback,i=t.use,s=t.fallback;n&&i&&(r.use=n.concat(i)),a&&s&&(r.fallback=Uo(a,s))}return r},ym=(0,ba.createContext)({}),YL=function(e){var t=e.value,r=L7((0,ba.useContext)(ym),t),n=t&&t.provider,a=(0,ba.useState)(function(){return n?M7(n(r.cache||P7),t):za})[0];return a&&(r.cache=a[0],r.mutate=a[1]),i0(function(){return a?a[2]:za},[]),(0,ba.createElement)(ym.Provider,Uo(e,{value:r}))},JL=function(e,t){var r=(0,ba.useState)({})[1],n=(0,ba.useRef)(e),a=(0,ba.useRef)({data:!1,error:!1,isValidating:!1}),i=(0,ba.useCallback)(function(s){var o=!1,c=n.current;for(var d in s){var l=d;c[l]!==s[l]&&(c[l]=s[l],a.current[l]&&(o=!0))}o&&!t.current&&r({})},[]);return i0(function(){n.current=e}),[n,a.current,i]},XL=function(e){return Dc(e[1])?[e[0],e[1],e[2]||{}]:[e[0],null,(e[1]===null?e[2]:e[1])||{}]},QL=function(){return Uo(D7,(0,ba.useContext)(ym))},eU=function(e){return function(){for(var r=[],n=0;n0;)l=y[M](l);return l(s,o||d.fetcher,d)}},U7=function(e,t,r){var n=t[e]||(t[e]=[]);return n.push(r),function(){var a=n.indexOf(r);a>=0&&(n[a]=n[n.length-1],n.pop())}},_m={dedupe:!0},tU=function(e,t,r){var n=r.cache,a=r.compare,i=r.fallbackData,s=r.suspense,o=r.revalidateOnMount,c=r.refreshInterval,d=r.refreshWhenHidden,l=r.refreshWhenOffline,y=Df.get(n),M=y[0],j=y[1],G=y[2],$=y[3],fe=gm(e),he=fe[0],Oe=fe[1],We=fe[2],et=(0,ba.useRef)(!1),ht=(0,ba.useRef)(!1),tt=(0,ba.useRef)(he),He=(0,ba.useRef)(t),Y=(0,ba.useRef)(r),ve=function(){return Y.current},me=function(){return ve().isVisible()&&ve().isOnline()},Ne=function(nr){return n.set(We,Uo(n.get(We),nr))},qe=n.get(he),Je=Xa(i)?r.fallback[he]:i,je=Xa(qe)?Je:qe,X=n.get(We)||{},ue=X.error,Ue=!et.current,Ze=function(){return Ue&&!Xa(o)?o:ve().isPaused()?!1:s?Xa(je)?!1:r.revalidateIfStale:Xa(je)||r.revalidateIfStale},ct=function(){return!he||!t?!1:X.isValidating?!0:Ue&&Ze()},At=ct(),Ot=JL({data:je,error:ue,isValidating:At},ht),Ut=Ot[0],tr=Ot[1],rr=Ot[2],Xt=(0,ba.useCallback)(function(nr){return A7(void 0,void 0,void 0,function(){var Sn,ur,mn,hr,vr,Er,yr,or,ya,K0,Xf,Wc,G0;return T7(this,function(Qf){switch(Qf.label){case 0:if(Sn=He.current,!he||!Sn||ht.current||ve().isPaused())return[2,!1];hr=!0,vr=nr||{},Er=!$[he]||!vr.dedupe,yr=function(){return!ht.current&&he===tt.current&&et.current},or=function(){var Z1=$[he];Z1&&Z1[1]===mn&&delete $[he]},ya={isValidating:!1},K0=function(){Ne({isValidating:!1}),yr()&&rr(ya)},Ne({isValidating:!0}),rr({isValidating:!0}),Qf.label=1;case 1:return Qf.trys.push([1,3,,4]),Er&&(s0(n,he,Ut.current.data,Ut.current.error,!0),r.loadingTimeout&&!n.get(he)&&setTimeout(function(){hr&&yr()&&ve().onLoadingSlow(he,r)},r.loadingTimeout),$[he]=[Sn.apply(void 0,Oe),mm()]),G0=$[he],ur=G0[0],mn=G0[1],[4,ur];case 2:return ur=Qf.sent(),Er&&setTimeout(or,r.dedupingInterval),!$[he]||$[he][1]!==mn?(Er&&yr()&&ve().onDiscarded(he),[2,!1]):(Ne({error:za}),ya.error=za,Xf=G[he],!Xa(Xf)&&(mn<=Xf[0]||mn<=Xf[1]||Xf[1]===0)?(K0(),Er&&yr()&&ve().onDiscarded(he),[2,!1]):(a(Ut.current.data,ur)?ya.data=Ut.current.data:ya.data=ur,a(n.get(he),ur)||n.set(he,ur),Er&&yr()&&ve().onSuccess(ur,he,r),[3,4]));case 3:return Wc=Qf.sent(),or(),ve().isPaused()||(Ne({error:Wc}),ya.error=Wc,Er&&yr()&&(ve().onError(Wc,he,r),(typeof r.shouldRetryOnError=="boolean"&&r.shouldRetryOnError||Dc(r.shouldRetryOnError)&&r.shouldRetryOnError(Wc))&&me()&&ve().onErrorRetry(Wc,he,r,Xt,{retryCount:(vr.retryCount||0)+1,dedupe:!0}))),[3,4];case 4:return hr=!1,K0(),yr()&&Er&&s0(n,he,ya.data,ya.error,!1),[2,!0]}})})},[he]),lr=(0,ba.useCallback)(N7.bind(za,n,function(){return tt.current}),[]);if(i0(function(){He.current=t,Y.current=r}),i0(function(){if(he){var nr=he!==tt.current,Sn=Xt.bind(za,_m),ur=function(yr,or,ya){rr(Uo({error:or,isValidating:ya},a(Ut.current.data,yr)?za:{data:yr}))},mn=0,hr=function(yr){if(yr==I7){var or=Date.now();ve().revalidateOnFocus&&or>mn&&me()&&(mn=or+ve().focusThrottleInterval,Sn())}else if(yr==C7)ve().revalidateOnReconnect&&me()&&Sn();else if(yr==O7)return Xt()},vr=U7(he,j,ur),Er=U7(he,M,hr);return ht.current=!1,tt.current=he,et.current=!0,nr&&rr({data:je,error:ue,isValidating:At}),Ze()&&(Xa(je)||Np?Sn():ZL(Sn)),function(){ht.current=!0,vr(),Er()}}},[he,Xt]),i0(function(){var nr;function Sn(){var mn=Dc(c)?c(je):c;mn&&nr!==-1&&(nr=setTimeout(ur,mn))}function ur(){!Ut.current.error&&(d||ve().isVisible())&&(l||ve().isOnline())?Xt(_m).then(Sn):Sn()}return Sn(),function(){nr&&(clearTimeout(nr),nr=-1)}},[c,d,l,Xt]),(0,ba.useDebugValue)(je),s&&Xa(je)&&he)throw He.current=t,Y.current=r,ht.current=!1,Xa(ue)?Xt(_m):ue;return{mutate:lr,get data(){return tr.data=!0,je},get error(){return tr.error=!0,ue},get isValidating(){return tr.isValidating=!0,At}}},Bee=n0.defineProperty(YL,"default",{value:D7}),Pee=function(e){return gm(e)[0]},Dee=eU(tU);function o0(e,t){let[r,n=""]=e.split(".");const a=r.startsWith("-");return a&&(r=r.slice(1)),n.length>t?Number(n[t])>=5?n=(BigInt(n.slice(0,t))+1n).toString().padStart(t,"0"):n=n.slice(0,t):n=n.padEnd(t,"0"),{value:BigInt(`${a?"-":""}${r}${n}`),decimals:t}}const F7=_.string().refine(e=>{if(e.toLowerCase()===e)return!0;try{return bB(e)&&oU(e)}catch{}return!1},"Invalid address (checksum error)"),rU=_.string().refine(e=>{try{return uw(e)}catch{}return!1},"Invalid address (validation error)"),Rp=_.string().regex(/^0x[0-9a-fA-F]+$/,"Invalid address"),nU=Rp.min(50,"Addresses must at least be 50 characters long").max(66,"Addresses must at most be 66 characters long"),aU=Rp.length(66,"Address must be 66 characters long"),sa=nU.pipe(F7).transform(e=>`0x${(e.startsWith("0x")?e.slice(2):e).padStart(64,"0")}`),iU=sa.or(_.literal("")).transform(e=>e===""?void 0:e).optional(),Qn=Rp.transform(e=>`0x${e.replace(/^0x/,"").toLowerCase().padStart(64,"0")}`),Lee=e=>sa.safeParse(e).success,sU=null,Mp=e=>Pr(e),Uee=e=>{const t=Mp(e),r=t.slice(0,2),n=t.slice(2,6),a=t.slice(-4);return`${r}${n}\u2026${a}`},Fee=e=>{const t=Mp(e),r=t.slice(0,2),n=t.slice(2).match(/.{1,4}/g)||[];return`${r} ${n.join(" ")}`},oU=e=>!/^0x[0-9a-f]{63,64}$/.test(e),cU=(e,t)=>{try{return!e||!t?!1:be.hexToDecimalString(e)===be.hexToDecimalString(t)}catch{}return!1},fU=e=>{try{return be.toBigInt(Rp.parse(e))===xe.ZERO}catch{}return!1},Hee=(e,t)=>!!(t!=null&&t.some(r=>cU(r,e))),jee=Y0(e=>{const t=e.slice(0,6),r=e.slice(-4);return`${t}\u2026${r}`}),$ee=Y0((e,t)=>{if(e.lengthBp.safeParse(e).success,lU=(e,t)=>{try{return t?vm(e)===vm(t):!1}catch{}return!1},vm=e=>Bp.parse(e).toLowerCase(),Pp=_.string().regex(/^([a-zA-Z0-9-]+\.)+stark$/,"Invalid Starknet ID").max(50,"Starknet ID cannot be over 50 characters"),hU=e=>Pp.safeParse(e).success,pU=(e,t)=>{try{return t?wm(e)===wm(t):!1}catch{}return!1},wm=e=>Pp.parse(e).toLowerCase(),Em=_.union([Bp,Pp]),zee=_.union([sa,Em]),qee=_.union([dU,Em]),Zee=e=>Em.safeParse(e).success,Kee=(e,t)=>{try{return t?lU(e,t)||pU(e,t):!1}catch{}return!1},Gee=e=>hU(e)?wm(e):uU(e)?vm(e):Mp(e),bU=_.union([_.literal("0"),_.literal("1")]),Wee="0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7",H7="0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d",Yee="0x1a736d6ed154502257f02b1ccdf4d9d1089f80811cd6acad48e6b6a9d1f2003",jd="0x036078334509b514626504edc9fb252328d1a240e4e948bef8d0c08dff45927f",Jee="0x737ee2f87ce571a58c6c8da558ec18a07ceb64a6172d5ec46171fbc80077a48",j7="0x6e150953b26271a740bf2b6e9bca17cc52c68d765f761295de51ceb8526ee72",Xee="0x4d07e40e93398ed3c76981e72dd1fd22557a78ce36c0515f679e27f0bb5bc5f";function gU(e){var t=[];if(e.length===0)return"";if(typeof e[0]!="string")throw new TypeError("Url must be a string. Received "+e[0]);if(e[0].match(/^[^/:]+:\/*$/)&&e.length>1){var r=e.shift();e[0]=r+e[0]}e[0].match(/^file:\/\/\//)?e[0]=e[0].replace(/^([^/:]+):\/*/,"$1:///"):e[0]=e[0].replace(/^([^/:]+):\/*/,"$1://");for(var n=0;n0&&(a=a.replace(/^[\/]+/,"")),n0?"?":"")+s.join("&"),i}function mU(){var e;return typeof arguments[0]=="object"?e=arguments[0]:e=[].slice.call(arguments),gU(e)}class Lc extends Error{constructor({code:t,message:r,options:n={}},a){const{error:i,context:s}=n;super(r,{cause:i}),this.errorMessages=a,this.name="BaseError",this.context=s,this.code=t,this.setMessageByCode(t,r)}setMessageByCode(t,r){!t||!this.errorMessages||r||(this.message=this.errorMessages[t])}toString(){return this.message||""}}var xm;(function(e){e.NOT_VALID="Invalid address",e.NOT_FOUND="Address not found",e.STARKNAME_NOT_FOUND="Stark name not found",e.STARKNAME_ERROR="Could not get address from stark name",e.STARKNAME_INVALID_ADDRESS="Stark name resolved to an invalid address",e.ARGENT_NAME_NOT_FOUND="Argent name not found",e.NO_ADDRESS_FROM_ARGENT_NAME="Could not get address from Argent name",e.ARGENT_NAME_INVALID_ADDRESS="Argent name resolved to an invalid address",e.NO_ADDRESS_FROM_DOMAIN="Could not get address from domain",e.ARGENT_NAME_INVALID_NETWORK="Argent name is not enabled on the requested network"})(xm||(xm={}));class Dp extends Lc{constructor(t){super(t,xm),this.name="AddressError"}}class Am extends Error{constructor(t,r,n){super(t),this.status=r,this.data=n,Object.setPrototypeOf(this,Am.prototype)}}var $7;(function(e){e.FAILED_TO_FETCH_URL="Failed to fetch url",e.FAILED_TO_POST_URL="Failed to post url"})($7||($7={}));const Qee=_.object({walletAddress:Qn,ens:Bp,chain:_.enum(["ethereum","starknet"]),deleted:_.boolean(),walletDeployed:_.boolean()}).or(_.object({status:_.string()}));async function ete(e,t,r,n="starknet"){const a={ens:e,chain:n},i=new URLSearchParams(a),s=mU(r,"wallet",`?${i}`);try{const o=await t.get(s),c=o&&"walletAddress"in o?o.walletAddress:void 0;if(!c)throw new Dp({code:"NO_ADDRESS_FROM_ARGENT_NAME"});if(fU(c))throw new Dp({code:"ARGENT_NAME_NOT_FOUND",message:`${e} not found`});if(!sU(c))throw new Dp({code:"ARGENT_NAME_INVALID_ADDRESS",message:`${e} resolved to an invalid address (${c})`});return Mp(c)}catch(o){throw o instanceof Am&&o.status===404?new Dp({code:"ARGENT_NAME_NOT_FOUND",message:`${e} not found`}):o}}var Tm;(function(e){e.NOT_VALID="Invalid call"})(Tm||(Tm={}));class tte extends Lc{constructor(t){super(t,Tm),this.name="CallError"}}var Sm;(function(e){e.NO_NETWORK_OR_MULTICALL="Missing networkId or multicall",e.NOT_FOUND="Network not found"})(Sm||(Sm={}));class yU extends Lc{constructor(t){super(t,Sm),this.name="NetworkError"}}const c0=_.union([_.string(),_.number(),_.bigint()]),_U=_.object({low:c0,high:c0}),vU=_.array(_.string()).and(_.object({__compiled__:_.boolean().optional()}).optional()),wU=_.lazy(()=>_.array(_.union([Lp,_.array(Lp),km]))),Lp=_.union([c0,_U,_.any(),_.boolean()]),EU=_.lazy(()=>_.record(_.union([Lp,_.array(Lp),km]))),km=_.lazy(()=>_.union([EU,wU])),xU=_.union([km,vU]).optional(),AU=_.lazy(()=>_.object({contractAddress:_.string(),calldata:xU,entrypoint:_.string().optional()})),V7=_.lazy(()=>AU.and(_.object({entrypoint:_.string()}))),fs=_.string().refine(e=>typeof parseInt(e)=="number"),rte=_.tuple([fs]),nte=_.tuple([fs]),ate=_.object({new_threshold:_.string().refine(e=>typeof parseInt(e)=="number"),signers_to_add:_.array(fs)}),ite=_.object({new_threshold:_.string().refine(e=>typeof parseInt(e)=="number"),signers_to_remove:_.array(fs)}),ste=_.object({signer_to_remove:fs,signer_to_add:fs}),ote=_.tuple([fs]),cte=_.tuple([fs]),fte=_.tuple([fs]),dte=_.tuple([fs]).rest(fs),ute=_.object({recipient:sa,amount:_.object({low:c0,high:c0})}),TU=_.string().regex(/^(0x)?[0-9a-fA-F]+$/,"Invalid hex string"),Lf=TU.transform(e=>{const t=e.startsWith("0x")?e.slice(2):e;return`0x${t.length%2===0?t:`0${t}`}`}),lte=_.object({cairoVersion:bU,accountClassHash:Lf}),SU=_.array(_.string()),hte=_.object({implementation:_.string(),selector:Lf,calldata:SU}),pte=_.object({owner:_.string(),guardian:_.string().optional().transform(e=>e??"0")});var z7;(function(e){e.Starknet="Starknet",e.Secp256k1="Secp256k1",e.Secp256r1="Secp256r1",e.Eip191="Eip191",e.Webauthn="Webauthn"})(z7||(z7={}));function bte(e,t){const r={Starknet:void 0,Secp256k1:void 0,Secp256r1:void 0,Eip191:void 0,Webauthn:void 0};return r[t]=e,new jr(r)}var Im;(function(e){e.NOT_FOUND="Account not found",e.CALCULATED_ADDRESS_NO_MATCH="Calculated address does not match account address"})(Im||(Im={}));class gte extends Lc{constructor(t){super(t,Im),this.name="AccountError"}}function mte(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Cm={exports:{}};(function(e,t){t=e.exports=He;var r;typeof process=="object"&&"MISSING_ENV_VAR".NODE_DEBUG&&/\bsemver\b/i.test("MISSING_ENV_VAR".NODE_DEBUG)?r=function(){var Le=Array.prototype.slice.call(arguments,0);Le.unshift("SEMVER"),console.log.apply(console,Le)}:r=function(){},t.SEMVER_SPEC_VERSION="2.0.0";var n=256,a=Number.MAX_SAFE_INTEGER||9007199254740991,i=16,s=n-6,o=t.re=[],c=t.safeRe=[],d=t.src=[],l=t.tokens={},y=0;function M(Le){l[Le]=y++}var j="[a-zA-Z0-9-]",G=[["\\s",1],["\\d",n],[j,s]];function $(Le){for(var rt=0;rt)?=?)",M("XRANGEIDENTIFIERLOOSE"),d[l.XRANGEIDENTIFIERLOOSE]=d[l.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",M("XRANGEIDENTIFIER"),d[l.XRANGEIDENTIFIER]=d[l.NUMERICIDENTIFIER]+"|x|X|\\*",M("XRANGEPLAIN"),d[l.XRANGEPLAIN]="[v=\\s]*("+d[l.XRANGEIDENTIFIER]+")(?:\\.("+d[l.XRANGEIDENTIFIER]+")(?:\\.("+d[l.XRANGEIDENTIFIER]+")(?:"+d[l.PRERELEASE]+")?"+d[l.BUILD]+"?)?)?",M("XRANGEPLAINLOOSE"),d[l.XRANGEPLAINLOOSE]="[v=\\s]*("+d[l.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+d[l.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+d[l.XRANGEIDENTIFIERLOOSE]+")(?:"+d[l.PRERELEASELOOSE]+")?"+d[l.BUILD]+"?)?)?",M("XRANGE"),d[l.XRANGE]="^"+d[l.GTLT]+"\\s*"+d[l.XRANGEPLAIN]+"$",M("XRANGELOOSE"),d[l.XRANGELOOSE]="^"+d[l.GTLT]+"\\s*"+d[l.XRANGEPLAINLOOSE]+"$",M("COERCE"),d[l.COERCE]="(^|[^\\d])(\\d{1,"+i+"})(?:\\.(\\d{1,"+i+"}))?(?:\\.(\\d{1,"+i+"}))?(?:$|[^\\d])",M("COERCERTL"),o[l.COERCERTL]=new RegExp(d[l.COERCE],"g"),c[l.COERCERTL]=new RegExp($(d[l.COERCE]),"g"),M("LONETILDE"),d[l.LONETILDE]="(?:~>?)",M("TILDETRIM"),d[l.TILDETRIM]="(\\s*)"+d[l.LONETILDE]+"\\s+",o[l.TILDETRIM]=new RegExp(d[l.TILDETRIM],"g"),c[l.TILDETRIM]=new RegExp($(d[l.TILDETRIM]),"g");var fe="$1~";M("TILDE"),d[l.TILDE]="^"+d[l.LONETILDE]+d[l.XRANGEPLAIN]+"$",M("TILDELOOSE"),d[l.TILDELOOSE]="^"+d[l.LONETILDE]+d[l.XRANGEPLAINLOOSE]+"$",M("LONECARET"),d[l.LONECARET]="(?:\\^)",M("CARETTRIM"),d[l.CARETTRIM]="(\\s*)"+d[l.LONECARET]+"\\s+",o[l.CARETTRIM]=new RegExp(d[l.CARETTRIM],"g"),c[l.CARETTRIM]=new RegExp($(d[l.CARETTRIM]),"g");var he="$1^";M("CARET"),d[l.CARET]="^"+d[l.LONECARET]+d[l.XRANGEPLAIN]+"$",M("CARETLOOSE"),d[l.CARETLOOSE]="^"+d[l.LONECARET]+d[l.XRANGEPLAINLOOSE]+"$",M("COMPARATORLOOSE"),d[l.COMPARATORLOOSE]="^"+d[l.GTLT]+"\\s*("+d[l.LOOSEPLAIN]+")$|^$",M("COMPARATOR"),d[l.COMPARATOR]="^"+d[l.GTLT]+"\\s*("+d[l.FULLPLAIN]+")$|^$",M("COMPARATORTRIM"),d[l.COMPARATORTRIM]="(\\s*)"+d[l.GTLT]+"\\s*("+d[l.LOOSEPLAIN]+"|"+d[l.XRANGEPLAIN]+")",o[l.COMPARATORTRIM]=new RegExp(d[l.COMPARATORTRIM],"g"),c[l.COMPARATORTRIM]=new RegExp($(d[l.COMPARATORTRIM]),"g");var Oe="$1$2$3";M("HYPHENRANGE"),d[l.HYPHENRANGE]="^\\s*("+d[l.XRANGEPLAIN]+")\\s+-\\s+("+d[l.XRANGEPLAIN]+")\\s*$",M("HYPHENRANGELOOSE"),d[l.HYPHENRANGELOOSE]="^\\s*("+d[l.XRANGEPLAINLOOSE]+")\\s+-\\s+("+d[l.XRANGEPLAINLOOSE]+")\\s*$",M("STAR"),d[l.STAR]="(<|>)?=?\\s*\\*";for(var We=0;Wen)return null;var dt=rt.loose?c[l.LOOSE]:c[l.FULL];if(!dt.test(Le))return null;try{return new He(Le,rt)}catch{return null}}t.valid=ht;function ht(Le,rt){var dt=et(Le,rt);return dt?dt.version:null}t.clean=tt;function tt(Le,rt){var dt=et(Le.trim().replace(/^[=v]+/,""),rt);return dt?dt.version:null}t.SemVer=He;function He(Le,rt){if((!rt||typeof rt!="object")&&(rt={loose:!!rt,includePrerelease:!1}),Le instanceof He){if(Le.loose===rt.loose)return Le;Le=Le.version}else if(typeof Le!="string")throw new TypeError("Invalid Version: "+Le);if(Le.length>n)throw new TypeError("version is longer than "+n+" characters");if(!(this instanceof He))return new He(Le,rt);r("SemVer",Le,rt),this.options=rt,this.loose=!!rt.loose;var dt=Le.trim().match(rt.loose?c[l.LOOSE]:c[l.FULL]);if(!dt)throw new TypeError("Invalid Version: "+Le);if(this.raw=Le,this.major=+dt[1],this.minor=+dt[2],this.patch=+dt[3],this.major>a||this.major<0)throw new TypeError("Invalid major version");if(this.minor>a||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>a||this.patch<0)throw new TypeError("Invalid patch version");dt[4]?this.prerelease=dt[4].split(".").map(function(It){if(/^[0-9]+$/.test(It)){var Bt=+It;if(Bt>=0&&Bt=0;)typeof this.prerelease[dt]=="number"&&(this.prerelease[dt]++,dt=-2);dt===-1&&this.prerelease.push(0)}rt&&(this.prerelease[0]===rt?isNaN(this.prerelease[1])&&(this.prerelease=[rt,0]):this.prerelease=[rt,0]);break;default:throw new Error("invalid increment argument: "+Le)}return this.format(),this.raw=this.version,this},t.inc=Y;function Y(Le,rt,dt,It){typeof dt=="string"&&(It=dt,dt=void 0);try{return new He(Le,dt).inc(rt,It).version}catch{return null}}t.diff=ve;function ve(Le,rt){if(rr(Le,rt))return null;var dt=et(Le),It=et(rt),Bt="";if(dt.prerelease.length||It.prerelease.length){Bt="pre";var Qt="prerelease"}for(var ar in dt)if((ar==="major"||ar==="minor"||ar==="patch")&&dt[ar]!==It[ar])return Bt+ar;return Qt}t.compareIdentifiers=Ne;var me=/^[0-9]+$/;function Ne(Le,rt){var dt=me.test(Le),It=me.test(rt);return dt&&It&&(Le=+Le,rt=+rt),Le===rt?0:dt&&!It?-1:It&&!dt?1:Le0}t.lt=tr;function tr(Le,rt,dt){return ue(Le,rt,dt)<0}t.eq=rr;function rr(Le,rt,dt){return ue(Le,rt,dt)===0}t.neq=Xt;function Xt(Le,rt,dt){return ue(Le,rt,dt)!==0}t.gte=lr;function lr(Le,rt,dt){return ue(Le,rt,dt)>=0}t.lte=nr;function nr(Le,rt,dt){return ue(Le,rt,dt)<=0}t.cmp=Sn;function Sn(Le,rt,dt,It){switch(rt){case"===":return typeof Le=="object"&&(Le=Le.version),typeof dt=="object"&&(dt=dt.version),Le===dt;case"!==":return typeof Le=="object"&&(Le=Le.version),typeof dt=="object"&&(dt=dt.version),Le!==dt;case"":case"=":case"==":return rr(Le,dt,It);case"!=":return Xt(Le,dt,It);case">":return Ut(Le,dt,It);case">=":return lr(Le,dt,It);case"<":return tr(Le,dt,It);case"<=":return nr(Le,dt,It);default:throw new TypeError("Invalid operator: "+rt)}}t.Comparator=ur;function ur(Le,rt){if((!rt||typeof rt!="object")&&(rt={loose:!!rt,includePrerelease:!1}),Le instanceof ur){if(Le.loose===!!rt.loose)return Le;Le=Le.value}if(!(this instanceof ur))return new ur(Le,rt);Le=Le.trim().split(/\s+/).join(" "),r("comparator",Le,rt),this.options=rt,this.loose=!!rt.loose,this.parse(Le),this.semver===mn?this.value="":this.value=this.operator+this.semver.version,r("comp",this)}var mn={};ur.prototype.parse=function(Le){var rt=this.options.loose?c[l.COMPARATORLOOSE]:c[l.COMPARATOR],dt=Le.match(rt);if(!dt)throw new TypeError("Invalid comparator: "+Le);this.operator=dt[1]!==void 0?dt[1]:"",this.operator==="="&&(this.operator=""),dt[2]?this.semver=new He(dt[2],this.options.loose):this.semver=mn},ur.prototype.toString=function(){return this.value},ur.prototype.test=function(Le){if(r("Comparator.test",Le,this.options.loose),this.semver===mn||Le===mn)return!0;if(typeof Le=="string")try{Le=new He(Le,this.options)}catch{return!1}return Sn(Le,this.operator,this.semver,this.options)},ur.prototype.intersects=function(Le,rt){if(!(Le instanceof ur))throw new TypeError("a Comparator is required");(!rt||typeof rt!="object")&&(rt={loose:!!rt,includePrerelease:!1});var dt;if(this.operator==="")return this.value===""?!0:(dt=new hr(Le.value,rt),K1(this.value,dt,rt));if(Le.operator==="")return Le.value===""?!0:(dt=new hr(this.value,rt),K1(Le.semver,dt,rt));var It=(this.operator===">="||this.operator===">")&&(Le.operator===">="||Le.operator===">"),Bt=(this.operator==="<="||this.operator==="<")&&(Le.operator==="<="||Le.operator==="<"),Qt=this.semver.version===Le.semver.version,ar=(this.operator===">="||this.operator==="<=")&&(Le.operator===">="||Le.operator==="<="),Nn=Sn(this.semver,"<",Le.semver,rt)&&(this.operator===">="||this.operator===">")&&(Le.operator==="<="||Le.operator==="<"),wn=Sn(this.semver,">",Le.semver,rt)&&(this.operator==="<="||this.operator==="<")&&(Le.operator===">="||Le.operator===">");return It||Bt||Qt&&ar||Nn||wn},t.Range=hr;function hr(Le,rt){if((!rt||typeof rt!="object")&&(rt={loose:!!rt,includePrerelease:!1}),Le instanceof hr)return Le.loose===!!rt.loose&&Le.includePrerelease===!!rt.includePrerelease?Le:new hr(Le.raw,rt);if(Le instanceof ur)return new hr(Le.value,rt);if(!(this instanceof hr))return new hr(Le,rt);if(this.options=rt,this.loose=!!rt.loose,this.includePrerelease=!!rt.includePrerelease,this.raw=Le.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map(function(dt){return this.parseRange(dt.trim())},this).filter(function(dt){return dt.length}),!this.set.length)throw new TypeError("Invalid SemVer Range: "+this.raw);this.format()}hr.prototype.format=function(){return this.range=this.set.map(function(Le){return Le.join(" ").trim()}).join("||").trim(),this.range},hr.prototype.toString=function(){return this.range},hr.prototype.parseRange=function(Le){var rt=this.options.loose,dt=rt?c[l.HYPHENRANGELOOSE]:c[l.HYPHENRANGE];Le=Le.replace(dt,wY),r("hyphen replace",Le),Le=Le.replace(c[l.COMPARATORTRIM],Oe),r("comparator trim",Le,c[l.COMPARATORTRIM]),Le=Le.replace(c[l.TILDETRIM],fe),Le=Le.replace(c[l.CARETTRIM],he),Le=Le.split(/\s+/).join(" ");var It=rt?c[l.COMPARATORLOOSE]:c[l.COMPARATOR],Bt=Le.split(" ").map(function(Qt){return yr(Qt,this.options)},this).join(" ").split(/\s+/);return this.options.loose&&(Bt=Bt.filter(function(Qt){return!!Qt.match(It)})),Bt=Bt.map(function(Qt){return new ur(Qt,this.options)},this),Bt},hr.prototype.intersects=function(Le,rt){if(!(Le instanceof hr))throw new TypeError("a Range is required");return this.set.some(function(dt){return vr(dt,rt)&&Le.set.some(function(It){return vr(It,rt)&&dt.every(function(Bt){return It.every(function(Qt){return Bt.intersects(Qt,rt)})})})})};function vr(Le,rt){for(var dt=!0,It=Le.slice(),Bt=It.pop();dt&&It.length;)dt=It.every(function(Qt){return Bt.intersects(Qt,rt)}),Bt=It.pop();return dt}t.toComparators=Er;function Er(Le,rt){return new hr(Le,rt).set.map(function(dt){return dt.map(function(It){return It.value}).join(" ").trim().split(" ")})}function yr(Le,rt){return r("comp",Le,rt),Le=Xf(Le,rt),r("caret",Le),Le=ya(Le,rt),r("tildes",Le),Le=G0(Le,rt),r("xrange",Le),Le=Z1(Le,rt),r("stars",Le),Le}function or(Le){return!Le||Le.toLowerCase()==="x"||Le==="*"}function ya(Le,rt){return Le.trim().split(/\s+/).map(function(dt){return K0(dt,rt)}).join(" ")}function K0(Le,rt){var dt=rt.loose?c[l.TILDELOOSE]:c[l.TILDE];return Le.replace(dt,function(It,Bt,Qt,ar,Nn){r("tilde",Le,It,Bt,Qt,ar,Nn);var wn;return or(Bt)?wn="":or(Qt)?wn=">="+Bt+".0.0 <"+(+Bt+1)+".0.0":or(ar)?wn=">="+Bt+"."+Qt+".0 <"+Bt+"."+(+Qt+1)+".0":Nn?(r("replaceTilde pr",Nn),wn=">="+Bt+"."+Qt+"."+ar+"-"+Nn+" <"+Bt+"."+(+Qt+1)+".0"):wn=">="+Bt+"."+Qt+"."+ar+" <"+Bt+"."+(+Qt+1)+".0",r("tilde return",wn),wn})}function Xf(Le,rt){return Le.trim().split(/\s+/).map(function(dt){return Wc(dt,rt)}).join(" ")}function Wc(Le,rt){r("caret",Le,rt);var dt=rt.loose?c[l.CARETLOOSE]:c[l.CARET];return Le.replace(dt,function(It,Bt,Qt,ar,Nn){r("caret",Le,It,Bt,Qt,ar,Nn);var wn;return or(Bt)?wn="":or(Qt)?wn=">="+Bt+".0.0 <"+(+Bt+1)+".0.0":or(ar)?Bt==="0"?wn=">="+Bt+"."+Qt+".0 <"+Bt+"."+(+Qt+1)+".0":wn=">="+Bt+"."+Qt+".0 <"+(+Bt+1)+".0.0":Nn?(r("replaceCaret pr",Nn),Bt==="0"?Qt==="0"?wn=">="+Bt+"."+Qt+"."+ar+"-"+Nn+" <"+Bt+"."+Qt+"."+(+ar+1):wn=">="+Bt+"."+Qt+"."+ar+"-"+Nn+" <"+Bt+"."+(+Qt+1)+".0":wn=">="+Bt+"."+Qt+"."+ar+"-"+Nn+" <"+(+Bt+1)+".0.0"):(r("no pr"),Bt==="0"?Qt==="0"?wn=">="+Bt+"."+Qt+"."+ar+" <"+Bt+"."+Qt+"."+(+ar+1):wn=">="+Bt+"."+Qt+"."+ar+" <"+Bt+"."+(+Qt+1)+".0":wn=">="+Bt+"."+Qt+"."+ar+" <"+(+Bt+1)+".0.0"),r("caret return",wn),wn})}function G0(Le,rt){return r("replaceXRanges",Le,rt),Le.split(/\s+/).map(function(dt){return Qf(dt,rt)}).join(" ")}function Qf(Le,rt){Le=Le.trim();var dt=rt.loose?c[l.XRANGELOOSE]:c[l.XRANGE];return Le.replace(dt,function(It,Bt,Qt,ar,Nn,wn){r("xRange",Le,It,Bt,Qt,ar,Nn,wn);var oo=or(Qt),co=oo||or(ar),$i=co||or(Nn),Ai=$i;return Bt==="="&&Ai&&(Bt=""),wn=rt.includePrerelease?"-0":"",oo?Bt===">"||Bt==="<"?It="<0.0.0-0":It="*":Bt&&Ai?(co&&(ar=0),Nn=0,Bt===">"?(Bt=">=",co?(Qt=+Qt+1,ar=0,Nn=0):(ar=+ar+1,Nn=0)):Bt==="<="&&(Bt="<",co?Qt=+Qt+1:ar=+ar+1),It=Bt+Qt+"."+ar+"."+Nn+wn):co?It=">="+Qt+".0.0"+wn+" <"+(+Qt+1)+".0.0"+wn:$i&&(It=">="+Qt+"."+ar+".0"+wn+" <"+Qt+"."+(+ar+1)+".0"+wn),r("xRange return",It),It})}function Z1(Le,rt){return r("replaceStars",Le,rt),Le.trim().replace(c[l.STAR],"")}function wY(Le,rt,dt,It,Bt,Qt,ar,Nn,wn,oo,co,$i,Ai){return or(dt)?rt="":or(It)?rt=">="+dt+".0.0":or(Bt)?rt=">="+dt+"."+It+".0":rt=">="+rt,or(wn)?Nn="":or(oo)?Nn="<"+(+wn+1)+".0.0":or(co)?Nn="<"+wn+"."+(+oo+1)+".0":$i?Nn="<="+wn+"."+oo+"."+co+"-"+$i:Nn="<="+Nn,(rt+" "+Nn).trim()}hr.prototype.test=function(Le){if(!Le)return!1;if(typeof Le=="string")try{Le=new He(Le,this.options)}catch{return!1}for(var rt=0;rt0){var Bt=Le[It].semver;if(Bt.major===rt.major&&Bt.minor===rt.minor&&Bt.patch===rt.patch)return!0}return!1}return!0}t.satisfies=K1;function K1(Le,rt,dt){try{rt=new hr(rt,dt)}catch{return!1}return rt.test(Le)}t.maxSatisfying=xY;function xY(Le,rt,dt){var It=null,Bt=null;try{var Qt=new hr(rt,dt)}catch{return null}return Le.forEach(function(ar){Qt.test(ar)&&(!It||Bt.compare(ar)===-1)&&(It=ar,Bt=new He(It,dt))}),It}t.minSatisfying=AY;function AY(Le,rt,dt){var It=null,Bt=null;try{var Qt=new hr(rt,dt)}catch{return null}return Le.forEach(function(ar){Qt.test(ar)&&(!It||Bt.compare(ar)===1)&&(It=ar,Bt=new He(It,dt))}),It}t.minVersion=TY;function TY(Le,rt){Le=new hr(Le,rt);var dt=new He("0.0.0");if(Le.test(dt)||(dt=new He("0.0.0-0"),Le.test(dt)))return dt;dt=null;for(var It=0;It":ar.prerelease.length===0?ar.patch++:ar.prerelease.push(0),ar.raw=ar.format();case"":case">=":(!dt||Ut(dt,ar))&&(dt=ar);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+Qt.operator)}})}return dt&&Le.test(dt)?dt:null}t.validRange=SY;function SY(Le,rt){try{return new hr(Le,rt).range||"*"}catch{return null}}t.ltr=kY;function kY(Le,rt,dt){return a6(Le,rt,"<",dt)}t.gtr=IY;function IY(Le,rt,dt){return a6(Le,rt,">",dt)}t.outside=a6;function a6(Le,rt,dt,It){Le=new He(Le,It),rt=new hr(rt,It);var Bt,Qt,ar,Nn,wn;switch(dt){case">":Bt=Ut,Qt=nr,ar=tr,Nn=">",wn=">=";break;case"<":Bt=tr,Qt=lr,ar=Ut,Nn="<",wn="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(K1(Le,rt,It))return!1;for(var oo=0;oo=0.0.0")),$i=$i||Yc,Ai=Ai||Yc,Bt(Yc.semver,$i.semver,It)?$i=Yc:ar(Yc.semver,Ai.semver,It)&&(Ai=Yc)}),$i.operator===Nn||$i.operator===wn||(!Ai.operator||Ai.operator===Nn)&&Qt(Le,Ai.semver)||Ai.operator===wn&&ar(Le,Ai.semver))return!1}return!0}t.prerelease=CY;function CY(Le,rt){var dt=et(Le,rt);return dt&&dt.prerelease.length?dt.prerelease:null}t.intersects=OY;function OY(Le,rt,dt){return Le=new hr(Le,dt),rt=new hr(rt,dt),Le.intersects(rt)}t.coerce=NY;function NY(Le,rt){if(Le instanceof He)return Le;if(typeof Le=="number"&&(Le=String(Le)),typeof Le!="string")return null;rt=rt||{};var dt=null;if(!rt.rtl)dt=Le.match(c[l.COERCE]);else{for(var It;(It=c[l.COERCERTL].exec(Le))&&(!dt||dt.index+dt[0].length!==Le.length);)(!dt||It.index+It[0].length!==dt.index+dt[0].length)&&(dt=It),c[l.COERCERTL].lastIndex=It.index+It[1].length+It[2].length;c[l.COERCERTL].lastIndex=-1}return dt===null?null:et(dt[2]+"."+(dt[3]||"0")+"."+(dt[4]||"0"),rt)}})(Cm,Cm.exports);var yte=Cm.exports;const _te=null,vte=e=>e==null?[]:Array.isArray(e)?e:[e],wte=_.any().refine(e=>typeof e=="bigint",{message:"Value must be a BigInt"}).transform(e=>BigInt(e));var kU=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,Om=Math.ceil,Mi=Math.floor,ai="[BigNumber Error] ",q7=ai+"Number primitive has more than 15 significant digits: ",_s=1e14,pn=14,Nm=9007199254740991,Rm=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],Uc=1e7,Ra=1e9;function Z7(e){var t,r,n,a=Oe.prototype={constructor:Oe,toString:null,valueOf:null},i=new Oe(1),s=20,o=4,c=-7,d=21,l=-1e7,y=1e7,M=!1,j=1,G=0,$={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},fe="0123456789abcdefghijklmnopqrstuvwxyz",he=!0;function Oe(Y,ve){var me,Ne,qe,Je,je,X,ue,Ue,Ze=this;if(!(Ze instanceof Oe))return new Oe(Y,ve);if(ve==null){if(Y&&Y._isBigNumber===!0){Ze.s=Y.s,!Y.c||Y.e>y?Ze.c=Ze.e=null:Y.e=10;je/=10,Je++);Je>y?Ze.c=Ze.e=null:(Ze.e=Je,Ze.c=[Y]);return}Ue=String(Y)}else{if(!kU.test(Ue=String(Y)))return n(Ze,Ue,X);Ze.s=Ue.charCodeAt(0)==45?(Ue=Ue.slice(1),-1):1}(Je=Ue.indexOf("."))>-1&&(Ue=Ue.replace(".","")),(je=Ue.search(/e/i))>0?(Je<0&&(Je=je),Je+=+Ue.slice(je+1),Ue=Ue.substring(0,je)):Je<0&&(Je=Ue.length)}else{if(da(ve,2,fe.length,"Base"),ve==10&&he)return Ze=new Oe(Y),tt(Ze,s+Ze.e+1,o);if(Ue=String(Y),X=typeof Y=="number"){if(Y*0!=0)return n(Ze,Ue,X,ve);if(Ze.s=1/Y<0?(Ue=Ue.slice(1),-1):1,Oe.DEBUG&&Ue.replace(/^0\.0*|\./,"").length>15)throw Error(q7+Y)}else Ze.s=Ue.charCodeAt(0)===45?(Ue=Ue.slice(1),-1):1;for(me=fe.slice(0,ve),Je=je=0,ue=Ue.length;jeJe){Je=ue;continue}}else if(!qe&&(Ue==Ue.toUpperCase()&&(Ue=Ue.toLowerCase())||Ue==Ue.toLowerCase()&&(Ue=Ue.toUpperCase()))){qe=!0,je=-1,Je=0;continue}return n(Ze,String(Y),X,ve)}X=!1,Ue=r(Ue,ve,10,Ze.s),(Je=Ue.indexOf("."))>-1?Ue=Ue.replace(".",""):Je=Ue.length}for(je=0;Ue.charCodeAt(je)===48;je++);for(ue=Ue.length;Ue.charCodeAt(--ue)===48;);if(Ue=Ue.slice(je,++ue)){if(ue-=je,X&&Oe.DEBUG&&ue>15&&(Y>Nm||Y!==Mi(Y)))throw Error(q7+Ze.s*Y);if((Je=Je-je-1)>y)Ze.c=Ze.e=null;else if(Je=-Ra&&qe<=Ra&&qe===Mi(qe)){if(Ne[0]===0){if(qe===0&&Ne.length===1)return!0;break e}if(ve=(qe+1)%pn,ve<1&&(ve+=pn),String(Ne[0]).length==ve){for(ve=0;ve=_s||me!==Mi(me))break e;if(me!==0)return!0}}}else if(Ne===null&&qe===null&&(Je===null||Je===1||Je===-1))return!0;throw Error(ai+"Invalid BigNumber: "+Y)},Oe.maximum=Oe.max=function(){return et(arguments,-1)},Oe.minimum=Oe.min=function(){return et(arguments,1)},Oe.random=function(){var Y=9007199254740992,ve=Math.random()*Y&2097151?function(){return Mi(Math.random()*Y)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(me){var Ne,qe,Je,je,X,ue=0,Ue=[],Ze=new Oe(i);if(me==null?me=s:da(me,0,Ra),je=Om(me/pn),M)if(crypto.getRandomValues){for(Ne=crypto.getRandomValues(new Uint32Array(je*=2));ue>>11),X>=9e15?(qe=crypto.getRandomValues(new Uint32Array(2)),Ne[ue]=qe[0],Ne[ue+1]=qe[1]):(Ue.push(X%1e14),ue+=2);ue=je/2}else if(crypto.randomBytes){for(Ne=crypto.randomBytes(je*=7);ue=9e15?crypto.randomBytes(7).copy(Ne,ue):(Ue.push(X%1e14),ue+=7);ue=je/7}else throw M=!1,Error(ai+"crypto unavailable");if(!M)for(;ue=10;X/=10,ue++);ueqe-1&&(X[je+1]==null&&(X[je+1]=0),X[je+1]+=X[je]/qe|0,X[je]%=qe)}return X.reverse()}return function(me,Ne,qe,Je,je){var X,ue,Ue,Ze,ct,At,Ot,Ut,tr=me.indexOf("."),rr=s,Xt=o;for(tr>=0&&(Ze=G,G=0,me=me.replace(".",""),Ut=new Oe(Ne),At=Ut.pow(me.length-tr),G=Ze,Ut.c=ve(Fo(Pi(At.c),At.e,"0"),10,qe,Y),Ut.e=Ut.c.length),Ot=ve(me,Ne,qe,je?(X=fe,Y):(X=Y,fe)),Ue=Ze=Ot.length;Ot[--Ze]==0;Ot.pop());if(!Ot[0])return X.charAt(0);if(tr<0?--Ue:(At.c=Ot,At.e=Ue,At.s=Je,At=t(At,Ut,rr,Xt,qe),Ot=At.c,ct=At.r,Ue=At.e),ue=Ue+rr+1,tr=Ot[ue],Ze=qe/2,ct=ct||ue<0||Ot[ue+1]!=null,ct=Xt<4?(tr!=null||ct)&&(Xt==0||Xt==(At.s<0?3:2)):tr>Ze||tr==Ze&&(Xt==4||ct||Xt==6&&Ot[ue-1]&1||Xt==(At.s<0?8:7)),ue<1||!Ot[0])me=ct?Fo(X.charAt(1),-rr,X.charAt(0)):X.charAt(0);else{if(Ot.length=ue,ct)for(--qe;++Ot[--ue]>qe;)Ot[ue]=0,ue||(++Ue,Ot=[1].concat(Ot));for(Ze=Ot.length;!Ot[--Ze];);for(tr=0,me="";tr<=Ze;me+=X.charAt(Ot[tr++]));me=Fo(me,Ue,X.charAt(0))}return me}}(),t=function(){function Y(Ne,qe,Je){var je,X,ue,Ue,Ze=0,ct=Ne.length,At=qe%Uc,Ot=qe/Uc|0;for(Ne=Ne.slice();ct--;)ue=Ne[ct]%Uc,Ue=Ne[ct]/Uc|0,je=Ot*ue+Ue*At,X=At*ue+je%Uc*Uc+Ze,Ze=(X/Je|0)+(je/Uc|0)+Ot*Ue,Ne[ct]=X%Je;return Ze&&(Ne=[Ze].concat(Ne)),Ne}function ve(Ne,qe,Je,je){var X,ue;if(Je!=je)ue=Je>je?1:-1;else for(X=ue=0;Xqe[X]?1:-1;break}return ue}function me(Ne,qe,Je,je){for(var X=0;Je--;)Ne[Je]-=X,X=Ne[Je]1;Ne.splice(0,1));}return function(Ne,qe,Je,je,X){var ue,Ue,Ze,ct,At,Ot,Ut,tr,rr,Xt,lr,nr,Sn,ur,mn,hr,vr,Er=Ne.s==qe.s?1:-1,yr=Ne.c,or=qe.c;if(!yr||!yr[0]||!or||!or[0])return new Oe(!Ne.s||!qe.s||(yr?or&&yr[0]==or[0]:!or)?NaN:yr&&yr[0]==0||!or?Er*0:Er/0);for(tr=new Oe(Er),rr=tr.c=[],Ue=Ne.e-qe.e,Er=Je+Ue+1,X||(X=_s,Ue=Bi(Ne.e/pn)-Bi(qe.e/pn),Er=Er/pn|0),Ze=0;or[Ze]==(yr[Ze]||0);Ze++);if(or[Ze]>(yr[Ze]||0)&&Ue--,Er<0)rr.push(1),ct=!0;else{for(ur=yr.length,hr=or.length,Ze=0,Er+=2,At=Mi(X/(or[0]+1)),At>1&&(or=Y(or,At,X),yr=Y(yr,At,X),hr=or.length,ur=yr.length),Sn=hr,Xt=yr.slice(0,hr),lr=Xt.length;lr=X/2&&mn++;do{if(At=0,ue=ve(or,Xt,hr,lr),ue<0){if(nr=Xt[0],hr!=lr&&(nr=nr*X+(Xt[1]||0)),At=Mi(nr/mn),At>1)for(At>=X&&(At=X-1),Ot=Y(or,At,X),Ut=Ot.length,lr=Xt.length;ve(Ot,Xt,Ut,lr)==1;)At--,me(Ot,hr=10;Er/=10,Ze++);tt(tr,Je+(tr.e=Ze+Ue*pn-1)+1,je,ct)}else tr.e=Ue,tr.r=+ct;return tr}}();function We(Y,ve,me,Ne){var qe,Je,je,X,ue;if(me==null?me=o:da(me,0,8),!Y.c)return Y.toString();if(qe=Y.c[0],je=Y.e,ve==null)ue=Pi(Y.c),ue=Ne==1||Ne==2&&(je<=c||je>=d)?Fp(ue,je):Fo(ue,je,"0");else if(Y=tt(new Oe(Y),ve,me),Je=Y.e,ue=Pi(Y.c),X=ue.length,Ne==1||Ne==2&&(ve<=Je||Je<=c)){for(;XX){if(--ve>0)for(ue+=".";ve--;ue+="0");}else if(ve+=Je-X,ve>0)for(Je+1==X&&(ue+=".");ve--;ue+="0");return Y.s<0&&qe?"-"+ue:ue}function et(Y,ve){for(var me,Ne,qe=1,Je=new Oe(Y[0]);qe=10;qe/=10,Ne++);return(me=Ne+me*pn-1)>y?Y.c=Y.e=null:me=10;X/=10,qe++);if(Je=ve-qe,Je<0)Je+=pn,je=ve,ue=ct[Ue=0],Ze=Mi(ue/At[qe-je-1]%10);else if(Ue=Om((Je+1)/pn),Ue>=ct.length)if(Ne){for(;ct.length<=Ue;ct.push(0));ue=Ze=0,qe=1,Je%=pn,je=Je-pn+1}else break e;else{for(ue=X=ct[Ue],qe=1;X>=10;X/=10,qe++);Je%=pn,je=Je-pn+qe,Ze=je<0?0:Mi(ue/At[qe-je-1]%10)}if(Ne=Ne||ve<0||ct[Ue+1]!=null||(je<0?ue:ue%At[qe-je-1]),Ne=me<4?(Ze||Ne)&&(me==0||me==(Y.s<0?3:2)):Ze>5||Ze==5&&(me==4||Ne||me==6&&(Je>0?je>0?ue/At[qe-je]:0:ct[Ue-1])%10&1||me==(Y.s<0?8:7)),ve<1||!ct[0])return ct.length=0,Ne?(ve-=Y.e+1,ct[0]=At[(pn-ve%pn)%pn],Y.e=-ve||0):ct[0]=Y.e=0,Y;if(Je==0?(ct.length=Ue,X=1,Ue--):(ct.length=Ue+1,X=At[pn-Je],ct[Ue]=je>0?Mi(ue/At[qe-je]%At[je])*X:0),Ne)for(;;)if(Ue==0){for(Je=1,je=ct[0];je>=10;je/=10,Je++);for(je=ct[0]+=X,X=1;je>=10;je/=10,X++);Je!=X&&(Y.e++,ct[0]==_s&&(ct[0]=1));break}else{if(ct[Ue]+=X,ct[Ue]!=_s)break;ct[Ue--]=0,X=1}for(Je=ct.length;ct[--Je]===0;ct.pop());}Y.e>y?Y.c=Y.e=null:Y.e=d?Fp(ve,me):Fo(ve,me,"0"),Y.s<0?"-"+ve:ve)}return a.absoluteValue=a.abs=function(){var Y=new Oe(this);return Y.s<0&&(Y.s=1),Y},a.comparedTo=function(Y,ve){return Uf(this,new Oe(Y,ve))},a.decimalPlaces=a.dp=function(Y,ve){var me,Ne,qe,Je=this;if(Y!=null)return da(Y,0,Ra),ve==null?ve=o:da(ve,0,8),tt(new Oe(Je),Y+Je.e+1,ve);if(!(me=Je.c))return null;if(Ne=((qe=me.length-1)-Bi(this.e/pn))*pn,qe=me[qe])for(;qe%10==0;qe/=10,Ne--);return Ne<0&&(Ne=0),Ne},a.dividedBy=a.div=function(Y,ve){return t(this,new Oe(Y,ve),s,o)},a.dividedToIntegerBy=a.idiv=function(Y,ve){return t(this,new Oe(Y,ve),0,1)},a.exponentiatedBy=a.pow=function(Y,ve){var me,Ne,qe,Je,je,X,ue,Ue,Ze,ct=this;if(Y=new Oe(Y),Y.c&&!Y.isInteger())throw Error(ai+"Exponent not an integer: "+He(Y));if(ve!=null&&(ve=new Oe(ve)),X=Y.e>14,!ct.c||!ct.c[0]||ct.c[0]==1&&!ct.e&&ct.c.length==1||!Y.c||!Y.c[0])return Ze=new Oe(Math.pow(+He(ct),X?Y.s*(2-Up(Y)):+He(Y))),ve?Ze.mod(ve):Ze;if(ue=Y.s<0,ve){if(ve.c?!ve.c[0]:!ve.s)return new Oe(NaN);Ne=!ue&&ct.isInteger()&&ve.isInteger(),Ne&&(ct=ct.mod(ve))}else{if(Y.e>9&&(ct.e>0||ct.e<-1||(ct.e==0?ct.c[0]>1||X&&ct.c[1]>=24e7:ct.c[0]<8e13||X&&ct.c[0]<=9999975e7)))return Je=ct.s<0&&Up(Y)?-0:0,ct.e>-1&&(Je=1/Je),new Oe(ue?1/Je:Je);G&&(Je=Om(G/pn+2))}for(X?(me=new Oe(.5),ue&&(Y.s=1),Ue=Up(Y)):(qe=Math.abs(+He(Y)),Ue=qe%2),Ze=new Oe(i);;){if(Ue){if(Ze=Ze.times(ct),!Ze.c)break;Je?Ze.c.length>Je&&(Ze.c.length=Je):Ne&&(Ze=Ze.mod(ve))}if(qe){if(qe=Mi(qe/2),qe===0)break;Ue=qe%2}else if(Y=Y.times(me),tt(Y,Y.e+1,1),Y.e>14)Ue=Up(Y);else{if(qe=+He(Y),qe===0)break;Ue=qe%2}ct=ct.times(ct),Je?ct.c&&ct.c.length>Je&&(ct.c.length=Je):Ne&&(ct=ct.mod(ve))}return Ne?Ze:(ue&&(Ze=i.div(Ze)),ve?Ze.mod(ve):Je?tt(Ze,G,o,je):Ze)},a.integerValue=function(Y){var ve=new Oe(this);return Y==null?Y=o:da(Y,0,8),tt(ve,ve.e+1,Y)},a.isEqualTo=a.eq=function(Y,ve){return Uf(this,new Oe(Y,ve))===0},a.isFinite=function(){return!!this.c},a.isGreaterThan=a.gt=function(Y,ve){return Uf(this,new Oe(Y,ve))>0},a.isGreaterThanOrEqualTo=a.gte=function(Y,ve){return(ve=Uf(this,new Oe(Y,ve)))===1||ve===0},a.isInteger=function(){return!!this.c&&Bi(this.e/pn)>this.c.length-2},a.isLessThan=a.lt=function(Y,ve){return Uf(this,new Oe(Y,ve))<0},a.isLessThanOrEqualTo=a.lte=function(Y,ve){return(ve=Uf(this,new Oe(Y,ve)))===-1||ve===0},a.isNaN=function(){return!this.s},a.isNegative=function(){return this.s<0},a.isPositive=function(){return this.s>0},a.isZero=function(){return!!this.c&&this.c[0]==0},a.minus=function(Y,ve){var me,Ne,qe,Je,je=this,X=je.s;if(Y=new Oe(Y,ve),ve=Y.s,!X||!ve)return new Oe(NaN);if(X!=ve)return Y.s=-ve,je.plus(Y);var ue=je.e/pn,Ue=Y.e/pn,Ze=je.c,ct=Y.c;if(!ue||!Ue){if(!Ze||!ct)return Ze?(Y.s=-ve,Y):new Oe(ct?je:NaN);if(!Ze[0]||!ct[0])return ct[0]?(Y.s=-ve,Y):new Oe(Ze[0]?je:o==3?-0:0)}if(ue=Bi(ue),Ue=Bi(Ue),Ze=Ze.slice(),X=ue-Ue){for((Je=X<0)?(X=-X,qe=Ze):(Ue=ue,qe=ct),qe.reverse(),ve=X;ve--;qe.push(0));qe.reverse()}else for(Ne=(Je=(X=Ze.length)<(ve=ct.length))?X:ve,X=ve=0;ve0)for(;ve--;Ze[me++]=0);for(ve=_s-1;Ne>X;){if(Ze[--Ne]=0;){for(me=0,At=nr[qe]%rr,Ot=nr[qe]/rr|0,je=ue,Je=qe+je;Je>qe;)Ue=lr[--je]%rr,Ze=lr[je]/rr|0,X=Ot*Ue+Ze*At,Ue=At*Ue+X%rr*rr+Ut[Je]+me,me=(Ue/tr|0)+(X/rr|0)+Ot*Ze,Ut[Je--]=Ue%tr;Ut[Je]=me}return me?++Ne:Ut.splice(0,1),ht(Y,Ut,Ne)},a.negated=function(){var Y=new Oe(this);return Y.s=-Y.s||null,Y},a.plus=function(Y,ve){var me,Ne=this,qe=Ne.s;if(Y=new Oe(Y,ve),ve=Y.s,!qe||!ve)return new Oe(NaN);if(qe!=ve)return Y.s=-ve,Ne.minus(Y);var Je=Ne.e/pn,je=Y.e/pn,X=Ne.c,ue=Y.c;if(!Je||!je){if(!X||!ue)return new Oe(qe/0);if(!X[0]||!ue[0])return ue[0]?Y:new Oe(X[0]?Ne:qe*0)}if(Je=Bi(Je),je=Bi(je),X=X.slice(),qe=Je-je){for(qe>0?(je=Je,me=ue):(qe=-qe,me=X),me.reverse();qe--;me.push(0));me.reverse()}for(qe=X.length,ve=ue.length,qe-ve<0&&(me=ue,ue=X,X=me,ve=qe),qe=0;ve;)qe=(X[--ve]=X[ve]+ue[ve]+qe)/_s|0,X[ve]=_s===X[ve]?0:X[ve]%_s;return qe&&(X=[qe].concat(X),++je),ht(Y,X,je)},a.precision=a.sd=function(Y,ve){var me,Ne,qe,Je=this;if(Y!=null&&Y!==!!Y)return da(Y,1,Ra),ve==null?ve=o:da(ve,0,8),tt(new Oe(Je),Y,ve);if(!(me=Je.c))return null;if(qe=me.length-1,Ne=qe*pn+1,qe=me[qe]){for(;qe%10==0;qe/=10,Ne--);for(qe=me[0];qe>=10;qe/=10,Ne++);}return Y&&Je.e+1>Ne&&(Ne=Je.e+1),Ne},a.shiftedBy=function(Y){return da(Y,-Nm,Nm),this.times("1e"+Y)},a.squareRoot=a.sqrt=function(){var Y,ve,me,Ne,qe,Je=this,je=Je.c,X=Je.s,ue=Je.e,Ue=s+4,Ze=new Oe("0.5");if(X!==1||!je||!je[0])return new Oe(!X||X<0&&(!je||je[0])?NaN:je?Je:1/0);if(X=Math.sqrt(+He(Je)),X==0||X==1/0?(ve=Pi(je),(ve.length+ue)%2==0&&(ve+="0"),X=Math.sqrt(+ve),ue=Bi((ue+1)/2)-(ue<0||ue%2),X==1/0?ve="5e"+ue:(ve=X.toExponential(),ve=ve.slice(0,ve.indexOf("e")+1)+ue),me=new Oe(ve)):me=new Oe(X+""),me.c[0]){for(ue=me.e,X=ue+Ue,X<3&&(X=0);;)if(qe=me,me=Ze.times(qe.plus(t(Je,qe,Ue,1))),Pi(qe.c).slice(0,X)===(ve=Pi(me.c)).slice(0,X))if(me.e0&&Ut>0){for(Je=Ut%X||X,Ze=Ot.substr(0,Je);Je0&&(Ze+=Ue+Ot.slice(Je)),At&&(Ze="-"+Ze)}Ne=ct?Ze+(me.decimalSeparator||"")+((ue=+me.fractionGroupSize)?ct.replace(new RegExp("\\d{"+ue+"}\\B","g"),"$&"+(me.fractionGroupSeparator||"")):ct):Ze}return(me.prefix||"")+Ne+(me.suffix||"")},a.toFraction=function(Y){var ve,me,Ne,qe,Je,je,X,ue,Ue,Ze,ct,At,Ot=this,Ut=Ot.c;if(Y!=null&&(X=new Oe(Y),!X.isInteger()&&(X.c||X.s!==1)||X.lt(i)))throw Error(ai+"Argument "+(X.isInteger()?"out of range: ":"not an integer: ")+He(X));if(!Ut)return new Oe(Ot);for(ve=new Oe(i),Ue=me=new Oe(i),Ne=ue=new Oe(i),At=Pi(Ut),Je=ve.e=At.length-Ot.e-1,ve.c[0]=Rm[(je=Je%pn)<0?pn+je:je],Y=!Y||X.comparedTo(ve)>0?Je>0?ve:Ue:X,je=y,y=1/0,X=new Oe(At),ue.c[0]=0;Ze=t(X,ve,0,1),qe=me.plus(Ze.times(Ne)),qe.comparedTo(Y)!=1;)me=Ne,Ne=qe,Ue=ue.plus(Ze.times(qe=Ue)),ue=qe,ve=X.minus(Ze.times(qe=ve)),X=qe;return qe=t(Y.minus(me),Ne,0,1),ue=ue.plus(qe.times(Ue)),me=me.plus(qe.times(Ne)),ue.s=Ue.s=Ot.s,Je=Je*2,ct=t(Ue,Ne,Je,o).minus(Ot).abs().comparedTo(t(ue,me,Je,o).minus(Ot).abs())<1?[Ue,Ne]:[ue,me],y=je,ct},a.toNumber=function(){return+He(this)},a.toPrecision=function(Y,ve){return Y!=null&&da(Y,1,Ra),We(this,Y,ve,2)},a.toString=function(Y){var ve,me=this,Ne=me.s,qe=me.e;return qe===null?Ne?(ve="Infinity",Ne<0&&(ve="-"+ve)):ve="NaN":(Y==null?ve=qe<=c||qe>=d?Fp(Pi(me.c),qe):Fo(Pi(me.c),qe,"0"):Y===10&&he?(me=tt(new Oe(me),s+qe+1,o),ve=Fo(Pi(me.c),me.e,"0")):(da(Y,2,fe.length,"Base"),ve=r(Fo(Pi(me.c),qe,"0"),10,Y,Ne,!0)),Ne<0&&me.c[0]&&(ve="-"+ve)),ve},a.valueOf=a.toJSON=function(){return He(this)},a._isBigNumber=!0,a[Symbol.toStringTag]="BigNumber",a[Symbol.for("nodejs.util.inspect.custom")]=a.valueOf,e!=null&&Oe.set(e),Oe}function Bi(e){var t=e|0;return e>0||e===t?t:t-1}function Pi(e){for(var t,r,n=1,a=e.length,i=e[0]+"";nd^r?1:-1;for(o=(c=a.length)<(d=i.length)?c:d,s=0;si[s]^r?1:-1;return c==d?0:c>d^r?1:-1}function da(e,t,r,n){if(er||e!==Mi(e))throw Error(ai+(n||"Argument")+(typeof e=="number"?er?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function Up(e){var t=e.c.length-1;return Bi(e.e/pn)==t&&e.c[t]%2!=0}function Fp(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function Fo(e,t,r){var n,a;if(t<0){for(a=r+".";++t;a+=r);e=a+e}else if(n=e.length,++t>n){for(a=r,t-=n;--t;a+=r);e+=a}else tString(e)),Ate=_.string().transform(e=>e==="true");var Mm;(function(e){e[e.function=0]="function",e[e.l1_handler=1]="l1_handler",e[e.constructor=2]="constructor"})(Mm||(Mm={}));const K7=_.array(_.string()),Bm=_.object({selector:_.string(),offset:_.string(),builtins:K7.optional()}),G7=_.object({CONSTRUCTOR:_.array(Bm),EXTERNAL:_.array(Bm),L1_HANDLER:_.array(Bm)}),Tte=_.string(),IU=_.object({builtins:K7,data:_.array(_.string())}),Pm=_.object({name:_.string(),type:_.union([_.literal("felt"),_.literal("felt*"),_.string()])}),CU=_.nativeEnum(Mm),OU=_.object({inputs:_.array(Pm),name:_.string(),outputs:_.array(Pm),stateMutability:_.literal("view").optional(),state_mutability:_.string().optional(),type:CU}),Dm=_.object({name:_.string(),type:_.union([_.literal("felt"),_.literal("felt*"),_.string()]),kind:_.union([_.literal("key"),_.literal("data")])}),NU=_.object({name:_.string(),type:_.literal("event"),data:_.array(Dm),keys:_.array(Dm)}),RU=_.object({name:_.string(),members:_.array(Dm),kind:_.literal("struct"),type:_.literal("event")}),MU=_.object({members:_.array(Pm.and(_.object({offset:_.number()}))),name:_.string(),size:_.number(),type:_.literal("struct")}),BU=_.union([RU,NU]),W7=_.array(_.union([OU,BU,MU,_.any()])),PU=_.object({program:IU,entry_points_by_type:G7,abi:W7}),Y7=_.array(_.string()),DU=_.object({type_names:_.array(_.tuple([_.number(),_.string()])),libfunc_names:_.array(_.tuple([_.number(),_.string()])),user_func_names:_.array(_.tuple([_.number(),_.string()]))}),Lm=_.object({selector:_.string(),function_idx:_.number()}),LU=_.object({CONSTRUCTOR:_.array(Lm),EXTERNAL:_.array(Lm),L1_HANDLER:_.array(Lm)}),UU=_.object({sierra_program:Y7,sierra_program_debug_info:DU.optional(),contract_class_version:_.string(),entry_points_by_type:LU,abi:W7}),FU=_.array(_.tuple([_.number(),_.array(_.string())])),Ste=_.object({prime:_.string(),compiler_version:_.string(),bytecode:Y7,hints:_.array(_.any()),pythonic_hints:FU,entry_points_by_type:G7}),kte=null,Ite=_.union([PU,UU]),J7=(0,ba.createContext)(null),X7=()=>Mr(J7),Cte=()=>{var e;return!!((e=X7())!=null&&e.emitter)},Ote=({emitter:e,children:t})=>xr(J7.Provider,{value:{emitter:e},children:t});let Q7=null;const e9=()=>{var e;const t=(e=X7())==null?void 0:e.emitter;if(!t&&!Q7){Q7=!0;return}return t},Nte=()=>{const e=e9();return e?e.emit.bind(e):kr},Rte=()=>{const e=e9();return(t,r)=>{Gr(()=>e?e.on(t,r):void 0,[t,r])}};var HU={};function Di(e,t){typeof t=="boolean"&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._timer=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}var jU=Di;Di.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts.slice(0)},Di.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timer&&clearTimeout(this._timer),this._timeouts=[],this._cachedTimeouts=null},Di.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=new Date().getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.push(e),this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(r===void 0)if(this._cachedTimeouts)this._errors.splice(0,this._errors.length-1),r=this._cachedTimeouts.slice(-1);else return!1;var n=this;return this._timer=setTimeout(function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout(function(){n._operationTimeoutCb(n._attempts)},n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)},r),this._options.unref&&this._timer.unref(),!0},Di.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){r._operationTimeoutCb()},r._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)},Di.prototype.try=function(e){this.attempt(e)},Di.prototype.start=function(e){this.attempt(e)},Di.prototype.start=Di.prototype.try,Di.prototype.errors=function(){return this._errors},Di.prototype.attempts=function(){return this._attempts},Di.prototype.mainError=function(){if(this._errors.length===0)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=a,r=s)}return t},function(e){var t=jU;e.operation=function(r){var n=e.timeouts(r);return new t(n,{forever:r&&(r.forever||r.retries===1/0),unref:r&&r.unref,maxRetryTime:r&&r.maxRetryTime})},e.timeouts=function(r){if(r instanceof Array)return[].concat(r);var n={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var a in r)n[a]=r[a];if(n.minTimeout>n.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var i=[],s=0;so0(e.replace(",","."),Number(t)),eF=_.string().trim().refine(e=>e!=="",{message:"Amount is required"}).refine(e=>{try{const t=QU(e).value;if(t<0n)throw new Error("Amount must be positive");if(t===0n)throw new Error("Amount can not be zero");if(t>Sg.UINT_256_MAX)throw new Error("Amount is too big")}catch{throw new Error("Amount should be a number")}return!0},{message:"Invalid amount"}),Kte=e=>!!eF.parse(e),tF=_.object({data:_.object({code:_.string().optional(),name:_.string().optional(),message:_.string()})}),Gte=e=>{const t=tF.safeParse(e);if(t.success)return t.data.data.message},rF=3,l9="MISSING_ENV_VAR".FEE_OVERHEAD?parseFloat("MISSING_ENV_VAR".FEE_OVERHEAD):rF,nF=1.5,$p=10,aF=({estimatedFee:e,overheadMultiplier:t=l9})=>{const r=be.toBigInt(e)*BigInt(t*$p)/BigInt($p);return be.toHex(r)},Wte=({suggestedMaxFee:e,overheadMultiplier:t=l9,starknetJsOverheadMultiplier:r=nF})=>{const n=be.toBigInt(e)*BigInt($p)/BigInt(r*$p);return aF({estimatedFee:n,overheadMultiplier:t})};var Hm;(function(e){e.SIMULATE_AND_REVIEW_FAILED="Missing simulation"})(Hm||(Hm={}));class Yte extends Lc{constructor(t){super(t,Hm),this.name="EstimateError"}}const Jte=_.object({type:_.enum(["DECLARE","DEPLOY","DEPLOY_ACCOUNT","INVOKE"]).default("INVOKE"),calls:_.array(V7).or(V7).optional(),calldata:_.array(_.string()).optional(),classHash:Lf.optional(),salt:Lf.optional(),signature:_.array(_.string()).optional()}),iF=_.object({amount:_.bigint(),pricePerUnit:_.bigint()}).or(_.object({maxFee:_.bigint()})),h9=_.object({feeTokenAddress:sa,amount:_.bigint(),pricePerUnit:_.bigint(),max:iF.optional(),dataGasConsumed:_.bigint().optional(),dataGasPrice:_.bigint().optional()}),sF=_.object({deployment:h9.optional(),transactions:h9}),oF=_.union([_.literal("critical"),_.literal("high"),_.literal("caution"),_.literal("info")]),cF=_.string(),fF=_.object({name:_.string(),url:_.string(),position:_.number()}),jm=_.object({address:_.string(),name:_.string(),symbol:_.string().optional(),decimals:_.number().optional(),unknown:_.boolean(),iconUrl:_.string().optional(),type:_.string()}),p9=_.discriminatedUnion("type",[_.object({type:_.literal("amount"),label:_.string(),token:jm,amount:_.string(),usd:_.string(),editable:_.boolean()}),_.object({type:_.literal("address"),label:_.string(),address:_.string(),addressName:_.string().optional(),verified:_.boolean().optional()}),_.object({type:_.literal("timestamp"),label:_.string(),value:_.string()}),_.object({type:_.literal("token_address"),label:_.string(),token:jm}),_.object({type:_.literal("calldata"),label:_.string(),entrypoint:_.string(),calldata:_.array(_.string())}),_.object({type:_.literal("text"),label:_.string(),text:_.string()}),_.object({type:_.literal("nft"),label:_.string(),token:jm})]),b9=_.object({name:_.string(),properties:_.array(p9),defaultProperties:_.array(p9).optional()}),dF=_.union([_.literal("verified"),_.literal("neutral"),_.literal("partial"),_.literal("warn")]),uF=_.object({unknown_token:_.unknown().optional(),date_of_addition:_.string().optional(),contract_address:sa.optional(),reason:_.string().optional(),value:_.string().or(_.number()).optional()}),g9=_.object({reason:cF,details:uF.optional(),severity:oF}),lF=_.object({assessment:dF,warnings:_.array(g9).optional(),assessmentReasons:_.array(_.string()).optional(),assessmentDetails:_.object({contract_address:_.string()}).optional(),action:b9}),m9=_.object({name:_.string(),description:_.string(),logoUrl:_.string(),iconUrl:_.string(),argentVerified:_.boolean(),links:_.array(fF)}),y9=_.object({assessment:_.union([_.literal("verified"),_.literal("neutral"),_.literal("partial"),_.literal("warn")]),warnings:_.array(g9).optional(),assessmentDetails:_.object({contract_address:_.string()}).optional(),targetedDapp:m9.optional(),reviews:_.array(lF)}).optional(),_9=_.object({banner:_.string().nullable().optional(),preview:_.string().nullable().optional(),full:_.string().nullable().optional(),original:_.string().nullable().optional()}),hF=_.object({twitter:_.string().optional(),external:_.string().optional(),discord:_.string().optional()}),$m=_.object({address:Qn,decimals:_.number().optional(),symbol:_.string().optional(),name:_.string(),description:_.string().optional(),type:_.string().optional(),usdValue:_.string().optional(),iconUrl:_.string().optional(),unknown:_.boolean().optional(),imageUrls:_9.optional(),links:hF.optional()}),pF=_.object({tokenAddress:Qn,owner:Qn,spender:Qn,value:_.string().optional(),approvalForAll:_.boolean(),details:$m.optional()}),bF=_.object({tokenAddress:Qn,from:Qn,to:Qn,tokenId:_.string().optional(),value:_.string().optional(),details:$m.optional()}),Fc=_.union([_.string(),_.number(),_.bigint()]).transform(e=>parseInt(e.toString(),10)),v9={overallFee:Fc,gasPrice:Fc,gasUsage:Fc,dataGasPrice:Fc.optional(),dataGasConsumed:Fc.optional()},gF=_.object({...v9,unit:_.string().transform(e=>e.toUpperCase()).pipe(_.literal("WEI")),maxFee:Fc}).or(_.object({...v9,unit:_.string().transform(e=>e.toUpperCase()).pipe(_.literal("FRI")),maxAmount:Fc,maxPricePerUnit:Fc})),mF=_.object({type:_.string(),label:_.string(),tokenId:_.string().optional(),value:_.string().optional(),usdValue:_.string().optional(),token:$m,sent:_.boolean().optional(),tokenIdDetails:_.object({name:_.string().optional(),description:_.string().optional(),imageUrls:_9.optional()}).optional()}),yF=_.object({approvals:_.array(pF).optional(),transfers:_.array(bF).optional(),calculatedNonce:_.string().optional(),feeEstimation:gF,summary:_.array(mF).optional()}),_F=_.object({label:_.string().optional(),code:_.number().optional(),message:_.string().optional(),error:_.string().optional()}),w9=_.object({reviewOfTransaction:y9,simulation:yF,simulationError:_.undefined()}),E9=_.object({reviewOfTransaction:y9,simulation:_.undefined(),simulationError:_F}),x9=w9.or(E9),Xte=_.object({transactions:_.array(x9)}),Qte=_.object({transactions:_.array(x9),enrichedFeeEstimation:sF.optional(),isBackendDown:_.boolean().default(!1).optional()});function ere(e){return w9.safeParse(e).success}function tre(e){return E9.safeParse(e).success}const A9=_.object({network:_.string(),hash:_.string(),status:_.string(),blockNumber:_.number().optional(),transactionIndex:_.number()}),f0=_.object({type:_.enum(["token","nft"]),tokenAddress:Qn,amount:_.string().optional(),fiatAmount:_.object({currency:_.string(),currencyAmount:_.number()}).optional().nullable()}),Vm=_.enum(["ethereum","starknet","zksync","zksync2"]),vF=_.object({type:_.enum(["payment","gasFee"]),leg:_.enum(["credit","debit"]),asset:f0,counterParty:Qn.optional(),counterPartyNetwork:Vm.optional()}),wF=_.object({address:Qn,network:Vm,type:_.enum(["wallet","token"])}),EF=_.object({chainId:_.enum(["TESTNET","MAINNET","SEPOLIA"]),ethereumNetwork:_.enum(["mainnet","sepolia"])}),xF=_.enum(["approval","changePubKey","dappInteraction","deploy","gift","multicall","payment","security","trade"]),T9=_.enum(["triggerEscapeGuardian","triggerEscapeSigner","escapeGuardian","escapeSigner","guardianChanged","guardianBackupChanged","signerChanged","cancelEscape","accountUpgraded","multisigConfigurationUpdated"]),AF=_.object({name:_.string(),parameters:_.array(_.unknown()).optional()}),TF=_.object({activeAt:_.string().optional(),newImplementation:_.string().optional(),newVersion:_.string().optional(),signerGuid:_.string().optional(),signers:_.string().array().optional()}),S9=_.discriminatedUnion("type",[_.object({type:_.literal("deploy"),deployer:Qn,contractAddress:Qn}),_.object({type:_.literal("approval"),spender:Qn,asset:f0,approvalType:_.string()}),_.object({type:_.literal("payment"),counterparty:Qn,leg:_.string(),asset:f0,counterpartyNetwork:Vm.optional()}),_.object({type:_.literal("trade"),srcAsset:f0,destAsset:f0}),_.object({type:_.literal("security"),action:T9,context:TF.optional()}),_.object({type:_.literal("dappInteraction"),dappAddress:Qn,function:AF.optional().nullable()})]),SF=_.union([S9,_.object({type:_.literal("multicall"),calls:_.array(_.object({details:S9}))})]),kF=_.object({dappId:_.string(),name:_.string().optional().nullable()}),k9=_.object({sent:_.boolean(),asset:_.discriminatedUnion("type",[_.object({type:_.literal("nft"),tokenAddress:Qn,tokenId:_.coerce.number().optional(),amount:_.string().optional(),collectionName:_.string().optional(),collectionPreviewImage:_.string().optional().nullable(),nftName:_.string().optional().nullable(),nftPreviewImage:_.string().optional().nullable()}),_.object({type:_.literal("token"),tokenAddress:Qn,amount:_.string().optional(),fiatAmount:_.object({currency:_.string(),currencyAmount:_.coerce.string()}).optional().nullable()})])}),IF=_.object({type:_.string(),to:Qn,actualFee:_.object({type:_.string(),tokenAddress:Qn,amount:_.string().optional(),fiatAmount:_.object({currency:_.string(),currencyAmount:_.number()}).optional().nullable()})}),I9=_.enum(["pending","success","failure"]),C9=_.object({compositeId:_.string(),id:_.string().uuid(),status:I9,wallet:Qn,txSender:Qn,source:_.string(),type:xF,group:_.enum(["finance","security"]),submitted:_.number(),lastModified:_.number(),transaction:A9,transfers:_.array(vF),fees:_.array(IF).optional(),relatedAddresses:_.array(wF).nullable(),network:_.string(),networkDetails:EF.optional(),details:SF,transferSummary:_.array(k9).optional(),dapp:kF.optional(),actions:_.array(b9).optional(),title:_.string().optional(),multisigDetails:_.object({signers:_.array(Qn)}).optional()}),CF=_.object({title:_.string().optional(),shortTitle:_.string().optional(),subtitle:_.string().optional(),icon:_.string().optional()}),OF="native",NF="rejected",RF="cancelled",MF="queued",rre=C9.pick({status:!0,actions:!0,submitted:!0,lastModified:!0,transferSummary:!0,fees:!0,multisigDetails:!0}).extend({status:_.union([I9,_.enum([NF,RF,MF])]),type:_.literal(OF),transaction:A9.pick({hash:!0}),dapp:m9.optional(),meta:CF.optional()}),BF=_.array(C9),nre=_.object({activities:BF,page:_.number(),pageSize:_.number(),totalElements:_.number(),totalPages:_.number()});function are(e){return T9.safeParse(e).success}const O9=e=>k9.safeParse(e).success,ire=e=>O9(e)&&e.asset.type==="token",sre=e=>O9(e)&&e.asset.type==="nft",N9={Transfer:og.getSelectorFromName("Transfer"),Approval:og.getSelectorFromName("Approval")},PF=(e,t,r)=>{for(const n of e){const{events:a,internal_calls:i}=n;for(const s of a)for(const o of s.keys)o===N9.Approval&&t.push({tokenAddress:sa.parse(n.contract_address),owner:s.data[0],spender:s.data[1],value:Qe.uint256ToBN({low:s.data[2],high:s.data[3]}).toString()}),o===N9.Transfer&&r.push({tokenAddress:sa.parse(n.contract_address),from:s.data[0],to:s.data[1],value:Qe.uint256ToBN({low:s.data[2],high:s.data[3]}).toString()});i&&PF(i,t,r)}return{approvals:t,transfers:r}},DF=/(0x[a-fA-F0-9]+)\s*\('(.*?)'\)/,ore=e=>{if(!Ur(e))return;const t=e.match(DF);if(t&&!Fr(t[2]))return t[2]};var zm;(function(e){e.SIMULATE_AND_REVIEW_FAILED="Something went wrong fetching review",e.NO_CALLS_FOUND="No calls found",e.ONCHAIN_FEE_ESTIMATION_FAILED="Failed to estimate fees onchain"})(zm||(zm={}));class cre extends Lc{constructor(t){super(t,zm),this.name="ReviewError"}}const fre=_.object({reason:_.string(),severity:_.string().optional(),title:_.string(),description:_.string().optional()}),LF=Object.values(gc.TRANSACTION_VERSION),dre=_.string().default("0x3").refine(e=>{const t=Qu.toBigInt(e);return LF.map(r=>Qu.toBigInt(r)).includes(t)}).transform(e=>Qu.toHex(e));function ure(e){if(e===xe.TRANSACTION_VERSION.V3||e===xe.TRANSACTION_VERSION.F3)throw Error("Only txv1 is supported")}var lre=fr(65747);/*! scure-bip39 - MIT License (c) 2022 Patricio Palladino, Paul Miller (paulmillr.com) */const UF=e=>e[0]==="\u3042\u3044\u3053\u304F\u3057\u3093";function R9(e){if(typeof e!="string")throw new TypeError(`Invalid mnemonic type: ${typeof e}`);return e.normalize("NFKD")}function qm(e){const t=R9(e),r=t.split(" ");if(![12,15,18,21,24].includes(r.length))throw new Error("Invalid mnemonic");return{nfkd:t,words:r}}function M9(e){ff(e,16,20,24,28,32)}function hre(e,t=128){if(assertNumber(t),t%32!==0||t>256)throw new TypeError("Invalid entropy");return jF(randomBytes(t/8),e)}const FF=e=>{const t=8-e.length/4;return new Uint8Array([A5(e)[0]>>t<{if(typeof t!="string")throw new Error(`Wordlist: non-string element: ${t}`)}),Q0.chain(Q0.checksum(1,FF),Q0.radix2(11,!0),Q0.alphabet(e))}function HF(e,t){const{words:r}=qm(e),n=B9(t).decode(r);return M9(n),n}function jF(e,t){return M9(e),B9(t).encode(e).join(UF(t)?"\u3000":" ")}function $F(e,t){try{HF(e,t)}catch{return!1}return!0}const P9=e=>R9(`mnemonic${e}`);function pre(e,t=""){return pbkdf2Async(sha512,qm(e).nfkd,P9(t),{c:2048,dkLen:64})}function bre(e,t=""){return pbkdf2(sha512,qm(e).nfkd,P9(t),{c:2048,dkLen:64})}const VF=`abandon +ability +able +about +above +absent +absorb +abstract +absurd +abuse +access +accident +account +accuse +achieve +acid +acoustic +acquire +across +act +action +actor +actress +actual +adapt +add +addict +address +adjust +admit +adult +advance +advice +aerobic +affair +afford +afraid +again +age +agent +agree +ahead +aim +air +airport +aisle +alarm +album +alcohol +alert +alien +all +alley +allow +almost +alone +alpha +already +also +alter +always +amateur +amazing +among +amount +amused +analyst +anchor +ancient +anger +angle +angry +animal +ankle +announce +annual +another +answer +antenna +antique +anxiety +any +apart +apology +appear +apple +approve +april +arch +arctic +area +arena +argue +arm +armed +armor +army +around +arrange +arrest +arrive +arrow +art +artefact +artist +artwork +ask +aspect +assault +asset +assist +assume +asthma +athlete +atom +attack +attend +attitude +attract +auction +audit +august +aunt +author +auto +autumn +average +avocado +avoid +awake +aware +away +awesome +awful +awkward +axis +baby +bachelor +bacon +badge +bag +balance +balcony +ball +bamboo +banana +banner +bar +barely +bargain +barrel +base +basic +basket +battle +beach +bean +beauty +because +become +beef +before +begin +behave +behind +believe +below +belt +bench +benefit +best +betray +better +between +beyond +bicycle +bid +bike +bind +biology +bird +birth +bitter +black +blade +blame +blanket +blast +bleak +bless +blind +blood +blossom +blouse +blue +blur +blush +board +boat +body +boil +bomb +bone +bonus +book +boost +border +boring +borrow +boss +bottom +bounce +box +boy +bracket +brain +brand +brass +brave +bread +breeze +brick +bridge +brief +bright +bring +brisk +broccoli +broken +bronze +broom +brother +brown +brush +bubble +buddy +budget +buffalo +build +bulb +bulk +bullet +bundle +bunker +burden +burger +burst +bus +business +busy +butter +buyer +buzz +cabbage +cabin +cable +cactus +cage +cake +call +calm +camera +camp +can +canal +cancel +candy +cannon +canoe +canvas +canyon +capable +capital +captain +car +carbon +card +cargo +carpet +carry +cart +case +cash +casino +castle +casual +cat +catalog +catch +category +cattle +caught +cause +caution +cave +ceiling +celery +cement +census +century +cereal +certain +chair +chalk +champion +change +chaos +chapter +charge +chase +chat +cheap +check +cheese +chef +cherry +chest +chicken +chief +child +chimney +choice +choose +chronic +chuckle +chunk +churn +cigar +cinnamon +circle +citizen +city +civil +claim +clap +clarify +claw +clay +clean +clerk +clever +click +client +cliff +climb +clinic +clip +clock +clog +close +cloth +cloud +clown +club +clump +cluster +clutch +coach +coast +coconut +code +coffee +coil +coin +collect +color +column +combine +come +comfort +comic +common +company +concert +conduct +confirm +congress +connect +consider +control +convince +cook +cool +copper +copy +coral +core +corn +correct +cost +cotton +couch +country +couple +course +cousin +cover +coyote +crack +cradle +craft +cram +crane +crash +crater +crawl +crazy +cream +credit +creek +crew +cricket +crime +crisp +critic +crop +cross +crouch +crowd +crucial +cruel +cruise +crumble +crunch +crush +cry +crystal +cube +culture +cup +cupboard +curious +current +curtain +curve +cushion +custom +cute +cycle +dad +damage +damp +dance +danger +daring +dash +daughter +dawn +day +deal +debate +debris +decade +december +decide +decline +decorate +decrease +deer +defense +define +defy +degree +delay +deliver +demand +demise +denial +dentist +deny +depart +depend +deposit +depth +deputy +derive +describe +desert +design +desk +despair +destroy +detail +detect +develop +device +devote +diagram +dial +diamond +diary +dice +diesel +diet +differ +digital +dignity +dilemma +dinner +dinosaur +direct +dirt +disagree +discover +disease +dish +dismiss +disorder +display +distance +divert +divide +divorce +dizzy +doctor +document +dog +doll +dolphin +domain +donate +donkey +donor +door +dose +double +dove +draft +dragon +drama +drastic +draw +dream +dress +drift +drill +drink +drip +drive +drop +drum +dry +duck +dumb +dune +during +dust +dutch +duty +dwarf +dynamic +eager +eagle +early +earn +earth +easily +east +easy +echo +ecology +economy +edge +edit +educate +effort +egg +eight +either +elbow +elder +electric +elegant +element +elephant +elevator +elite +else +embark +embody +embrace +emerge +emotion +employ +empower +empty +enable +enact +end +endless +endorse +enemy +energy +enforce +engage +engine +enhance +enjoy +enlist +enough +enrich +enroll +ensure +enter +entire +entry +envelope +episode +equal +equip +era +erase +erode +erosion +error +erupt +escape +essay +essence +estate +eternal +ethics +evidence +evil +evoke +evolve +exact +example +excess +exchange +excite +exclude +excuse +execute +exercise +exhaust +exhibit +exile +exist +exit +exotic +expand +expect +expire +explain +expose +express +extend +extra +eye +eyebrow +fabric +face +faculty +fade +faint +faith +fall +false +fame +family +famous +fan +fancy +fantasy +farm +fashion +fat +fatal +father +fatigue +fault +favorite +feature +february +federal +fee +feed +feel +female +fence +festival +fetch +fever +few +fiber +fiction +field +figure +file +film +filter +final +find +fine +finger +finish +fire +firm +first +fiscal +fish +fit +fitness +fix +flag +flame +flash +flat +flavor +flee +flight +flip +float +flock +floor +flower +fluid +flush +fly +foam +focus +fog +foil +fold +follow +food +foot +force +forest +forget +fork +fortune +forum +forward +fossil +foster +found +fox +fragile +frame +frequent +fresh +friend +fringe +frog +front +frost +frown +frozen +fruit +fuel +fun +funny +furnace +fury +future +gadget +gain +galaxy +gallery +game +gap +garage +garbage +garden +garlic +garment +gas +gasp +gate +gather +gauge +gaze +general +genius +genre +gentle +genuine +gesture +ghost +giant +gift +giggle +ginger +giraffe +girl +give +glad +glance +glare +glass +glide +glimpse +globe +gloom +glory +glove +glow +glue +goat +goddess +gold +good +goose +gorilla +gospel +gossip +govern +gown +grab +grace +grain +grant +grape +grass +gravity +great +green +grid +grief +grit +grocery +group +grow +grunt +guard +guess +guide +guilt +guitar +gun +gym +habit +hair +half +hammer +hamster +hand +happy +harbor +hard +harsh +harvest +hat +have +hawk +hazard +head +health +heart +heavy +hedgehog +height +hello +helmet +help +hen +hero +hidden +high +hill +hint +hip +hire +history +hobby +hockey +hold +hole +holiday +hollow +home +honey +hood +hope +horn +horror +horse +hospital +host +hotel +hour +hover +hub +huge +human +humble +humor +hundred +hungry +hunt +hurdle +hurry +hurt +husband +hybrid +ice +icon +idea +identify +idle +ignore +ill +illegal +illness +image +imitate +immense +immune +impact +impose +improve +impulse +inch +include +income +increase +index +indicate +indoor +industry +infant +inflict +inform +inhale +inherit +initial +inject +injury +inmate +inner +innocent +input +inquiry +insane +insect +inside +inspire +install +intact +interest +into +invest +invite +involve +iron +island +isolate +issue +item +ivory +jacket +jaguar +jar +jazz +jealous +jeans +jelly +jewel +job +join +joke +journey +joy +judge +juice +jump +jungle +junior +junk +just +kangaroo +keen +keep +ketchup +key +kick +kid +kidney +kind +kingdom +kiss +kit +kitchen +kite +kitten +kiwi +knee +knife +knock +know +lab +label +labor +ladder +lady +lake +lamp +language +laptop +large +later +latin +laugh +laundry +lava +law +lawn +lawsuit +layer +lazy +leader +leaf +learn +leave +lecture +left +leg +legal +legend +leisure +lemon +lend +length +lens +leopard +lesson +letter +level +liar +liberty +library +license +life +lift +light +like +limb +limit +link +lion +liquid +list +little +live +lizard +load +loan +lobster +local +lock +logic +lonely +long +loop +lottery +loud +lounge +love +loyal +lucky +luggage +lumber +lunar +lunch +luxury +lyrics +machine +mad +magic +magnet +maid +mail +main +major +make +mammal +man +manage +mandate +mango +mansion +manual +maple +marble +march +margin +marine +market +marriage +mask +mass +master +match +material +math +matrix +matter +maximum +maze +meadow +mean +measure +meat +mechanic +medal +media +melody +melt +member +memory +mention +menu +mercy +merge +merit +merry +mesh +message +metal +method +middle +midnight +milk +million +mimic +mind +minimum +minor +minute +miracle +mirror +misery +miss +mistake +mix +mixed +mixture +mobile +model +modify +mom +moment +monitor +monkey +monster +month +moon +moral +more +morning +mosquito +mother +motion +motor +mountain +mouse +move +movie +much +muffin +mule +multiply +muscle +museum +mushroom +music +must +mutual +myself +mystery +myth +naive +name +napkin +narrow +nasty +nation +nature +near +neck +need +negative +neglect +neither +nephew +nerve +nest +net +network +neutral +never +news +next +nice +night +noble +noise +nominee +noodle +normal +north +nose +notable +note +nothing +notice +novel +now +nuclear +number +nurse +nut +oak +obey +object +oblige +obscure +observe +obtain +obvious +occur +ocean +october +odor +off +offer +office +often +oil +okay +old +olive +olympic +omit +once +one +onion +online +only +open +opera +opinion +oppose +option +orange +orbit +orchard +order +ordinary +organ +orient +original +orphan +ostrich +other +outdoor +outer +output +outside +oval +oven +over +own +owner +oxygen +oyster +ozone +pact +paddle +page +pair +palace +palm +panda +panel +panic +panther +paper +parade +parent +park +parrot +party +pass +patch +path +patient +patrol +pattern +pause +pave +payment +peace +peanut +pear +peasant +pelican +pen +penalty +pencil +people +pepper +perfect +permit +person +pet +phone +photo +phrase +physical +piano +picnic +picture +piece +pig +pigeon +pill +pilot +pink +pioneer +pipe +pistol +pitch +pizza +place +planet +plastic +plate +play +please +pledge +pluck +plug +plunge +poem +poet +point +polar +pole +police +pond +pony +pool +popular +portion +position +possible +post +potato +pottery +poverty +powder +power +practice +praise +predict +prefer +prepare +present +pretty +prevent +price +pride +primary +print +priority +prison +private +prize +problem +process +produce +profit +program +project +promote +proof +property +prosper +protect +proud +provide +public +pudding +pull +pulp +pulse +pumpkin +punch +pupil +puppy +purchase +purity +purpose +purse +push +put +puzzle +pyramid +quality +quantum +quarter +question +quick +quit +quiz +quote +rabbit +raccoon +race +rack +radar +radio +rail +rain +raise +rally +ramp +ranch +random +range +rapid +rare +rate +rather +raven +raw +razor +ready +real +reason +rebel +rebuild +recall +receive +recipe +record +recycle +reduce +reflect +reform +refuse +region +regret +regular +reject +relax +release +relief +rely +remain +remember +remind +remove +render +renew +rent +reopen +repair +repeat +replace +report +require +rescue +resemble +resist +resource +response +result +retire +retreat +return +reunion +reveal +review +reward +rhythm +rib +ribbon +rice +rich +ride +ridge +rifle +right +rigid +ring +riot +ripple +risk +ritual +rival +river +road +roast +robot +robust +rocket +romance +roof +rookie +room +rose +rotate +rough +round +route +royal +rubber +rude +rug +rule +run +runway +rural +sad +saddle +sadness +safe +sail +salad +salmon +salon +salt +salute +same +sample +sand +satisfy +satoshi +sauce +sausage +save +say +scale +scan +scare +scatter +scene +scheme +school +science +scissors +scorpion +scout +scrap +screen +script +scrub +sea +search +season +seat +second +secret +section +security +seed +seek +segment +select +sell +seminar +senior +sense +sentence +series +service +session +settle +setup +seven +shadow +shaft +shallow +share +shed +shell +sheriff +shield +shift +shine +ship +shiver +shock +shoe +shoot +shop +short +shoulder +shove +shrimp +shrug +shuffle +shy +sibling +sick +side +siege +sight +sign +silent +silk +silly +silver +similar +simple +since +sing +siren +sister +situate +six +size +skate +sketch +ski +skill +skin +skirt +skull +slab +slam +sleep +slender +slice +slide +slight +slim +slogan +slot +slow +slush +small +smart +smile +smoke +smooth +snack +snake +snap +sniff +snow +soap +soccer +social +sock +soda +soft +solar +soldier +solid +solution +solve +someone +song +soon +sorry +sort +soul +sound +soup +source +south +space +spare +spatial +spawn +speak +special +speed +spell +spend +sphere +spice +spider +spike +spin +spirit +split +spoil +sponsor +spoon +sport +spot +spray +spread +spring +spy +square +squeeze +squirrel +stable +stadium +staff +stage +stairs +stamp +stand +start +state +stay +steak +steel +stem +step +stereo +stick +still +sting +stock +stomach +stone +stool +story +stove +strategy +street +strike +strong +struggle +student +stuff +stumble +style +subject +submit +subway +success +such +sudden +suffer +sugar +suggest +suit +summer +sun +sunny +sunset +super +supply +supreme +sure +surface +surge +surprise +surround +survey +suspect +sustain +swallow +swamp +swap +swarm +swear +sweet +swift +swim +swing +switch +sword +symbol +symptom +syrup +system +table +tackle +tag +tail +talent +talk +tank +tape +target +task +taste +tattoo +taxi +teach +team +tell +ten +tenant +tennis +tent +term +test +text +thank +that +theme +then +theory +there +they +thing +this +thought +three +thrive +throw +thumb +thunder +ticket +tide +tiger +tilt +timber +time +tiny +tip +tired +tissue +title +toast +tobacco +today +toddler +toe +together +toilet +token +tomato +tomorrow +tone +tongue +tonight +tool +tooth +top +topic +topple +torch +tornado +tortoise +toss +total +tourist +toward +tower +town +toy +track +trade +traffic +tragic +train +transfer +trap +trash +travel +tray +treat +tree +trend +trial +tribe +trick +trigger +trim +trip +trophy +trouble +truck +true +truly +trumpet +trust +truth +try +tube +tuition +tumble +tuna +tunnel +turkey +turn +turtle +twelve +twenty +twice +twin +twist +two +type +typical +ugly +umbrella +unable +unaware +uncle +uncover +under +undo +unfair +unfold +unhappy +uniform +unique +unit +universe +unknown +unlock +until +unusual +unveil +update +upgrade +uphold +upon +upper +upset +urban +urge +usage +use +used +useful +useless +usual +utility +vacant +vacuum +vague +valid +valley +valve +van +vanish +vapor +various +vast +vault +vehicle +velvet +vendor +venture +venue +verb +verify +version +very +vessel +veteran +viable +vibrant +vicious +victory +video +view +village +vintage +violin +virtual +virus +visa +visit +visual +vital +vivid +vocal +voice +void +volcano +volume +vote +voyage +wage +wagon +wait +walk +wall +walnut +want +warfare +warm +warrior +wash +wasp +waste +water +wave +way +wealth +weapon +wear +weasel +weather +web +wedding +weekend +weird +welcome +west +wet +whale +what +wheat +wheel +when +where +whip +whisper +wide +width +wife +wild +will +win +window +wine +wing +wink +winner +winter +wire +wisdom +wise +wish +witness +wolf +woman +wonder +wood +wool +word +work +world +worry +worth +wrap +wreck +wrestle +wrist +write +wrong +yard +year +yellow +you +young +youth +zebra +zero +zone +zoo`.split(` +`),zF=_.object({name:_.string().optional(),address:_.string(),ownerAddress:_.string(),chain:_.enum(["ethereum","zksync","zksync2","starknet"]),deploymentStatus:_.enum(["notDeployed","deploying","deployed","deployError"]),application:_.enum(["mobile","webwallet","argentx"]),guardianAddresses:_.array(_.string()).optional(),enabledGuardianAddresses:_.array(_.string()).optional(),implClassHash:_.string().optional(),proxyClassHash:_.string().optional(),salt:_.string().optional(),created:_.string().optional(),contractVersion:_.string().optional(),contractName:_.string().optional(),version:_.number().optional(),owner:_.object({guid:_.string().optional(),signerType:_.enum(["StarknetKey","EthereumKey"]).optional()}).optional()}),gre=_.object({address:_.string(),guardianAddress:_.string().optional(),account:zF}),mre=_.object({ownerAddress:_.string(),signature:_.object({r:_.string(),s:_.string()}),implClassHash:_.string().optional(),name:_.string().optional(),icon:_.string().optional()});function yre(e){return"transactionVersion"in e}function _re(e){return"simulateTransaction"in e}function vre(e){return!("simulateTransaction"in e)}const qF=_.object({value:_.string(),platform:_.enum(["ios","argentx","android","webwallet"]).nullable()}),wre=_.object({preferences:_.record(qF)}),ZF=_.enum(["mainnet-alpha","sepolia-alpha"]),KF=_.enum(["mainnet","sepolia"]);function GF(e){return ZF.safeParse(e).success}function Ere(e){return KF.safeParse(e).success}const d0=18;function u0({value:e,decimals:t}){if(t===0)return e.toString();const r=e<0n;e=r?-e:e;const n=e.toString().padStart(t,"0"),a=n.slice(0,-t)||"0",i=n.slice(-t).replace(/0+$/,"");return`${r?"-":""}${a}${i?`.${i}`:""}`}const Zm=(e,t)=>({decimals:t,value:t>=e.decimals?e.value*BigInt(10)**BigInt(t-e.decimals):e.value/BigInt(10)**BigInt(e.decimals-t)}),D9=e=>{const t=e.value.toString().split("").reverse();let r=0;for(let a=0;a{const r=Math.max(e.decimals,t.decimals),[n,a]=[e,t].map(i=>Zm(i,r));return[n.value,a.value,r]},Vp=e=>(t,r)=>{const[n,a,i]=L9(t,r);return{decimals:i,value:e(n,a,i)}},l0=e=>(t,r)=>{const[n,a]=L9(t,r);return e(n,a)},WF=Vp((e,t)=>e+t),YF=Vp((e,t)=>e-t),JF=Vp((e,t,r)=>{if(t===BigInt(0))throw new Error("Division by zero is not allowed");return e*BigInt(10)**BigInt(r)/t}),XF=(e,t)=>D9({decimals:e.decimals+t.decimals,value:e.value*t.value}),QF=Vp((e,t)=>{if(t===BigInt(0))throw new Error("Modulus by zero is not allowed");return e%t}),Km=e=>({decimals:e.decimals,value:e.value>=BigInt(0)?e.value:-e.value}),U9=l0((e,t)=>e===t),eH=l0((e,t)=>ee>t),rH=l0((e,t)=>e<=t),nH=l0((e,t)=>e>=t),aH=(e,t)=>!U9(e,t);function iH(e){return u0({value:e,decimals:d0})}function sH(e){return o0(e,d0)}function oH(e){return u0({value:e,decimals:d0})}function Gm(e){return o0(e,d0)}function cH(e){return Km({value:e,decimals:0}).value}function fH(e){return Km(Gm(e))}function dH(e,t){return{value:BigInt(e),decimals:t}}const uH={value:1n,decimals:0};function lH(e){return _.string().refine(t=>/^-?\d+(\.\d+)?$/.test(t),{message:"Invalid number format"}).transform(t=>o0(t,e))}const xre=Object.freeze(Object.defineProperty({__proto__:null,ONE:uH,abs:Km,absBigInt:cH,add:WF,createUnitsSchema:lH,div:JF,eq:U9,formatCurrency:oH,formatEther:iH,formatUnits:u0,gt:tH,gte:nH,lt:eH,lte:rH,mod:QF,mul:XF,not:aH,parseCurrency:Gm,parseCurrencyAbs:fH,parseEther:sH,parseUnits:o0,sub:YF,toBigDecimal:dH,toFixedDecimals:Zm,toTiniestPossibleDecimal:D9},Symbol.toStringTag,{value:"Module"}));class Are{constructor(t,r){this.cachePromise=r.open(t).catch(n=>(console.error(new Error("Failed to open cache",{cause:n})),null))}async get(t){const r=await this.cachePromise;if(!r)throw new Error("No cache available");const n=await r.match(t).catch(()=>{throw new Error("Failed to match cache")});if(!n)throw new Error("Failed to match cache");return n.clone()}async set(t,r){const n=await this.cachePromise;n&&await n.put(t,r).catch(()=>{throw new Error("Failed to match cache")})}async delete(t){const r=await this.cachePromise;return r?r.delete(t):!1}async flush(){const t=await this.cachePromise;if(!t)return;const r=await t.keys();await Promise.allSettled(r.map(n=>t.delete(n)))}}class Tre{constructor(t,r){this.httpService=t,this.baseUrl=r,this.offsetInS=0,this.syncIntervalInMs=60*1e3,this.initialSync=this.syncWithServer(),setInterval(()=>void this.syncWithServer(),this.syncIntervalInMs)}async now(){return await this.initialSync,new Date(Date.now()+this.offsetInS*1e3)}async syncWithServer(){if(typeof window>"u")return;const{time:t}=await this.httpService.get(`${this.baseUrl}/time`),r=Math.floor(Date.now()/1e3),n=t-r;this.offsetInS=n}}class Wm{constructor(t,r="json"){this.requestInit=t,this.responseType=r}async get(t,r){const n=qt(this.requestInit)?await this.requestInit():this.requestInit,a={...n,...r,method:"GET",headers:{...n?.headers,...r?.headers}},i=await fetch(t,a).catch(()=>{throw new K(en.FAILED_TO_FETCH_URL,0)});if(this.responseType==="json"){if(!i.ok)throw new K(i.statusText,i.status);return await i.json()}return i}async post(t,r,n){const a=qt(this.requestInit)?await this.requestInit():this.requestInit,i={...a,...r,method:"POST",headers:{...a?.headers,...r?.headers}},s=await fetch(t,i).catch(()=>{throw new K(en.FAILED_TO_POST_URL,0)});if(!s.ok)throw new K(s.statusText,s.status,await s.json());if(s.status===204)return{};const o=await s.json();if(n)try{return n.parse(o)}catch(c){throw new K(c.message,0)}return o}async put(t,r){const n=qt(this.requestInit)?await this.requestInit():this.requestInit,a={...n,...r,method:"PUT",headers:{...n?.headers,...r?.headers}},i=await fetch(t,a).catch(()=>{throw new K("Failed to put url",0)});if(!i.ok)throw new K(i.statusText,i.status);return await i.json()}async delete(t,r){const n=qt(this.requestInit)?await this.requestInit():this.requestInit,a={...n,...r,method:"DELETE",headers:{...n?.headers,...r?.headers}},i=await fetch(t,a).catch(()=>{throw new K("Failed to delete url",0)});if(!i.ok)throw new K(i.statusText,i.status)}}const zp=e=>{"production"};function hH(e,t){const r=e.clone(),n=new Headers(r.headers);for(const[a,i]of Object.entries(t))n.set(a,i);return new Response(r.body,{status:r.status,statusText:e.statusText,headers:n})}class Sre{constructor(t,r,n,a){this.dateService=t,this.cacheService=r,this.httpService=n,this.options=a,this.inFlightRequests=new Map}async rawGet(t,r){try{const n=await this.cacheService.get(t),a=await this.dateService.now(),i=new Date(n.headers.get("date")||""),s=a.getTime()-i.getTime();if(s{const s=await this.dateService.now();return await this.cacheService.set(t,hH(i,{date:s.toUTCString()})),i}).finally(()=>{this.inFlightRequests.delete(t)});return this.inFlightRequests.set(t,a),a}return zp(),n}parseResponse(t){if(t.ok)return t.json();throw new K(t.statusText,t.status)}}const qp=(e,t,r)=>{const n=new Error(e);n.name="FetcherError",n.url=t.url,n.status=t.status,n.statusText=t.statusText,n.responseText=r;try{const a=JSON.parse(r);n.responseJson=a}catch{}return n},F9=async(e,t)=>{const r=await fetch(e,t),n=await r.text();if(!r.ok)throw qp("An error occurred while fetching",r,n);try{return JSON.parse(n)}catch{throw qp("An error occurred while parsing",r,n)}},kre=async(e,t)=>{const r=await fetch(e,{method:"POST",...t}),n=await r.text();if(!r.ok)throw qp("An error occurred while fetching",r,n);try{return JSON.parse(n)}catch{throw qp("An error occurred while parsing",r,n)}},Ire=e=>({refreshInterval:e,dedupingInterval:e}),Cre=e=>`${e.networkId}::${e.address}`,pH=()=>{};function bH(e,t,r,n){const{cache:a}=ws(),i=ae(e&&t,e?r:pH,n);return Ft(()=>{e||(i.mutate(),a.delete(t))},[e]),i}const Ore={revalidateOnFocus:!1,revalidateOnMount:!0,revalidateOnReconnect:!1,refreshWhenOffline:!1,refreshWhenHidden:!1,refreshInterval:0},gH=async(e,t)=>{try{const{time:r}=await F9(k(e,"time"),{headers:t});return r}catch{throw new Error("failed to request time")}},Nre=async(e,t)=>{const r=await gH(e,t);return Math.floor(r)};function H9(e){switch(e){case"mainnet-alpha":case gc.NetworkName.SN_MAIN:return gc.StarknetChainId.SN_MAIN;case"sepolia-alpha":case gc.NetworkName.SN_SEPOLIA:return gc.StarknetChainId.SN_SEPOLIA;default:throw new yU({code:"NOT_FOUND",message:`Unknown networkId: ${e}`})}}function mH(e){return e.replace(".stark","").split(".").map(t=>Mn.useEncoded(t).toString(10))}function yH(e){const t=H9(e);return Mn.getStarknetIdContract(t)}function _H(e,t){const r=yH(t),n=mH(e);try{const a={domain:n,hint:[]};return Dr.parse({contractAddress:r,entrypoint:"domain_to_address",calldata:a})}catch(a){throw new Dn({code:"NOT_VALID",options:{error:a}})}}async function vH(e,t,r){if(!t||!r)throw new Ln({code:"NO_NETWORK_OR_MULTICALL"});let n=null;try{n=_H(e,t)}catch(s){throw new Dn({code:"NOT_VALID",options:{error:s}})}let a,i;try{a=await r.callContract(n),i=a[0]}catch{throw new St({code:"STARKNAME_ERROR"})}if(Hr(i))throw new St({code:"STARKNAME_NOT_FOUND",message:`${e} not found`});if(!Vr(i))throw new St({code:"STARKNAME_INVALID_ADDRESS",message:`${e} resolved to an invalid address (${i})`});return Hn(i)}class Rre{constructor(t,r,n){this.httpService=t,this.baseUrl=r,this.allowedArgentNameNetworkId=n}async parseAddressOrDomain(t,r,n){if(Mr(t))return Hn(t);try{return await this.getAddressFromDomainName(t,r,n)}catch{throw new St({code:"NOT_VALID"})}}async getAddressFromDomainName(t,r,n){if(Gr(t))return vH(t,r,n);if(zr(t)){if(r!==this.allowedArgentNameNetworkId)throw new St({code:"ARGENT_NAME_INVALID_NETWORK",message:`Argent name is only enabled on "${this.allowedArgentNameNetworkId}"`});return qr(t,this.httpService,this.baseUrl)}throw new St({code:"NO_ADDRESS_FROM_DOMAIN"})}}const wH=null,eo={"0.2.4":"0x033434ad846cdd5f23eb73ff09fe6fddd568284a0fb7d1be20ee482f044dabe2","0.2.3":"0x1a7820094feaf82d53f53f214b81292d717e7bb9a92bb2488092cd306f3993f","0.2.2":"0x3e327de1c40540b98d05cbcb13552008e36f0ec8d61d46956d2f9752c294328","0.2.1":"0x7e28fb0161d10d1cf7fe1f13e7ca57bce062731a3bd04494dfd2d0412699727","0.4.0":"0x036078334509b514626504edc9fb252328d1a240e4e948bef8d0c08dff45927f","0.3.1":"0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b","0.3.0":"0x1a736d6ed154502257f02b1ccdf4d9d1089f80811cd6acad48e6b6a9d1f2003"},Zp={"0.1.1":"0x6e150953b26271a740bf2b6e9bca17cc52c68d765f761295de51ceb8526ee72","0.1.0":"0x737ee2f87ce571a58c6c8da558ec18a07ceb64a6172d5ec46171fbc80077a48"};var EH=typeof global=="object"&&global&&global.Object===Object&&global,xH=typeof self=="object"&&self&&self.Object===Object&&self,Kp=EH||xH||Function("return this")(),Gp=Kp.Symbol,j9=Object.prototype,AH=j9.hasOwnProperty,TH=j9.toString,h0=Gp?Gp.toStringTag:void 0;function SH(e){var t=AH.call(e,h0),r=e[h0];try{e[h0]=void 0;var n=!0}catch{}var a=TH.call(e);return n&&(t?e[h0]=r:delete e[h0]),a}var kH=Object.prototype,IH=kH.toString;function CH(e){return IH.call(e)}var OH="[object Null]",NH="[object Undefined]",$9=Gp?Gp.toStringTag:void 0;function RH(e){return e==null?e===void 0?NH:OH:$9&&$9 in Object(e)?SH(e):CH(e)}function V9(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var MH="[object AsyncFunction]",BH="[object Function]",PH="[object GeneratorFunction]",DH="[object Proxy]";function LH(e){if(!V9(e))return!1;var t=RH(e);return t==BH||t==PH||t==MH||t==DH}var Ym=Kp["__core-js_shared__"],z9=function(){var e=/[^.]+$/.exec(Ym&&Ym.keys&&Ym.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function UH(e){return!!z9&&z9 in e}var FH=Function.prototype,HH=FH.toString;function jH(e){if(e!=null){try{return HH.call(e)}catch{}try{return e+""}catch{}}return""}var $H=/[\\^$.*+?()[\]{}|]/g,VH=/^\[object .+?Constructor\]$/,zH=Function.prototype,qH=Object.prototype,ZH=zH.toString,KH=qH.hasOwnProperty,GH=RegExp("^"+ZH.call(KH).replace($H,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function WH(e){if(!V9(e)||UH(e))return!1;var t=LH(e)?GH:VH;return t.test(jH(e))}function YH(e,t){return e?.[t]}function Jm(e,t){var r=YH(e,t);return WH(r)?r:void 0}var p0=Jm(Object,"create");function JH(){this.__data__=p0?p0(null):{},this.size=0}function XH(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var QH="__lodash_hash_undefined__",ej=Object.prototype,tj=ej.hasOwnProperty;function rj(e){var t=this.__data__;if(p0){var r=t[e];return r===QH?void 0:r}return tj.call(t,e)?t[e]:void 0}var nj=Object.prototype,aj=nj.hasOwnProperty;function ij(e){var t=this.__data__;return p0?t[e]!==void 0:aj.call(t,e)}var sj="__lodash_hash_undefined__";function oj(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=p0&&t===void 0?sj:t,this}function Ff(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t-1}function bj(e,t){var r=this.__data__,n=Wp(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function $d(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t-1}function Nj(e,t,r){for(var n=-1,a=e==null?0:e.length;++n=Dj){var d=Pj(e);if(d)return q9(d);s=!1,a=Rj,c=new Jp}else c=o;e:for(;++nQ.lt(n,"0.3.0")).map(([,n])=>n);case"cairo1":return t.filter(([n])=>Q.gte(n,"0.3.0")).map(([,n])=>n);case"multisig":return r.map(([,n])=>n);default:return t.map(([,n])=>n)}}function Fj(){const e=Q.maxSatisfying(Object.keys(eo),"*");if(!e)throw new Error(`No argent account contract found: v${e} `);return eo[e]}function Mre(){const e=Q.maxSatisfying(Object.keys(Zp),"*");if(!e)throw new Error(`No argent multisig contract found: v${e} `);return Zp[e]}function Hj(){return Object.entries(eo).filter(([e])=>Q.gte(e,"0.4.0")).map(([,e])=>e)}function Bre(){const e=Q.maxSatisfying(Object.keys(eo),"<0.3.0");if(!e)throw new Error(`No argent account contract found: v${e} `);return eo[e]}function jj(){const e=Object.entries(eo).filter(([r])=>Q.gte(r,"0.3.1")).map(([,r])=>r),t=Object.entries(Zp).filter(([r])=>Q.gte(r,"0.1.1")).map(([,r])=>r);return[...e,...t]}function Pre(){return Object.entries(eo).filter(([e])=>Q.gte(e,"0.4.0")).map(([,e])=>e)}function Dre(){const e=Q.maxSatisfying(Object.keys(eo),">=0.4.0");if(!e)throw new Error(`No ledger account contract found: v${e}`);return eo[e]}const $j=(e,t)=>e.cairoVersion===t.cairoVersion&&nt(e.accountClassHash,t.accountClassHash);function Lre(e,t,r=[]){if(t.type==="imported")throw new Error("Cannot find implementation for imported account");const n=nn.parse({cairoVersion:t.cairoVersion??"1",accountClassHash:t.classHash??Fj()}),a=f.array(nn).parse(r),i=[...Z9("cairo0").map(o=>({cairoVersion:"0",accountClassHash:o})),...Z9("cairo1").map(o=>({cairoVersion:"1",accountClassHash:o}))],s=Uj([n,...a,...i],$j).map(o=>({implementation:o,address:qj(o.cairoVersion,o.accountClassHash,e,t.guardian,t.salt)})).find(o=>nt(o.address,t.address));if(!s)throw new Wr({code:"CALCULATED_ADDRESS_NO_MATCH"});return s.implementation}function Vj(e,t,r,n,a,i=wH[0]){const s=zj(e,t,r,n);return{classHash:e==="0"?i:t,constructorCalldata:mt.compile(s),addressSalt:a||r}}function zj(e,t,r,n){const a=e!=="0"&&nt(Kr,t),i={pubkey:r,...a?{}:{guardian:n||"0"}};if(Hj().some(s=>nt(s,t))){const s=rn(r,sn.Starknet),o=n?new an(cn.Some,rn(n,sn.Starknet)):new an(cn.None,null);return{ownerSigner:s,guardianAsOption:o}}return e==="0"?Zr.parse({implementation:t,selector:Gn.getSelectorFromName("initialize"),calldata:mt.compile(i)}):Yr.parse({owner:r,guardian:n})}function qj(e,t,r,n,a){const i=Vj(e,t,r,n,a);return Gn.calculateContractAddressFromHash(i.addressSalt,i.classHash,i.constructorCalldata,0)}function Ure(e,t){const r=un(e),n=un();return Ft(()=>{r.current=e},[e]),Ft(()=>()=>{n.current&&clearTimeout(n.current)},[]),(...a)=>{n.current&&clearTimeout(n.current),n.current=setTimeout(()=>r.current(...a),t)}}function Fre(e,t){const[r,n]=zn(e);return Ft(()=>{const a=setTimeout(()=>{n(e)},t);return()=>{clearTimeout(a)}},[e,t]),r}const Zj=_.object({name:_.enum(["dappland","discord","github","telegram","twitter","website"]),url:_.string(),position:_.number()}),Kj=_.object({address:Qn,chain:_.enum(["ethereum","starknet"])}),Gj=_.object({maxExpiryDays:_.number().positive(),allowList:_.array(_.object({contractAddress:Qn,methods:_.array(_.string())}))}),Wj=_.object({dappId:_.string(),name:_.string(),description:_.string().optional(),logoUrl:_.string().optional(),dappUrl:_.string().optional(),inAppBrowserCompatible:_.boolean(),argentVerified:_.boolean(),links:_.array(Zj).optional(),contracts:_.array(Kj).optional(),categories:_.array(_.string()).optional(),supportedApps:_.array(_.string()).optional(),brandColor:_.string().optional(),executeFromOutsideAllowed:_.boolean().default(!1).optional(),sessionConfig:_.union([Gj,_.object({})]).nullable().optional()}),Yj=_.array(Wj);class Hre{constructor(t,r){this.apiBase=t,this.httpService=new Wm(r,"json")}async getAll(){const t=await this.httpService.get(`${this.apiBase}/tokens/dapps`),r=Yj.safeParse(t);if(!r.success)throw new Error("Failed to parse known dapps");return r.data}}function Jj(e){var t;return(t=e?.links)==null?void 0:t.find(r=>r.name==="dappland")}function jre(e){var t;return(t=Jj(e))==null?void 0:t.url}const K9=_.object({domain:Pp,address:sa.optional(),avatar:_.string().optional(),status:_.union([_.literal("KNOWN"),_.literal("UNKNOWN")])}),Xj=_.array(K9),Qj=_.object({provider:_.string(),name:_.string(),avatar:_.string().optional()}),e$=_.object({address:sa,status:_.union([_.literal("KNOWN"),_.literal("UNKNOWN")]),resolutions:_.array(Qj).optional()}),t$=_.array(_.string()),r$=e$.array();class $re{constructor(t,r){this.apiBase=t,this.headers=r,this.httpService=new Wm(this.headers,"json")}async getAddressFromMultipleStarknetId(t,r,n){const a=new URLSearchParams(r.map(c=>["domain",c]));n&&a.set("includeAvatar","true");const i=k(this.apiBase,t,"starknet.id",`?${a}`),s=await this.httpService.get(i),o=Xj.safeParse(s);if(!o.success)throw new Error("Failed to parse name resolution");return o.data}async getAddressFromStarknetId(t,r,n){const a=k(this.apiBase,t,"starknet.id",r,n?"?includeAvatar=true":""),i=await this.httpService.get(a),s=K9.safeParse(i);if(!s.success)throw new Error("Failed to parse name resolution");return s.data}async getStarknetIdFromAddress(t,r,n){const a=new URLSearchParams(r.map(c=>["address",c]));n&&a.set("includeAvatar","true");const i=k(this.apiBase,t,"addresses",`?${a}`),s=await this.httpService.get(i),o=r$.safeParse(s);if(!o.success)throw new Error("Failed to parse name resolution");return o.data}async getProvidersNames(t){const r=k(this.apiBase,t,"providers","name"),n=await this.httpService.get(r),a=t$.safeParse(n);if(!a.success)throw new Error("Failed to parse name resolution");return a.data}}const G9=e=>e.slice(0,6)+"..."+e.slice(-4);function W9(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function n$(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function Xp(e,...t){if(!n$(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function Y9(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function a$(e,t){Xp(e);const r=t.outputLen;if(e.length>J9&Qp)}:{h:Number(e>>J9&Qp)|0,l:Number(e&Qp)|0}}function s$(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let a=0;ae<>>32-r,c$=(e,t,r)=>t<>>32-r,f$=(e,t,r)=>t<>>64-r,d$=(e,t,r)=>e<>>64-r;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */const u$=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),X9=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,l$=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255;function Q9(e){for(let t=0;tt.toString(16).padStart(2,"0"));function p$(e){Xp(e);let t="";for(let r=0;re().update(tE(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}const rE=[],nE=[],aE=[],m$=BigInt(0),b0=BigInt(1),y$=BigInt(2),_$=BigInt(7),v$=BigInt(256),w$=BigInt(113);for(let e=0,t=b0,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],rE.push(2*(5*n+r)),nE.push((e+1)*(e+2)/2%64);let a=m$;for(let i=0;i<7;i++)t=(t<>_$)*w$)%v$,t&y$&&(a^=b0<<(b0<r>32?f$(e,t,r):o$(e,t,r),sE=(e,t,r)=>r>32?d$(e,t,r):c$(e,t,r);function A$(e,t=24){const r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let s=0;s<10;s++)r[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){const o=(s+8)%10,c=(s+2)%10,d=r[c],l=r[c+1],y=iE(d,l,1)^r[o],M=sE(d,l,1)^r[o+1];for(let j=0;j<50;j+=10)e[s+j]^=y,e[s+j+1]^=M}let a=e[2],i=e[3];for(let s=0;s<24;s++){const o=nE[s],c=iE(a,i,o),d=sE(a,i,o),l=rE[s];a=e[l],i=e[l+1],e[l]=c,e[l+1]=d}for(let s=0;s<50;s+=10){for(let o=0;o<10;o++)r[o]=e[s+o];for(let o=0;o<10;o++)e[s+o]^=~r[(o+2)%10]&r[(o+4)%10]}e[0]^=E$[n],e[1]^=x$[n]}r.fill(0)}let T$=class bS extends b${constructor(t,r,n,a=!1,i=24){if(super(),this.blockLen=t,this.suffix=r,this.outputLen=n,this.enableXOF=a,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,W9(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=u$(this.state)}keccak(){X9||Q9(this.state32),A$(this.state32,this.rounds),X9||Q9(this.state32),this.posOut=0,this.pos=0}update(t){Y9(this);const{blockLen:r,state:n}=this;t=tE(t);const a=t.length;for(let i=0;i=n&&this.keccak();const s=Math.min(n-this.posOut,i-a);t.set(r.subarray(this.posOut,this.posOut+s),a),this.posOut+=s,a+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return W9(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(a$(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){const{blockLen:r,suffix:n,outputLen:a,rounds:i,enableXOF:s}=this;return t||(t=new bS(r,n,a,s,i)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=i,t.suffix=n,t.outputLen=a,t.enableXOF=s,t.destroyed=this.destroyed,t}};const Vre=(e,t,r)=>g$(()=>new T$(t,e,r)),S$=null;function k$(e){return`0x${p$(S$(eE(e)))}`}const I$=e=>{if(!Wn(e))return;const t=/(\d+)$/,r=e.match(t);if(r)return r[1]},C$=(e,t=!1)=>{if(!Wn(e))return"";const r=t?e.replace(/[^0-9a-z ]/gi,""):e,n=Fe(r).split(" "),a=I$(r),i=n.map(s=>s[0]);return a&&a.length>1&&a.length{const t=e.replace("#","");if(!/^[0-9A-F]{6}$/i.test(t))throw new Error(`Invalid color ${e}`);return`#${t}`},e1=(e,t)=>{const r=oE(t.background),n=oE(t.color??"#ffffff"),a=C$(e,!0),i=` + + ${a} + `;return`data:image/svg+xml;base64,${btoa(i)}`},cE=null,N$=e=>{const t=k$(e).slice(-2),r=parseInt(t,16)%cE.length;return cE[r]},R$=e=>{try{return O.toHex(O$(O.hexToDecimalString(e)))}catch{}return""},zre=({accountName:e,networkId:t,accountAddress:r,backgroundColor:n})=>{const a=R$(r),i=`${t}::${a}`,s=n||N$(i);return e1(e,{background:s})},M$=e=>{const t=$t.removeHexPrefix($t.sanitizeHex(O.toHex(e))),r=Zn.decode(t);return Yn.encode(r)},qre=e=>e.map(M$),B$=e=>{const t=Yn.decode(e);return $t.sanitizeHex(Zn.encode(t))},Zre=e=>e.map(B$);function Kre(e,t){const r=e.getTime(),n=t.getTime(),a=Math.abs(r-n);return Math.floor(a/(1e3*60*60*24))}const Gre=e=>(e||"false")==="true",Wre=async(e,t)=>{try{return await e.getClassHashAt(t),!0}catch{return!1}};function Yre(e){return!hs(e)}const Jre=e=>!!(e===""||/^(0|0x([a-f0-9A-F]+)?)$/.test(e)),vs=e=>!isNaN(parseFloat(e))&&isFinite(Number(e)),Xre=(e,t=16)=>{const r=new RegExp(`^[0-9]*.?[0-9]{0,${t}}$`);return e===""?!0:vs(e)?!!r.test(e):!1},Qm={CURRENCY:{minDecimalPlaces:2,maxDecimalPlaces:10,minDecimalSignificantDigits:2,decimalPlacesWhenZero:2,allowLeadingZerosInDecimalPart:!0},TOKEN:{minDecimalPlaces:4,maxDecimalPlaces:16,minDecimalSignificantDigits:2,decimalPlacesWhenZero:1,allowLeadingZerosInDecimalPart:!0}},P$=(e,t)=>fE(e,{...Qm.CURRENCY,...t||{}}),D$=(e,t)=>fE(e,{...Qm.TOKEN,...t||{}}),fE=(e,{minDecimalPlaces:t,maxDecimalPlaces:r,minDecimalSignificantDigits:n,decimalPlacesWhenZero:a,allowLeadingZerosInDecimalPart:i}=Qm.CURRENCY)=>{if(!vs(e))return null;const s=new on(typeof e=="bigint"?e.toString():e);let o;const c=`0.${"".padStart(a-1,"0")}1`;if(s.lt(new on(c))&&!i)o=`0.${"".padStart(a,"0")}`;else if(s.gte(1))o=s.toFormat(t);else{const y=s.toFormat(r).split(".")[1].match(/^0+/),M=i&&y&&y.length?y[0].length:0,j=Math.max(M+n,t);o=s.toFormat(j)}let d=o.replace(/0+$/,"");const l=1+o.indexOf(".")+a;return d.length{const r=e.replace(",",".");return!e||!vs(r)?0n:xt(r,Number(t)).value};function g0(e){return Ht.bnToUint256(e)}const Qre=(e,t)=>`${e} ${t}${e===1?"":"s"}`,ene=e=>new Promise((t,r)=>{const n=new FileReader;n.onload=()=>{var a;return n.result?t((a=n.result)==null?void 0:a.toString()):r(new Error("Could not read file"))},n.onerror=r,n.onabort=r.bind(null,new Error("User aborted")),n.readAsText(e)});function tne(e){try{return ps(Kn(e))}catch{return e}}const U$=(e,t)=>{const r=new URLSearchParams(t),n=r.size?`?${r}`:"";return k(...oe(e),n)};function rne(e){return(...t)=>{e(...t)}}class F$ extends Error{constructor(t,r){super(`${t}::${r}`),this.name=t,this.code=r,this.name=t}}class dE extends F${constructor(t){super("BackendPaginationError",t)}}const uE=32;class nne{constructor(t,r,n){this.apiBase=t,this.headers=r,this.imageOptimizationUrl=n,this.httpService=new Wm(this.headers,"json")}async getNfts(t,r,n,a=1){const i=this.normalizeAddress(n),s=k(this.apiBase,"pandora",t,r),o=this.pageToPageIndex(a),c=`${k(s,"profile",i,"nfts")}?page=${o}&size=${uE}`,d=await this.httpService.get(c),l=d.content.map(y=>this.mapItem(y,n));return{totalPages:d.totalPages,page:d.number+1,count:l.length,nfts:l}}async getCollection(t,r,n){const a=this.normalizeAddress(n),i=k(this.apiBase,"pandora",t,r),s=k(i,"collection",a),o=`${i}/collection/${a}`,[c,d]=await Promise.all([this.httpService.get(s),this.httpService.get(o)]),l=ey(c),y=d.content.map(M=>this.mapItem(M));return{...l,nfts:{totalPages:d.totalPages,page:d.number,count:y.length,data:y}}}async getNft(t,r,n,a){const i=this.normalizeAddress(n),s=k(this.apiBase,"pandora",t,r),o=k(s,"nft",i,a),c=await this.httpService.get(o);return this.mapItem(c)}async getProfileCollections(t,r,n,a=1,i=!1){const s=this.pageToPageIndex(a),o=this.normalizeAddress(n),c=k(this.apiBase,"pandora",t,r),d=k(c,"profile",o,"collections",`?page=${s}&size=${uE}`),l=await this.httpService.get(d),y=[];for(const M of l.content)if(i){const j=await this.getCollectionMetrics(t,r,M.contractAddress);y.push(ey(M,j))}else y.push(ey(M));return{totalPages:l.totalPages,page:l.number+1,count:y.length,collections:y}}async getCollectionMetrics(t,r,n){const a=this.normalizeAddress(n),i=k(this.apiBase,"pandora",t,r),s=k(i,"collection",a,"metrics");return this.httpService.get(s)}normalizeAddress(t){return Re.parse(t)}pageToPageIndex(t){if(!Number.isInteger(t))throw new dE("notANumber");const r=t-1;if(r<0)throw new dE("tooLow");return r}optimizeImage(t,r,n){if(!t)return;const a=new URLSearchParams({url:t,w:(r??400).toString(),h:(n??400).toString()});return`${this.imageOptimizationUrl}?${a.toString()}`}mapItem(t,r){var n;const a=t.name??t.tokenId;return{token_id:t.tokenId,contract_address:t.contractAddress,name:a,spec:"spec"in t?H$(t.spec):void 0,description:"",best_bid_order:{payment_amount:"bestListPrice"in t?BigInt(t.bestListPrice):void 0},properties:"properties"in t&&t.properties.map(i=>({key:i.key,value:i.value}))||[],image_uri:this.optimizeImage(t.imageUrls.preview)??e1(a,{background:"#15192A",color:"#ffffff"}),image_url_copy:this.optimizeImage(t.imageUrls.full)??e1(a,{background:"#15192A",color:"#ffffff"}),owner:{account_address:((n=t.owner)==null?void 0:n.address)||r},contract_name:G9(t.contractAddress)}}}function H$(e){switch(e){case"erc721":case"starknetErc721":return"ERC721";case"erc1155":case"starknetErc1155":return"ERC1155"}}function ey(e,t){return{contractAddress:se.parse(e.contractAddress),name:e.name||G9(e.contractAddress),description:e.description??"",imageUri:e.imageUrls.preview??e1(e.name||e.contractAddress.replace("0x",""),{background:"#15192A",color:"#ffffff"}),...t&&{owners:{total:t.numberOfItems,unique:t.uniqueOwners},...t.floorPrice&&{floorPrice:BigInt(t.floorPrice)}}}}const lE=async(e,t,r,n,a=1)=>{const i=await e.getNfts(t,r,n,a);if(a{const{data:i,...s}=ae(n&&[n,"nfts"],()=>n&&lE(e,t,r,n),{refreshInterval:3e5,...a});return{nfts:i?.nfts,...s}},ine=(e,t,r,n,a)=>{const{data:i,...s}=ae(n&&[`${n}`,"nfts-collection"],()=>n&&e.getCollection(t,r,n),{refreshInterval:6e4,...a});return{collection:i,...s}},sne=(e,t,r,n,a,i)=>{const{data:s,...o}=ae(a&&n&&[`${n}:${a}`,"nft"],()=>a&&n?e.getNft(t,r,n,a):void 0,{refreshInterval:6e4,revalidateOnFocus:!1,revalidateOnMount:!1,...i});return{nft:s,...o}},one=({image_uri:e,image_url_copy:t})=>{if(e&&t){if(!t.startsWith("ipfs://"))return t;if(!e.startsWith("ipfs://"))return e}return t||e},cne=(e,t)=>e.token_id===t.token_id&&nt(e.contract_address,t.contract_address);function hE(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function j$(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function pE(e,...t){if(!j$(e))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function t1(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function bE(e,t){pE(e);const r=t.outputLen;if(e.length>gE&r1)}:{h:Number(e>>gE&r1)|0,l:Number(e&r1)|0}}function V$(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let a=0;ae<>>32-r,q$=(e,t,r)=>t<>>32-r,Z$=(e,t,r)=>t<>>64-r,K$=(e,t,r)=>e<>>64-r;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */const G$=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));function W$(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}const ty=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),to=(e,t)=>e<<32-t|e>>>t;if(!(new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68))throw new Error("Non little-endian hardware is not supported");function mE(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ry(e){if(typeof e=="string"&&(e=mE(e)),!W$(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}let yE=class{clone(){return this._cloneInto()}};function _E(e){const t=n=>e().update(ry(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}const[vE,wE,EE]=[[],[],[]],Y$=BigInt(0),m0=BigInt(1),J$=BigInt(2),X$=BigInt(7),Q$=BigInt(256),eV=BigInt(113);for(let e=0,t=m0,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],vE.push(2*(5*n+r)),wE.push((e+1)*(e+2)/2%64);let a=Y$;for(let i=0;i<7;i++)t=(t<>X$)*eV)%Q$,t&J$&&(a^=m0<<(m0<r>32?Z$(e,t,r):z$(e,t,r),AE=(e,t,r)=>r>32?K$(e,t,r):q$(e,t,r);function nV(e,t=24){const r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let s=0;s<10;s++)r[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){const o=(s+8)%10,c=(s+2)%10,d=r[c],l=r[c+1],y=xE(d,l,1)^r[o],M=AE(d,l,1)^r[o+1];for(let j=0;j<50;j+=10)e[s+j]^=y,e[s+j+1]^=M}let a=e[2],i=e[3];for(let s=0;s<24;s++){const o=wE[s],c=xE(a,i,o),d=AE(a,i,o),l=vE[s];a=e[l],i=e[l+1],e[l]=c,e[l+1]=d}for(let s=0;s<50;s+=10){for(let o=0;o<10;o++)r[o]=e[s+o];for(let o=0;o<10;o++)e[s+o]^=~r[(o+2)%10]&r[(o+4)%10]}e[0]^=tV[n],e[1]^=rV[n]}r.fill(0)}class ny extends yE{constructor(t,r,n,a=!1,i=24){if(super(),this.blockLen=t,this.suffix=r,this.outputLen=n,this.enableXOF=a,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,hE(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=G$(this.state)}keccak(){nV(this.state32,this.rounds),this.posOut=0,this.pos=0}update(t){t1(this);const{blockLen:r,state:n}=this;t=ry(t);const a=t.length;for(let i=0;i=n&&this.keccak();const s=Math.min(n-this.posOut,i-a);t.set(r.subarray(this.posOut,this.posOut+s),a),this.posOut+=s,a+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return hE(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(bE(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){const{blockLen:r,suffix:n,outputLen:a,rounds:i,enableXOF:s}=this;return t||(t=new ny(r,n,a,s,i)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=i,t.suffix=n,t.outputLen=a,t.enableXOF=s,t.destroyed=this.destroyed,t}}const dne=(e,t,r)=>_E(()=>new ny(t,e,r)),aV=null;function iV(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);const a=BigInt(32),i=BigInt(4294967295),s=Number(r>>a&i),o=Number(r&i),c=n?4:0,d=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+d,o,n)}class sV extends yE{constructor(t,r,n,a){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=a,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=ty(this.buffer)}update(t){t1(this);const{view:r,buffer:n,blockLen:a}=this;t=ry(t);const i=t.length;for(let s=0;sa-s&&(this.process(n,0),s=0);for(let y=s;yl.length)throw new Error("_sha2: outputLen bigger than state");for(let y=0;ye&t^~e&r,cV=(e,t,r)=>e&t^e&r^t&r,fV=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Hc=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),jc=new Uint32Array(64);class dV extends sV{constructor(){super(64,32,8,!1),this.A=Hc[0]|0,this.B=Hc[1]|0,this.C=Hc[2]|0,this.D=Hc[3]|0,this.E=Hc[4]|0,this.F=Hc[5]|0,this.G=Hc[6]|0,this.H=Hc[7]|0}get(){const{A:t,B:r,C:n,D:a,E:i,F:s,G:o,H:c}=this;return[t,r,n,a,i,s,o,c]}set(t,r,n,a,i,s,o,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=a|0,this.E=i|0,this.F=s|0,this.G=o|0,this.H=c|0}process(t,r){for(let y=0;y<16;y++,r+=4)jc[y]=t.getUint32(r,!1);for(let y=16;y<64;y++){const M=jc[y-15],j=jc[y-2],G=to(M,7)^to(M,18)^M>>>3,$=to(j,17)^to(j,19)^j>>>10;jc[y]=$+jc[y-7]+G+jc[y-16]|0}let{A:n,B:a,C:i,D:s,E:o,F:c,G:d,H:l}=this;for(let y=0;y<64;y++){const M=to(o,6)^to(o,11)^to(o,25),j=l+M+oV(o,c,d)+fV[y]+jc[y]|0,G=(to(n,2)^to(n,13)^to(n,22))+cV(n,a,i)|0;l=d,d=c,c=o,o=s+j|0,s=i,i=a,a=n,n=j+G|0}n=n+this.A|0,a=a+this.B|0,i=i+this.C|0,s=s+this.D|0,o=o+this.E|0,c=c+this.F|0,d=d+this.G|0,l=l+this.H|0,this.set(n,a,i,s,o,c,d,l)}roundClean(){jc.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}const TE=_E(()=>new dV);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const SE=BigInt(0),n1=BigInt(1),uV=BigInt(2),a1=e=>e instanceof Uint8Array,lV=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Hf(e){if(!a1(e))throw new Error("Uint8Array expected");let t="";for(let r=0;rjf(e.toString(16).padStart(t*2,"0")),IE=(e,t)=>zd(e,t).reverse(),hV=e=>jf(kE(e));function mi(e,t,r){let n;if(typeof t=="string")try{n=jf(t)}catch(i){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${i}`)}else if(a1(t))n=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);const a=n.length;if(typeof r=="number"&&a!==r)throw new Error(`${e} expected ${r} bytes, got ${a}`);return n}function y0(...e){const t=new Uint8Array(e.reduce((n,a)=>n+a.length,0));let r=0;return e.forEach(n=>{if(!a1(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}function pV(e,t){if(e.length!==t.length)return!1;for(let r=0;rSE;e>>=n1,t+=1);return t}const mV=(e,t)=>e>>BigInt(t)&n1,yV=(e,t,r)=>e|(r?n1:SE)<(uV<new Uint8Array(e),CE=e=>Uint8Array.from(e);function OE(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=sy(e),a=sy(e),i=0;const s=()=>{n.fill(1),a.fill(0),i=0},o=(...l)=>r(a,n,...l),c=(l=sy())=>{a=o(CE([0]),l),n=o(),l.length!==0&&(a=o(CE([1]),l),n=o())},d=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let l=0;const y=[];for(;l{s(),c(l);let M;for(;!(M=y(d()));)c();return s(),M}}const _V={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function _0(e,t,r={}){const n=(a,i,s)=>{const o=_V[i];if(typeof o!="function")throw new Error(`Invalid validator "${i}", expected function`);const c=e[a];if(!(s&&c===void 0)&&!o(c,e))throw new Error(`Invalid param ${String(a)}=${c} (${typeof c}), expected ${i}`)};for(const[a,i]of Object.entries(t))n(a,i,!1);for(const[a,i]of Object.entries(r))n(a,i,!0);return e}const vV=Object.freeze(Object.defineProperty({__proto__:null,bitGet:mV,bitLen:gV,bitMask:i1,bitSet:yV,bytesToHex:Hf,bytesToNumberBE:Es,bytesToNumberLE:iy,concatBytes:y0,createHmacDrbg:OE,ensureBytes:mi,equalBytes:pV,hexToBytes:jf,hexToNumber:ay,numberToBytesBE:zd,numberToBytesLE:IE,numberToHexUnpadded:kE,numberToVarBytesBE:hV,utf8ToBytes:bV,validateObject:_0},Symbol.toStringTag,{value:"Module"}));/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Ua=BigInt(0),ga=BigInt(1),$f=BigInt(2),wV=BigInt(3),oy=BigInt(4),NE=BigInt(5),RE=BigInt(8);BigInt(9),BigInt(16);function yi(e,t){const r=e%t;return r>=Ua?r:t+r}function EV(e,t,r){if(r<=Ua||t 0");if(r===ga)return Ua;let n=ga;for(;t>Ua;)t&ga&&(n=n*e%r),e=e*e%r,t>>=ga;return n}function cy(e,t){if(e===Ua||t<=Ua)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=yi(e,t),n=t,a=Ua,i=ga;for(;r!==Ua;){const s=n/r,o=n%r,c=a-i*s;n=r,r=o,a=i,i=c}if(n!==ga)throw new Error("invert: does not exist");return yi(a,t)}function xV(e){const t=(e-ga)/$f;let r,n,a;for(r=e-ga,n=0;r%$f===Ua;r/=$f,n++);for(a=$f;a(n[a]="function",n),t);return _0(e,r)}function ME(e,t,r){if(r 0");if(r===Ua)return e.ONE;if(r===ga)return t;let n=e.ONE,a=t;for(;r>Ua;)r&ga&&(n=e.mul(n,a)),a=e.sqr(a),r>>=ga;return n}function SV(e,t){const r=new Array(t.length),n=t.reduce((i,s,o)=>e.is0(s)?i:(r[o]=i,e.mul(i,s)),e.ONE),a=e.inv(n);return t.reduceRight((i,s,o)=>e.is0(s)?i:(r[o]=e.mul(i,r[o]),e.mul(i,s)),a),r}function dy(e,t){const r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function uy(e,t,r=!1,n={}){if(e<=Ua)throw new Error(`Expected Fp ORDER > 0, got ${e}`);const{nBitLength:a,nByteLength:i}=dy(e,t);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");const s=AV(e),o=Object.freeze({ORDER:e,BITS:a,BYTES:i,MASK:i1(a),ZERO:Ua,ONE:ga,create:c=>yi(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Ua<=c&&cc===Ua,isOdd:c=>(c&ga)===ga,neg:c=>yi(-c,e),eql:(c,d)=>c===d,sqr:c=>yi(c*c,e),add:(c,d)=>yi(c+d,e),sub:(c,d)=>yi(c-d,e),mul:(c,d)=>yi(c*d,e),pow:(c,d)=>ME(o,c,d),div:(c,d)=>yi(c*cy(d,e),e),sqrN:c=>c*c,addN:(c,d)=>c+d,subN:(c,d)=>c-d,mulN:(c,d)=>c*d,inv:c=>cy(c,e),sqrt:n.sqrt||(c=>s(o,c)),invertBatch:c=>SV(o,c),cmov:(c,d,l)=>l?d:c,toBytes:c=>r?IE(c,i):zd(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return r?iy(c):Es(c)}});return Object.freeze(o)}function kV(e,t,r=!1){e=mi("privateHash",e);const n=e.length,a=dy(t).nByteLength+8;if(a<24||n1024)throw new Error(`hashToPrivateScalar: expected ${a}-1024 bytes of input, got ${n}`);const i=r?iy(e):Es(e);return yi(i,t-ga)+ga}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function IV(e){const{Fp:t}=e;fy(t);for(const c of["t","roundsFull","roundsPartial"])if(typeof e[c]!="number"||!Number.isSafeInteger(e[c]))throw new Error(`Poseidon: invalid param ${c}=${e[c]} (${typeof e[c]})`);if(e.reversePartialPowIdx!==void 0&&typeof e.reversePartialPowIdx!="boolean")throw new Error(`Poseidon: invalid param reversePartialPowIdx=${e.reversePartialPowIdx}`);let r=e.sboxPower;if(r===void 0&&(r=5),typeof r!="number"||!Number.isSafeInteger(r))throw new Error(`Poseidon wrong sboxPower=${r}`);const n=BigInt(r);let a=c=>ME(t,c,n);if(r===3?a=c=>t.mul(t.sqrN(c),c):r===5&&(a=c=>t.mul(t.sqrN(t.sqrN(c)),c)),e.roundsFull%2!==0)throw new Error(`Poseidon roundsFull is not even: ${e.roundsFull}`);const i=e.roundsFull+e.roundsPartial;if(!Array.isArray(e.roundConstants)||e.roundConstants.length!==i)throw new Error("Poseidon: wrong round constants");const s=e.roundConstants.map(c=>{if(!Array.isArray(c)||c.length!==e.t)throw new Error(`Poseidon wrong round constants: ${c}`);return c.map(d=>{if(typeof d!="bigint"||!t.isValid(d))throw new Error(`Poseidon wrong round constant=${d}`);return t.create(d)})});if(!Array.isArray(e.mds)||e.mds.length!==e.t)throw new Error("Poseidon: wrong MDS matrix");const o=e.mds.map(c=>{if(!Array.isArray(c)||c.length!==e.t)throw new Error(`Poseidon MDS matrix row: ${c}`);return c.map(d=>{if(typeof d!="bigint")throw new Error(`Poseidon MDS matrix value=${d}`);return t.create(d)})});return Object.freeze({...e,rounds:i,sboxFn:a,roundConstants:s,mds:o})}function CV(e){const{t,Fp:r,rounds:n,sboxFn:a,reversePartialPowIdx:i}=IV(e),s=Math.floor(e.roundsFull/2),o=i?t-1:0,c=(l,y,M)=>(l=l.map((j,G)=>r.add(j,e.roundConstants[M][G])),y?l=l.map(j=>a(j)):l[o]=a(l[o]),l=e.mds.map(j=>j.reduce((G,$,fe)=>r.add(G,r.mulN($,l[fe])),r.ZERO)),l),d=function(l){if(!Array.isArray(l)||l.length!==t)throw new Error(`Poseidon: wrong values (expected array of bigints with length ${t})`);l=l.map(M=>{if(typeof M!="bigint")throw new Error(`Poseidon: wrong value=${M} (${typeof M})`);return r.create(M)});let y=0;for(let M=0;M{const s=i.negate();return a?s:i},n=a=>{const i=Math.ceil(t/a)+1,s=2**(a-1);return{windows:i,windowSize:s}};return{constTimeNegate:r,unsafeLadder(a,i){let s=e.ZERO,o=a;for(;i>OV;)i&ly&&(s=s.add(o)),o=o.double(),i>>=ly;return s},precomputeWindow(a,i){const{windows:s,windowSize:o}=n(i),c=[];let d=a,l=d;for(let y=0;y>=j,fe>c&&(fe-=M,s+=ly);const he=$,Oe=$+Math.abs(fe)-1,We=G%2!==0,et=fe<0;fe===0?l=l.add(r(We,i[he])):d=d.add(r(et,i[Oe]))}return{p:d,f:l}},wNAFCached(a,i,s,o){const c=a._WINDOW_SIZE||1;let d=i.get(a);return d||(d=this.precomputeWindow(a,c),c!==1&&i.set(a,o(d))),this.wNAF(c,d,s)}}}function BE(e){return fy(e.Fp),_0(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...dy(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function RV(e){const t=BE(e);_0(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:r,Fp:n,a}=t;if(r){if(!n.eql(a,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}const{bytesToNumberBE:MV,hexToBytes:BV}=vV,Vf={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(e){const{Err:t}=Vf;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");const r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:MV(n),l:e.subarray(r+2)}},toSig(e){const{Err:t}=Vf,r=typeof e=="string"?BV(e):e;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");const{d:a,l:i}=Vf._parseInt(r.subarray(2)),{d:s,l:o}=Vf._parseInt(i);if(o.length)throw new t("Invalid signature: left bytes after parsing");return{r:a,s}},hexFromSig(e){const t=d=>Number.parseInt(d[0],16)&8?"00"+d:d,r=d=>{const l=d.toString(16);return l.length&1?`0${l}`:l},n=t(r(e.s)),a=t(r(e.r)),i=n.length/2,s=a.length/2,o=r(i),c=r(s);return`30${r(s+i+4)}02${c}${a}02${o}${n}`}},Ho=BigInt(0),Li=BigInt(1);BigInt(2);const PE=BigInt(3);BigInt(4);function PV(e){const t=RV(e),{Fp:r}=t,n=t.toBytes||((G,$,fe)=>{const he=$.toAffine();return y0(Uint8Array.from([4]),r.toBytes(he.x),r.toBytes(he.y))}),a=t.fromBytes||(G=>{const $=G.subarray(1),fe=r.fromBytes($.subarray(0,r.BYTES)),he=r.fromBytes($.subarray(r.BYTES,2*r.BYTES));return{x:fe,y:he}});function i(G){const{a:$,b:fe}=t,he=r.sqr(G),Oe=r.mul(he,G);return r.add(r.add(Oe,r.mul(G,$)),fe)}if(!r.eql(r.sqr(t.Gy),i(t.Gx)))throw new Error("bad generator point: equation left != right");function s(G){return typeof G=="bigint"&&Hor.eql(We,r.ZERO);return Oe(fe)&&Oe(he)?y.ZERO:new y(fe,he,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ($){const fe=r.invertBatch($.map(he=>he.pz));return $.map((he,Oe)=>he.toAffine(fe[Oe])).map(y.fromAffine)}static fromHex($){const fe=y.fromAffine(a(mi("pointHex",$)));return fe.assertValidity(),fe}static fromPrivateKey($){return y.BASE.multiply(c($))}_setWindowSize($){this._WINDOW_SIZE=$,d.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint)return;throw new Error("bad point: ZERO")}const{x:$,y:fe}=this.toAffine();if(!r.isValid($)||!r.isValid(fe))throw new Error("bad point: x or y not FE");const he=r.sqr(fe),Oe=i($);if(!r.eql(he,Oe))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:$}=this.toAffine();if(r.isOdd)return!r.isOdd($);throw new Error("Field doesn't support isOdd")}equals($){l($);const{px:fe,py:he,pz:Oe}=this,{px:We,py:et,pz:ht}=$,tt=r.eql(r.mul(fe,ht),r.mul(We,Oe)),He=r.eql(r.mul(he,ht),r.mul(et,Oe));return tt&&He}negate(){return new y(this.px,r.neg(this.py),this.pz)}double(){const{a:$,b:fe}=t,he=r.mul(fe,PE),{px:Oe,py:We,pz:et}=this;let ht=r.ZERO,tt=r.ZERO,He=r.ZERO,Y=r.mul(Oe,Oe),ve=r.mul(We,We),me=r.mul(et,et),Ne=r.mul(Oe,We);return Ne=r.add(Ne,Ne),He=r.mul(Oe,et),He=r.add(He,He),ht=r.mul($,He),tt=r.mul(he,me),tt=r.add(ht,tt),ht=r.sub(ve,tt),tt=r.add(ve,tt),tt=r.mul(ht,tt),ht=r.mul(Ne,ht),He=r.mul(he,He),me=r.mul($,me),Ne=r.sub(Y,me),Ne=r.mul($,Ne),Ne=r.add(Ne,He),He=r.add(Y,Y),Y=r.add(He,Y),Y=r.add(Y,me),Y=r.mul(Y,Ne),tt=r.add(tt,Y),me=r.mul(We,et),me=r.add(me,me),Y=r.mul(me,Ne),ht=r.sub(ht,Y),He=r.mul(me,ve),He=r.add(He,He),He=r.add(He,He),new y(ht,tt,He)}add($){l($);const{px:fe,py:he,pz:Oe}=this,{px:We,py:et,pz:ht}=$;let tt=r.ZERO,He=r.ZERO,Y=r.ZERO;const ve=t.a,me=r.mul(t.b,PE);let Ne=r.mul(fe,We),qe=r.mul(he,et),Je=r.mul(Oe,ht),je=r.add(fe,he),X=r.add(We,et);je=r.mul(je,X),X=r.add(Ne,qe),je=r.sub(je,X),X=r.add(fe,Oe);let ue=r.add(We,ht);return X=r.mul(X,ue),ue=r.add(Ne,Je),X=r.sub(X,ue),ue=r.add(he,Oe),tt=r.add(et,ht),ue=r.mul(ue,tt),tt=r.add(qe,Je),ue=r.sub(ue,tt),Y=r.mul(ve,X),tt=r.mul(me,Je),Y=r.add(tt,Y),tt=r.sub(qe,Y),Y=r.add(qe,Y),He=r.mul(tt,Y),qe=r.add(Ne,Ne),qe=r.add(qe,Ne),Je=r.mul(ve,Je),X=r.mul(me,X),qe=r.add(qe,Je),Je=r.sub(Ne,Je),Je=r.mul(ve,Je),X=r.add(X,Je),Ne=r.mul(qe,X),He=r.add(He,Ne),Ne=r.mul(ue,X),tt=r.mul(je,tt),tt=r.sub(tt,Ne),Ne=r.mul(je,qe),Y=r.mul(ue,Y),Y=r.add(Y,Ne),new y(tt,He,Y)}subtract($){return this.add($.negate())}is0(){return this.equals(y.ZERO)}wNAF($){return j.wNAFCached(this,d,$,fe=>{const he=r.invertBatch(fe.map(Oe=>Oe.pz));return fe.map((Oe,We)=>Oe.toAffine(he[We])).map(y.fromAffine)})}multiplyUnsafe($){const fe=y.ZERO;if($===Ho)return fe;if(o($),$===Li)return this;const{endo:he}=t;if(!he)return j.unsafeLadder(this,$);let{k1neg:Oe,k1:We,k2neg:et,k2:ht}=he.splitScalar($),tt=fe,He=fe,Y=this;for(;We>Ho||ht>Ho;)We&Li&&(tt=tt.add(Y)),ht&Li&&(He=He.add(Y)),Y=Y.double(),We>>=Li,ht>>=Li;return Oe&&(tt=tt.negate()),et&&(He=He.negate()),He=new y(r.mul(He.px,he.beta),He.py,He.pz),tt.add(He)}multiply($){o($);let fe=$,he,Oe;const{endo:We}=t;if(We){const{k1neg:et,k1:ht,k2neg:tt,k2:He}=We.splitScalar(fe);let{p:Y,f:ve}=this.wNAF(ht),{p:me,f:Ne}=this.wNAF(He);Y=j.constTimeNegate(et,Y),me=j.constTimeNegate(tt,me),me=new y(r.mul(me.px,We.beta),me.py,me.pz),he=Y.add(me),Oe=ve.add(Ne)}else{const{p:et,f:ht}=this.wNAF(fe);he=et,Oe=ht}return y.normalizeZ([he,Oe])[0]}multiplyAndAddUnsafe($,fe,he){const Oe=y.BASE,We=(ht,tt)=>tt===Ho||tt===Li||!ht.equals(Oe)?ht.multiplyUnsafe(tt):ht.multiply(tt),et=We(this,fe).add(We($,he));return et.is0()?void 0:et}toAffine($){const{px:fe,py:he,pz:Oe}=this,We=this.is0();$==null&&($=We?r.ONE:r.inv(Oe));const et=r.mul(fe,$),ht=r.mul(he,$),tt=r.mul(Oe,$);if(We)return{x:r.ZERO,y:r.ZERO};if(!r.eql(tt,r.ONE))throw new Error("invZ was invalid");return{x:et,y:ht}}isTorsionFree(){const{h:$,isTorsionFree:fe}=t;if($===Li)return!0;if(fe)return fe(y,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:$,clearCofactor:fe}=t;return $===Li?this:fe?fe(y,this):this.multiplyUnsafe(t.h)}toRawBytes($=!0){return this.assertValidity(),n(y,this,$)}toHex($=!0){return Hf(this.toRawBytes($))}}y.BASE=new y(t.Gx,t.Gy,r.ONE),y.ZERO=new y(r.ZERO,r.ONE,r.ZERO);const M=t.nBitLength,j=NV(y,t.endo?Math.ceil(M/2):M);return{CURVE:t,ProjectivePoint:y,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:s}}function DV(e){const t=BE(e);return _0(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function LV(e){const t=DV(e),{Fp:r,n}=t,a=r.BYTES+1,i=2*r.BYTES+1;function s(X){return HoHf(zd(X,t.nByteLength));function G(X){const ue=n>>Li;return X>ue}function $(X){return G(X)?o(-X):X}const fe=(X,ue,Ue)=>Es(X.slice(ue,Ue));class he{constructor(ue,Ue,Ze){this.r=ue,this.s=Ue,this.recovery=Ze,this.assertValidity()}static fromCompact(ue){const Ue=t.nByteLength;return ue=mi("compactSignature",ue,Ue*2),new he(fe(ue,0,Ue),fe(ue,Ue,2*Ue))}static fromDER(ue){const{r:Ue,s:Ze}=Vf.toSig(mi("DER",ue));return new he(Ue,Ze)}assertValidity(){if(!M(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!M(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(ue){return new he(this.r,this.s,ue)}recoverPublicKey(ue){const{r:Ue,s:Ze,recovery:ct}=this,At=He(mi("msgHash",ue));if(ct==null||![0,1,2,3].includes(ct))throw new Error("recovery id invalid");const Ot=ct===2||ct===3?Ue+t.n:Ue;if(Ot>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");const Ut=ct&1?"03":"02",tr=d.fromHex(Ut+j(Ot)),rr=c(Ot),Xt=o(-At*rr),lr=o(Ze*rr),nr=d.BASE.multiplyAndAddUnsafe(tr,Xt,lr);if(!nr)throw new Error("point at infinify");return nr.assertValidity(),nr}hasHighS(){return G(this.s)}normalizeS(){return this.hasHighS()?new he(this.r,o(-this.s),this.recovery):this}toDERRawBytes(){return jf(this.toDERHex())}toDERHex(){return Vf.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return jf(this.toCompactHex())}toCompactHex(){return j(this.r)+j(this.s)}}const Oe={isValidPrivateKey(X){try{return l(X),!0}catch{return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{const X=t.randomBytes(r.BYTES+8),ue=kV(X,n);return zd(ue,t.nByteLength)},precompute(X=8,ue=d.BASE){return ue._setWindowSize(X),ue.multiply(BigInt(3)),ue}};function We(X,ue=!0){return d.fromPrivateKey(X).toRawBytes(ue)}function et(X){const ue=X instanceof Uint8Array,Ue=typeof X=="string",Ze=(ue||Ue)&&X.length;return ue?Ze===a||Ze===i:Ue?Ze===2*a||Ze===2*i:X instanceof d}function ht(X,ue,Ue=!0){if(et(X))throw new Error("first arg must be private key");if(!et(ue))throw new Error("second arg must be public key");return d.fromHex(ue).multiply(l(X)).toRawBytes(Ue)}const tt=t.bits2int||function(X){const ue=Es(X),Ue=X.length*8-t.nBitLength;return Ue>0?ue>>BigInt(Ue):ue},He=t.bits2int_modN||function(X){return o(tt(X))},Y=i1(t.nBitLength);function ve(X){if(typeof X!="bigint")throw new Error("bigint expected");if(!(Ho<=X&&Xur in Ue))throw new Error("sign() legacy options not supported");const{hash:Ze,randomBytes:ct}=t;let{lowS:At,prehash:Ot,extraEntropy:Ut}=Ue;At==null&&(At=!0),X=mi("msgHash",X),Ot&&(X=mi("prehashed msgHash",Ze(X)));const tr=He(X),rr=l(ue),Xt=[ve(rr),ve(tr)];if(Ut!=null){const ur=Ut===!0?ct(r.BYTES):Ut;Xt.push(mi("extraEntropy",ur,r.BYTES))}const lr=y0(...Xt),nr=tr;function Sn(ur){const mn=tt(ur);if(!M(mn))return;const hr=c(mn),vr=d.BASE.multiply(mn).toAffine(),Er=o(vr.x);if(Er===Ho)return;const yr=o(hr*o(nr+Er*rr));if(yr===Ho)return;let or=(vr.x===Er?0:2)|Number(vr.y&Li),ya=yr;return At&&G(yr)&&(ya=$(yr),or^=1),new he(Er,ya,or)}return{seed:lr,k2sig:Sn}}const Ne={lowS:t.lowS,prehash:!1},qe={lowS:t.lowS,prehash:!1};function Je(X,ue,Ue=Ne){const{seed:Ze,k2sig:ct}=me(X,ue,Ue);return OE(t.hash.outputLen,t.nByteLength,t.hmac)(Ze,ct)}d.BASE._setWindowSize(8);function je(X,ue,Ue,Ze=qe){var ct;const At=X;if(ue=mi("msgHash",ue),Ue=mi("publicKey",Ue),"strict"in Ze)throw new Error("options.strict was renamed to lowS");const{lowS:Ot,prehash:Ut}=Ze;let tr,rr;try{if(typeof At=="string"||At instanceof Uint8Array)try{tr=he.fromDER(At)}catch(vr){if(!(vr instanceof Vf.Err))throw vr;tr=he.fromCompact(At)}else if(typeof At=="object"&&typeof At.r=="bigint"&&typeof At.s=="bigint"){const{r:vr,s:Er}=At;tr=new he(vr,Er)}else throw new Error("PARSE");rr=d.fromHex(Ue)}catch(vr){if(vr.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(Ot&&tr.hasHighS())return!1;Ut&&(ue=t.hash(ue));const{r:Xt,s:lr}=tr,nr=He(ue),Sn=c(lr),ur=o(nr*Sn),mn=o(Xt*Sn),hr=(ct=d.BASE.multiplyAndAddUnsafe(rr,ur,mn))==null?void 0:ct.toAffine();return hr?o(hr.x)===Xt:!1}return{CURVE:t,getPublicKey:We,getSharedSecret:ht,sign:Je,verify:je,ProjectivePoint:d,Signature:he,utils:Oe}}function hy(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function UV(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function DE(e,...t){if(!(e instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new TypeError(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function FV(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");hy(e.outputLen),hy(e.blockLen)}function HV(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function jV(e,t){DE(e);const r=t.outputLen;if(e.lengtht.toString(16).padStart(2,"0"));function $V(e){if(typeof e!="string")throw new TypeError(`utf8ToBytes expected string, got ${typeof e}`);return new TextEncoder().encode(e)}function VV(e){if(typeof e=="string"&&(e=$V(e)),!(e instanceof Uint8Array))throw new TypeError(`Expected input type is Uint8Array (got ${typeof e})`);return e}function zV(...e){if(!e.every(n=>n instanceof Uint8Array))throw new Error("Uint8Array list expected");if(e.length===1)return e[0];const t=e.reduce((n,a)=>n+a.length,0),r=new Uint8Array(t);for(let n=0,a=0;na?t.create().update(n).digest():n);for(let s=0;snew LE(e,t).update(r).digest();UE.create=(e,t)=>new LE(e,t);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function KV(e){return{hash:e,hmac:(t,...r)=>UE(e,t,zV(...r)),randomBytes:ZV}}const FE=BigInt("3618502788666131213697322783095070105526743751716087489154079457884512865583"),HE=252;function jE(e){for(;e[0]===0;)e=e.subarray(1);const t=e.length*8-HE,r=Es(e);return t>0?r>>BigInt(t):r}function $E(e){return typeof e=="string"&&(e=YV(e),e.length&1&&(e="0"+e)),jf(e)}const VE=LV({a:BigInt(1),b:BigInt("3141592653589793238462643383279502884197169399375105820974944592307816406665"),Fp:uy(BigInt("0x800000000000011000000000000000000000000000000000000000000000001")),n:FE,nBitLength:HE,Gx:BigInt("874739451078007766457464989774322083649278607533249481151382481072868806602"),Gy:BigInt("152666792071518830868575557812948353041420400780739481342941381225525861407"),h:BigInt(1),lowS:!1,...KV(TE),bits2int:jE,bits2int_modN:e=>{const t=Es(e).toString(16);return t.length===63&&(e=$E(t+"0")),yi(jE(e),FE)}});function GV(e){return mi("",typeof e=="string"?$E(e):e)}const{CURVE:lne,ProjectivePoint:v0,Signature:hne,utils:pne}=VE;function WV(e){return`0x${Hf(e.subarray(1)).replace(/^0+/gm,"")}`}function YV(e){return e.replace(/^0x/i,"")}const w0=[new v0(2089986280348253421170679821480865132823066470938446095505822317253594081284n,1713931329540660377023406109199410414810705867260802078187082345529207694986n,1n),new v0(996781205833008774514500082376783249102396023663454813447423147977397232763n,1668503676786377725805489344771023921079126552019160156920634619255970485781n,1n),new v0(2251563274489750535117886426533222435294046428347329203627021249169616184184n,1798716007562728905295480679789526322175868328062420237419143593021674992973n,1n),new v0(2138414695194151160943305727036575959195309218611738193261179310511854807447n,113410276730064486255102093846540133784865286929052426931474106396135072156n,1n),new v0(2379962749567351885752724891227938183011949129833673362440656643086021394946n,776496453633298175483985398648758586525933812536653089401905292063708816422n,1n)];function zE(e,t){const r=[];let n=e;for(let a=0;a<248;a++)r.push(n),n=n.double();n=t;for(let a=0;a<4;a++)r.push(n),n=n.double();return r}const JV=zE(w0[1],w0[2]),XV=zE(w0[3],w0[4]);function QV(e){let t;if(typeof e=="bigint")t=e;else if(typeof e=="number"){if(!Number.isSafeInteger(e))throw new Error(`Invalid pedersenArg: ${e}`);t=BigInt(e)}else t=Es(GV(e));if(!(0n<=t&&t>=1n}return e}function ez(e,t){let r=w0[0];return r=qE(r,e,JV),r=qE(r,t,XV),WV(r.toRawBytes(!0))}const tz=i1(250),rz=e=>Es(aV(e))&tz;uy(BigInt("14474011154664525231415395255581126252639794253786371766033694892385558855681"));const nz=uy(BigInt("3618502788666131213697322783095070105623107215331596699973092056135872020481"));function az(e,t,r){const n=e.fromBytes(TE(mE(`${t}${r}`)));return e.create(n)}const iz=[[3,1,1],[1,-1,1],[1,1,-2]].map(e=>e.map(BigInt));function sz(e,t){if(fy(e.Fp),!Number.isSafeInteger(e.rate)||!Number.isSafeInteger(e.capacity))throw new Error(`Wrong poseidon opts: ${e}`);const r=e.rate+e.capacity,n=e.roundsFull+e.roundsPartial,a=[];for(let s=0;s$F(e,VF),"Invalid seedphrase"),yy=[{address:"0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7",name:"Ether",symbol:"ETH",decimals:18,networkId:"mainnet-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/eth.png"},{address:"0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7",name:"Ether",symbol:"ETH",decimals:18,networkId:"sepolia-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/eth.png"},{address:"0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7",name:"Ether",symbol:"ETH",decimals:18,networkId:"localhost",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/eth.png"},{address:"0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d",name:"Starknet",symbol:"STRK",decimals:"18",networkId:"mainnet-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/strk.png"},{address:"0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d",name:"Starknet",symbol:"STRK",decimals:"18",networkId:"integration",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/strk.png"},{address:"0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d",name:"Starknet",symbol:"STRK",decimals:"18",networkId:"sepolia-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/strk.png"},{address:"0x00da114221cb83fa859dbdb4c44beeaa0bb37c7537ad5ae66fe5e0efd20e6eb3",name:"DAI",symbol:"DAI",decimals:18,networkId:"mainnet-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/dai.png"},{address:"0x03e85bfbb8e2a42b7bead9e88e9a1b19dbccf661471061807292120462396ec9",name:"DAI",symbol:"DAI",decimals:18,networkId:"sepolia-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/dai.png"},{address:"0x06f2a0dfeff180133de890ad69c6ba294574c5f34a67890fd22464f348c4d03c",name:"DAI",symbol:"DAI",decimals:18,networkId:"sepolia-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/dai.png"},{address:"0x03fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac",name:"Wrapped BTC",symbol:"WBTC",decimals:8,networkId:"mainnet-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/wbtc.png"},{address:"0x12d537dc323c439dc65c976fad242d5610d27cfb5f31689a0a319b8be7f3d56",name:"Wrapped BTC",symbol:"WBTC",decimals:8,networkId:"sepolia-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/wbtc.png"},{address:"0x020d208b9e57a7f92bfa9f61135446e0961afc340378be97dbd317453c0950ae",name:"Wrapped BTC",symbol:"WBTC",decimals:8,networkId:"sepolia-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/wbtc.png"},{address:"0x053c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8",name:"USD Coin",symbol:"USDC",decimals:6,networkId:"mainnet-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/usdc.png"},{address:"0x005a643907b9a4bc6a55e9069c4fd5fd1f5c79a22470690f75556c4736e34426",name:"USD Coin",symbol:"USDC",decimals:6,networkId:"sepolia-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/usdc.png"},{address:"0x07ab0b8855a61f480b4423c46c32fa7c553f0aac3531bbddaa282d86244f7a23",name:"USD Coin",symbol:"USDC",decimals:6,networkId:"sepolia-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/usdc.png"},{address:"0x068f5c6a61780768455de69077e07e89787839bf8166decfbf92b645209c0fb8",name:"Tether USD",symbol:"USDT",decimals:6,networkId:"mainnet-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/usdt.png"},{address:"0x386e8d061177f19b3b485c20e31137e6f6bc497cc635ccdfcab96fadf5add6a",name:"Tether USD",symbol:"USDT",decimals:6,networkId:"sepolia-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/usdt.png"},{address:"0x00585c32b625999e6e5e78645ff8df7a9001cf5cf3eb6b80ccdd16cb64bd3a34",name:"zkLend Token",symbol:"ZEND",decimals:18,networkId:"mainnet-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/zend.png"},{address:"0x06ea04cd7e40bfef07c3625e2b3472839093d966bf601568128436466f962fcf",name:"Baby Laika",symbol:"BABYLAIKA",decimals:18,networkId:"mainnet-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/babylaika.png"},{address:"0x004a8ff6a7b121c55d5e21af478265c5798f574abaa41efadf569d6939705896",name:"Baby Laika",symbol:"BABYLAIKA",decimals:18,networkId:"sepolia-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/babylaika.png"},{address:"0x0782f0ddca11d9950bc3220e35ac82cf868778edb67a5e58b39838544bc4cd0f",name:"Starknet Voting Token",symbol:"vSTRK",decimals:18,networkId:"mainnet-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/vstrk.png"},{address:"0x075afe6402ad5a5c20dd25e10ec3b3986acaa647b77e4ae24b0cbc9a54a27a87",name:"Ekubo Protocol",symbol:"EKUBO",decimals:18,networkId:"mainnet-alpha",image:"https://dv3jj1unlp2jl.cloudfront.net/128/color/ekubo.png"}],hz=async(e,t,r)=>{const n=await r.callContract({contractAddress:e,entrypoint:"balanceOf",calldata:[t]});return BigInt(O.toHex(Ht.uint256ToBN({low:n[0],high:n[1]})))},Ane=async(e,t,r)=>{const n=yy.filter(a=>a.networkId===e);return(await Promise.allSettled(n.map(a=>t.callContract({contractAddress:a.address,entrypoint:"balanceOf",calldata:[r]})))).reduce((a,i,s)=>{if(i.status==="fulfilled"&&ms(i.value)||i.status==="rejected"||i.value[0]==="0x0"&&i.value[1]==="0x0")return a;const o=BigInt(O.toHex(Ht.uint256ToBN({low:i.value[0],high:i.value[1]}))),c={...n[s],balance:o};return a.push(c),a},[])},Tne=async()=>yy,Sne=({address:e,networkId:t})=>yy.find(r=>r.address===e&&r.networkId===t),kne=({amount:e,decimals:t,unitCurrencyValue:r})=>{if(!vs(e)||!vs(t)||!vs(r))return;const n=Number(t),a=BigInt(e)*Gm(r.toString()).value;return u0({value:a,decimals:n+d0})},Ine=({unitAmount:e,decimals:t})=>{if(e===void 0||!vs(e)||t===void 0||!vs(t))return;const r=Number(t);return xt(e.toString(),r).value.toString()},Cne=e=>vs(e)?Number(e):18,{UINT_256_MAX:pz}=Sg,bz=e=>String(e)===String(pz),One=(e,t="$",r)=>{if(e===void 0||!vs(e))return null;const n=P$(e,r);return[t,n].filter(Boolean).join("")},gz="Unlimited",Nne=({amount:e,decimals:t,symbol:r,showPlusSign:n=!1,withSymbol:a=!0,unlimitedText:i=gz,prettyConfigOverrides:s})=>{if(!vs(e))return null;let o,c=!1;if(bz(e))o=i;else{const l=Number(t),y=BigInt(e);c=y>0n;const M=l>0?u0({value:y,decimals:l}):y.toString();o=l>0?D$(M,s):M}const d=[o,a&&r].filter(Boolean).join(" ");return n&&c?`+${d}`:d};var Rne=null,mz=null;function Mne(e,t){function r(n,a){var i=t||{},s;"randomize"in i||(i.randomize=!0),s=mz.operation(i);function o(l){a(l||new Error("Aborted"))}function c(l,y){if(l.bail){o(l);return}s.retry(l)?i.onRetry&&i.onRetry(l,y):a(s.mainError())}function d(l){var y;try{y=e(o,l)}catch(M){c(M,l);return}Promise.resolve(y).then(n).catch(function(M){c(M,l)})}s.attempt(d)}return new Promise(r)}var Bne=null;const yz=null;class Pne{constructor(t,r){this.apiBase=t,this.httpService=r,this.TOKENS_INFO_URL="/tokens/info",this.TOKENS_DEFI_DECOMPOSITION_URL="/tokens/defi/decomposition"}async fetchTokensInfoFromBackend(t){const r=k(this.apiBase,this.TOKENS_INFO_URL,t??"","?chain=starknet"),n=await this.httpService.get(r),a=ts.safeParse(n);if(a.success)return a.data.tokens;const i=es.safeParse(n);if(i.success)return[i.data]}async fetchAddressTokenBalancesFromBackend(t,r,n){const a=k(this.apiBase,"activity","starknet",r,"account",t,"balance");return(await yz(async i=>{let s;try{s=await this.httpService.get(a)}catch{return i(new Error("Error fetching")),[]}const o=ns.safeParse(s);if(!o.success)return i(new Error("Error parsing response")),[];if(o.data.status!=="initialised")throw new Error("Not initialised yet");return o.data.balances},{retries:5,minTimeout:5e3,...n})).map(i=>({address:i.tokenAddress,balance:i.tokenBalance,networkId:r}))}async fetchDefiDecomposition(t){const r=k(this.apiBase,this.TOKENS_DEFI_DECOMPOSITION_URL,t,"?chain=starknet"),n=await this.httpService.get(r);if(!rs.safeParse(n).success)throw new ss({code:"TOKEN_DEFI_DECOMPOSITION_PARSING_ERROR"});return n.dapps}}const Dne=(e,t,r,n)=>({contractAddress:e,entrypoint:"transfer",calldata:mt.compile({recipient:t,amount:g0(L$(r,n))})}),Lne=(e,t,r,n)=>({contractAddress:e,entrypoint:"transferFrom",calldata:mt.compile({from_:t,to:r,tokenId:g0(n)})}),Une=(e,t,r,n)=>({contractAddress:e,entrypoint:"safeTransferFrom",calldata:mt.compile({from_:t,to:r,tokenId:g0(n),amount:g0(1),data_len:"0"})});function KE(e){return Fe(e.unit)==="WEI"}function _z(e){return Fe(e.unit)==="FRI"}function qd(e,t){return KE(e)?{...e,maxFee:t(e.maxFee),overallFee:t(e.overallFee),gasPrice:t(e.gasPrice),gasUsage:t(e.gasUsage)}:{...e,overallFee:t(e.overallFee),gasPrice:t(e.gasPrice),gasUsage:t(e.gasUsage),maxAmount:t(e.maxAmount),maxPricePerUnit:t(e.maxPricePerUnit)}}function E0(e){return KE(e)?{maxFee:e.maxFee}:{amount:e.maxAmount,pricePerUnit:e.maxPricePerUnit}}function _y(e){return _z({unit:e})?$e:Vn}function Fne(e,t,r=2){const n=BigInt(10**r),a=BigInt(Math.round(t*10**r));return e*a/n}const Hne=[H7],GE=(e,t=Az)=>{if(e.max&&"amount"in e.max)return{...e,...e.max};const r=10000n,{amount:n,pricePerUnit:a,dataGasConsumed:i=0n,dataGasPrice:s=0n}=e,o=n*a+i*s;if(o<0)throw Error("Cannot calculate max fee for negative fee");const c=O.toBigInt(is({estimatedFee:o})),d=Number(c)/Number(o),l=t(d),y=BigInt(Math.trunc(l*Number(r)));return{...e,amount:n*y/r,pricePerUnit:a*y/r,dataGasConsumed:i*y/r,dataGasPrice:s*y/r}},c1=e=>{const{amount:t,pricePerUnit:r,dataGasConsumed:n=0n,dataGasPrice:a=0n}=e;return t*r+n*a},vz=e=>{if(e.max)return"maxFee"in e.max?e.max.maxFee:c1(e.max)},vy=e=>vz(e)||c1(GE(e)),jne=e=>{if(e.deployment&&!nt(e.deployment.feeTokenAddress,e.transactions.feeTokenAddress))throw Error("Cannot calculate estimated fees for different tokens");const t=c1(e.transactions),r=e.deployment?c1(e.deployment):0n;return t+r},$ne=e=>{if(e.deployment&&!nt(e.deployment.feeTokenAddress,e.transactions.feeTokenAddress))throw Error("Cannot calculate estimated fees for different tokens");const t=e.deployment?vy(e.deployment):0n,r=vy(e.transactions);return t+r},Vne=(e,t)=>[{contractAddress:e,entrypoint:"transfer",calldata:mt.compile(os.parse({recipient:t,amount:Ht.bnToUint256(BigInt(1))}))}],wz=(e,t)=>{if(!e)return{transactions:{feeTokenAddress:t??Vn,amount:0n,pricePerUnit:0n,dataGasConsumed:0n,dataGasPrice:0n}};if(!Array.isArray(e))throw Error(`Unexpected simulation response. Expected array. Got ${typeof e}`);if(e.length===1){const r=ye.parse(e[0].feeEstimation);return{transactions:{feeTokenAddress:_y(r.unit),amount:O.toBigInt(r.gasUsage),pricePerUnit:O.toBigInt(r.gasPrice),max:E0(qd(r,O.toBigInt)),dataGasConsumed:r.dataGasConsumed?O.toBigInt(r.dataGasConsumed):0n,dataGasPrice:r.dataGasPrice?O.toBigInt(r.dataGasPrice):0n}}}if(e.length===2){const r=ye.parse(e[0].feeEstimation),n=ye.parse(e[1].feeEstimation);return{deployment:{feeTokenAddress:_y(r.unit),amount:O.toBigInt(r.gasUsage),pricePerUnit:O.toBigInt(r.gasPrice),max:E0(qd(r,O.toBigInt)),dataGasConsumed:r.dataGasConsumed?O.toBigInt(r.dataGasConsumed):0n,dataGasPrice:r.dataGasPrice?O.toBigInt(r.dataGasPrice):0n},transactions:{feeTokenAddress:_y(n.unit),amount:O.toBigInt(n.gasUsage),pricePerUnit:O.toBigInt(n.gasPrice),max:E0(qd(n,O.toBigInt)),dataGasConsumed:n.dataGasConsumed?O.toBigInt(n.dataGasConsumed):0n,dataGasPrice:n.dataGasPrice?O.toBigInt(n.dataGasPrice):0n}}}throw Error("Unexpected simulation response length")},Ez=({transaction:e,nonce:t,chainId:r,version:n,isDeploymentTransaction:a,cairoVersion:i,address:s,appDomain:o})=>{let c=t;a&&e.type!=="DEPLOY_ACCOUNT"&&(c=O.toHex(1));const d=oe(e.calls);return{type:e.type,chainId:r,cairoVersion:i,nonce:c,version:n,account:s,calls:d,calldata:e.calldata,salt:e.salt,signature:e.signature,classHash:e.classHash,appDomain:o}},xz=(e,t)=>{const{transactions:r}=e,n=r.map(c=>{if(!c.simulation)throw new as({code:"SIMULATE_AND_REVIEW_FAILED"});return c}),a=n.map(c=>({...c.simulation,feeEstimation:qd(c.simulation.feeEstimation,Number)})),i=wz(a,t),[s,o]=n.length===1?[n[0],void 0]:[n[1],n[0]];return{...i,transactions:{...i.transactions,dataGasConsumed:i.transactions.dataGasConsumed??0n,dataGasPrice:i.transactions.dataGasPrice??0n,max:E0(qd(s.simulation.feeEstimation,O.toBigInt))},deployment:i.deployment&&o?{...i.deployment,dataGasConsumed:i.deployment.dataGasConsumed??0n,dataGasPrice:i.deployment.dataGasPrice??0n,max:E0(qd(o.simulation.feeEstimation,O.toBigInt))}:void 0}},zne=e=>{const t=GE(e),r=vy(e);return{maxFee:r,resourceBounds:{l1_gas:{max_amount:O.toHex(r/e.pricePerUnit),max_price_per_unit:O.toHex(t.pricePerUnit)},l2_gas:{max_amount:"0x0",max_price_per_unit:"0x0"}}}},qne=e=>{const t=Math.sqrt(e);return isNaN(t)?Math.sqrt(2):t},Az=e=>{const t=Math.cbrt(e);return isNaN(t)?Math.cbrt(2):t},Zne=e=>e<1||isNaN(e)?1.1:Math.log(e+1)+1,Tz=[H7];function wy({address:e}){return Tz.some(t=>nt(e,t))}function Kne(e){return e?jj().some(t=>nt(t,e)):!1}function WE(e){return wy({address:e})?Z.TRANSACTION_VERSION.V3:Z.TRANSACTION_VERSION.V1}function Gne(e){return wy({address:e})?Z.TRANSACTION_VERSION.F3:Z.TRANSACTION_VERSION.F1}function Wne(e,t){return ds(t.contract)?wy({address:e})?Z.TRANSACTION_VERSION.V3:Z.TRANSACTION_VERSION.V2:Z.TRANSACTION_VERSION.V1}class Yne{constructor(t,r){this.apiBase=t,this.httpService=r}async getLabels(){const t=k(this.apiBase,"reviewer","labels");return await this.httpService.get(t)}async getWarnings(){const t=k(this.apiBase,"reviewer","warnings/reasons");return await this.httpService.get(t)}async simulateAndReview(t,r,n,a,i,s){const o=r.some(c=>c.type==="DEPLOY_ACCOUNT");try{if(!("getChainId"in t))throw new Error("MISSING_METHOD");const c=WE(n),d=o?"0x0":await t.getNonce(),l=await t.getChainId(),y={transactions:r.map(fe=>({...Ez({transaction:fe,nonce:d,version:c,chainId:l,isDeploymentTransaction:o,appDomain:a,cairoVersion:t.cairoVersion,address:t.address}),type:fe.type}))},M=k(this.apiBase,"reviewer","transactions","v2","review","starknet"),j=s?U$(M,{delayedTransactions:"true"}):M,G=await this.httpService.post(j,{headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(y)},cs);if(G.transactions.some(fe=>ls(fe)))return G;const $=xz(G,n);return{...G,enrichedFeeEstimation:$}}catch(c){return console.error(c),this.fallbackToOnchainFeeEstimation({transactions:r,account:t,isDeploymentTransaction:o,feeTokenAddress:n,accountDeployTransaction:i})}}getCallsFromTx(t){let r;return t.calls&&(r=oe(t.calls)),r}async fallbackToOnchainFeeEstimation({transactions:t,account:r,isDeploymentTransaction:n,feeTokenAddress:a,accountDeployTransaction:i}){try{const s=n?this.getCallsFromTx(t[1]):this.getCallsFromTx(t[0]);if(!s)throw new _t({code:"NO_CALLS_FOUND"});const o=await this.fetchFeesOnchain({starknetAccount:r,calls:s,isDeployed:!n,feeTokenAddress:a,accountDeployTransaction:i});return{transactions:[],enrichedFeeEstimation:o,isBackendDown:!0}}catch(s){throw console.error(s),new _t({message:`${s}`,code:"SIMULATE_AND_REVIEW_FAILED"})}}async fetchFeesOnchain({starknetAccount:t,calls:r,isDeployed:n,feeTokenAddress:a,accountDeployTransaction:i}){try{const s=WE(a),o={transactions:{feeTokenAddress:a,amount:0n,pricePerUnit:0n,dataGasConsumed:0n,dataGasPrice:0n}};if(!n&&i){if("estimateFeeBulk"in t){const c=[{type:ln.DEPLOY_ACCOUNT,payload:{classHash:i.classHash,addressSalt:i.salt,constructorCalldata:i.calldata,contractAddress:t.address}},{type:ln.INVOKE,payload:r}],[d,l]=await t.estimateFeeBulk(c,{version:s}).catch(y=>{throw console.error(y),y});if(!d.gas_consumed||!d.gas_price||!l.gas_consumed||!l.gas_price)throw new _t({code:"ONCHAIN_FEE_ESTIMATION_FAILED",message:"Missing gas_consumed or gas_price"});o.deployment={feeTokenAddress:a,amount:d.gas_consumed,pricePerUnit:d.gas_price,dataGasConsumed:d.data_gas_consumed,dataGasPrice:d.data_gas_price},o.transactions={feeTokenAddress:a,amount:l.gas_consumed,pricePerUnit:l.gas_price,dataGasConsumed:l.data_gas_consumed,dataGasPrice:l.data_gas_price}}}else{const{gas_consumed:c,gas_price:d,data_gas_consumed:l,data_gas_price:y}=await t.estimateFee(r,{skipValidate:!0,version:s});if(!c||!d)throw new _t({code:"ONCHAIN_FEE_ESTIMATION_FAILED",message:"Missing gas_consumed or gas_price"});o.transactions={feeTokenAddress:a,amount:c,pricePerUnit:d,dataGasConsumed:l,dataGasPrice:y}}return o}catch(s){throw new _t({code:"ONCHAIN_FEE_ESTIMATION_FAILED",message:`${s}`})}}}const Jne=null,Xne=e=>({showBalanceChange:vt(()=>{const t=e?.some(n=>!dn(n.transfers)),r=e?.some(n=>!dn(n.approvals));return e&&(t||r)},[e])}),f1=e=>e?e.filter(t=>t.token.type==="erc20"):[],Qne=e=>vt(()=>f1(e),[e]),eae=e=>f1(e).length>0,tae=e=>f1(e).some(t=>t.amount>0n),rae=e=>f1(e).some(t=>t.amount<0n),YE=e=>e?e.filter(t=>t.token.type==="erc721"):[],nae=e=>vt(()=>YE(e),[e]),Sz=e=>YE(e).length>0,aae=e=>vt(()=>Sz(e),[e]),iae=(e,t)=>vt(()=>e&&t?[{contractAddress:e.address,entrypoint:"transfer",calldata:mt.compile({recipient:t,amount:g0(e.balance)})}]:[],[e,t]),sae=({apiData:{apiBaseUrl:e,apiHeaders:t},address:r,network:n,transactionReviewEnabled:a=!0,transactions:i})=>{const s=qn(async()=>{if(!r||!n)return;if(!e)throw"Transaction review endpoint is not defined";const c=k(e,"reviewer/transactions/review/starknet"),d=gs(i)?i:[i],l={network:n,account:r,calls:d};return F9(c,{method:"POST",headers:{"Content-Type":"application/json",...t},body:JSON.stringify(l)})},[r,n,i]),o=vt(()=>As({transactions:i,address:r,network:n}),[i,r,n]);return bH(!!a,[o,"transactionReview"],s)},oae=e=>{if(!e)return{};const t=e.assessment==="warn"&&e.reason!=="contract_is_not_verified",r=e.reason?` (Reason: ${Kn(e.reason)})`:"",n=t?e.reason==="recipient_is_token_address"?"You are sending tokens to their own address. This is likely to burn them.":`This transaction has been flagged as dangerous. We recommend you reject this transaction unless you are sure.${r}`:void 0;return{warn:t,reason:n}},kz=e=>{var t;if(e){for(const r of e.reviews)if(((t=r.activity)==null?void 0:t.type)==="swap")return r}},cae=e=>{},fae=(e,t)=>{var r;if(t){for(const n of t.reviews)if(((r=n.activity)==null?void 0:r.type)===e)return n.activity}},dae=e=>!!kz(e),uae=e=>{var t,r;if(e){for(const n of e.reviews)if((t=n.activity)!=null&&t.type)return{...n,type:(r=n.activity)==null?void 0:r.type}}},Iz=async({feeTokenAddress:e,calls:t,selectedAccount:r,transactionReviewService:n,appDomain:a,accountDeployTransaction:i,isDelayedTransaction:s})=>{const o={type:"INVOKE",calls:oe(t)};if(!r||!e)return;const c=i?[i,o]:[o];return{result:await n.simulateAndReview(r,c,e,a,i,s)}},Cz=async(e,t,r,n)=>{var a,i,s,o,c,d;let l=!1;const y=t.transactions.find(fe=>{var he,Oe;return(Oe=(he=fe?.simulation)==null?void 0:he.summary)==null?void 0:Oe.find(We=>We.sent)});if(!y||!((a=y.simulation)!=null&&a.summary))return l;const M=y.simulation.summary.filter(fe=>fe.sent).map(fe=>fe.token.address);if(!((i=t.enrichedFeeEstimation)!=null&&i.transactions.feeTokenAddress&&M.includes((s=t.enrichedFeeEstimation)==null?void 0:s.transactions.feeTokenAddress))||!((c=(o=t.enrichedFeeEstimation)==null?void 0:o.transactions)!=null&&c.max))return l;const j="amount"in t.enrichedFeeEstimation.transactions.max?t.enrichedFeeEstimation.transactions.max.amount*t.enrichedFeeEstimation.transactions.max.pricePerUnit:"maxFee"in t.enrichedFeeEstimation.transactions.max?t.enrichedFeeEstimation.transactions.max.maxFee:void 0,G=(d=y.simulation.summary.find(fe=>fe.sent&&fe.token.address===r))==null?void 0:d.value;if(!j||!G)return l;const $=await hz(r,e,n)??0n;return BigInt($)>j+BigInt(G)||(l=!0),l},lae=()=>qn(async({feeTokenAddress:e,calls:t,selectedAccount:r,transactionReviewService:n,appDomain:a,accountDeployPayload:i,provider:s,isDelayedTransaction:o})=>{if(!r)return;const c=await Iz({feeTokenAddress:e,calls:t,selectedAccount:r,transactionReviewService:n,appDomain:a,accountDeployTransaction:Oz(i),isDelayedTransaction:o});if(!c||!c.result||!e)return;const d=await Cz(r.address,c.result,e,s);return{...c.result,isSendingMoreThanBalanceAndGas:d}},[]),Oz=e=>e?{type:"DEPLOY_ACCOUNT",calldata:e.calldata,classHash:Pt.parse(e.class_hash),salt:Pt.parse(e.salt),signature:[]}:void 0;function Nz(){return{promise:Promise.resolve()}}function hae(e){return class extends e{constructor({enabled:t,appVersion:r}){super(),this.enabled=t,this.appVersion=r}track(t,r){return!this.enabled||!super.isLoaded?Nz():{promise:super.track(t,{app_version:this.appVersion,...r}).promise}}}}const Rz=(0,ba.createContext)({}),pae=({enabled:e,initialize:t,children:r})=>{const[n,a]=zn(!1);return Ft(()=>{!n&&e&&t().then(()=>a(!0))},[n,e,t]),xs(Rz.Provider,{value:{},children:r})};var _i=(e=>(e[e.UserAborted=113]="UserAborted",e[e.Unknown=163]="Unknown",e))(_i||{});const Mz={113:"An error occurred (USER_REFUSED_OP)",163:"An error occurred (UNKNOWN_ERROR)"};class Ui extends Lc{constructor(t){super(t,Mz),this.name="WalletRPCError"}}async function d1(e){const t="skipDeploy"in e?!!e.skipDeploy:!1;An({type:"SIGN_MESSAGE",data:{typedData:e,options:{skipDeploy:t}}});const{actionHash:r}=await hn("SIGN_MESSAGE_RES",1e3);An({type:"OPEN_UI"});const n=await Promise.race([hn("SIGNATURE_SUCCESS",11*60*1e3,a=>a.data.actionHash===r),hn("SIGNATURES_PENDING",10*60*1e3,a=>a.data.actionHash===r),hn("SIGNATURE_FAILURE",10*60*1e3,a=>a.data.actionHash===r).then(a=>a).catch(a=>(An({type:"SIGNATURE_FAILURE",data:{actionHash:r,error:a.message}}),"timeout"))]);if(n==="timeout")throw new Ui({code:_i.Unknown});if("error"in n)throw new Ui({code:_i.UserAborted,options:{error:n.error}});return"requestId"in n?await rm.multisig.waitForOffchainSignatures.mutate({requestId:n.requestId}):n.signature}class Bz extends Jv{constructor(t,r){const n=Z8.starkCurve.utils.randomPrivateKey();super(r||Fv,t,n)}async execute(t,r,n={}){const a=Array.isArray(r)?n:r,[i,s]=await Hg.execute.parseAsync([t,a]);An({type:"EXECUTE_TRANSACTION",data:{transactions:i,transactionsDetail:s}});const{actionHash:o}=await hn("EXECUTE_TRANSACTION_RES",1e3);An({type:"OPEN_UI"});const c=await Promise.race([hn("TRANSACTION_SUBMITTED",11*60*1e3,d=>d.data.actionHash===o),hn("TRANSACTION_FAILED",10*60*1e3,d=>d.data.actionHash===o).then(()=>"error").catch(()=>(An({type:"TRANSACTION_FAILED",data:{actionHash:o}}),"timeout"))]);if(c==="error")throw Error("User abort");if(c==="timeout")throw Error("User action timed out");return{transaction_hash:c.txHash}}async declare({contract:t,classHash:r,casm:n,compiledClassHash:a},i){An({type:"REQUEST_DECLARE_CONTRACT",data:{payload:{contract:t,classHash:r,casm:n,compiledClassHash:a}}});const{actionHash:s}=await hn("REQUEST_DECLARE_CONTRACT_RES",1e3);An({type:"OPEN_UI"});const o=await Promise.race([hn("DECLARE_CONTRACT_ACTION_SUBMITTED",11*60*1e3,c=>c.data.actionHash===s),hn("DECLARE_CONTRACT_ACTION_FAILED",10*60*1e3,c=>c.data.actionHash===s).then(()=>"error").catch(()=>"timeout")]);if(o==="error")throw Error("User abort");if(o==="timeout")throw Error("User action timed out");return{transaction_hash:o.txHash,class_hash:o.classHash}}async signMessage(t,r={skipDeploy:!1}){return d1({...t,skipDeploy:r.skipDeploy})}}const Ey=async()=>{try{return An({type:"IS_PREAUTHORIZED"}),await hn("IS_PREAUTHORIZED_RES",10*1e3)}catch{}return!1};async function Pz(e){const t=sa.safeParse(e.options.address);t.success&&e.type==="ERC20"&&An({type:"REQUEST_TOKEN",data:{address:t.data,symbol:e.options.symbol,decimals:e.options.decimals,name:e.options.name}});const{exists:r,actionHash:n}=await hn("REQUEST_TOKEN_RES",1e3);if(r)return!0;if(!n)throw Error("Unexpected error: actionHash is undefined");An({type:"OPEN_UI"});const a=await Promise.race([hn("APPROVE_REQUEST_TOKEN",11*60*1e3,i=>i.data.actionHash===n),hn("REJECT_REQUEST_TOKEN",10*60*1e3,i=>i.data.actionHash===n).then(()=>"error").catch(()=>(An({type:"REJECT_REQUEST_TOKEN",data:{actionHash:n}}),"timeout"))]);if(a==="error")throw new Ui({code:_i.UserAborted});if(a==="timeout")throw new Ui({code:_i.Unknown});return!0}async function Dz(e){An({type:"CONNECT_DAPP",data:{silent:e?.silent_mode}});const t=await Promise.race([hn("CONNECT_DAPP_RES",10*60*1e3),hn("REJECT_PREAUTHORIZATION",10*60*1e3).then(()=>"USER_ABORTED")]);if(!t)throw Error("No wallet account (should not be possible)");if(t==="USER_ABORTED")throw Error("User aborted");const{address:r}=t;return[r]}async function Lz(e){const t=xP.safeParse(e.calls);if(!t.success)throw Error(`Invalid transaction: ${t.error.message}`);An({type:"EXECUTE_TRANSACTION",data:{transactions:t.data}});const{actionHash:r}=await hn("EXECUTE_TRANSACTION_RES",1e3);An({type:"OPEN_UI"});const n=await Promise.race([hn("TRANSACTION_SUBMITTED",11*60*1e3,a=>a.data.actionHash===r),hn("TRANSACTION_FAILED",10*60*1e3,a=>a.data.actionHash===r).then(()=>"error").catch(()=>(An({type:"TRANSACTION_FAILED",data:{actionHash:r}}),"timeout"))]);if(n==="error")throw new Ui({code:_i.UserAborted});if(n==="timeout")throw new Ui({code:_i.Unknown});return{transaction_hash:n.txHash}}async function Uz({chainId:e}){An({type:"REQUEST_SWITCH_CUSTOM_NETWORK",data:{chainId:e}});const t=await Promise.race([hn("REQUEST_SWITCH_CUSTOM_NETWORK_RES",1e3),hn("REQUEST_SWITCH_CUSTOM_NETWORK_REJ",1e3)]);if("error"in t)throw Error(t.error);const{actionHash:r,exists:n,isCurrentNetwork:a}=t;if(!n)return!1;if(a)return!0;if(An({type:"OPEN_UI"}),!r)throw Error("Unexpected error: actionHash is undefined");const i=await Promise.race([hn("APPROVE_REQUEST_SWITCH_CUSTOM_NETWORK",11*60*1e3,s=>s.data.actionHash===r),hn("REJECT_REQUEST_SWITCH_CUSTOM_NETWORK",10*60*1e3,s=>s.data.actionHash===r).then(()=>"error").catch(()=>(An({type:"REJECT_REQUEST_SWITCH_CUSTOM_NETWORK",data:{actionHash:r}}),"timeout"))]);if(i==="error")throw new Ui({code:_i.UserAborted});if(i==="timeout")throw new Ui({code:_i.Unknown});return!0}const x0="0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7",xy="0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d",JE="0x033434ad846cdd5f23eb73ff09fe6fddd568284a0fb7d1be20ee482f044dabe2",XE="0x4d07e40e93398ed3c76981e72dd1fd22557a78ce36c0515f679e27f0bb5bc5f",bae="0x4ee23ad83fb55c1e3fac26e2cd951c60abf3ddc851caa9a7fbb9f5eddb2091",gae="0x057c2f22f0209a819e6c60f78ad7d3690f82ade9c0c68caea492151698934ede",mae="0x0545d680a2b4909f886371b2ac820745491f55ac7f0e81b3c4668a81e2a656f0",QE="0x05754af3760f3356da99aea5c3ec39ccac7783d925a19666ebbeca58ff0087f4",Ay=[{mainnet:"https://starknet-mainnet.public.blastapi.io",sepolia:"https://starknet-sepolia.public.blastapi.io"},{mainnet:"https://rpc.starknet.lava.build",sepolia:"https://rpc.starknet-sepolia.lava.build"}];async function Fz(e){const{chain_id:t,chain_name:r,id:n,block_explorer_url:a,native_currency:i,rpc_urls:s}=Iw.parse(e);An({type:"REQUEST_ADD_CUSTOM_NETWORK",data:{id:n,name:r,chainId:t,rpcUrl:s?.[0],explorerUrl:a?.[0],possibleFeeTokenAddresses:[i?.options.address??x0]}});const o=await Promise.race([hn("REQUEST_ADD_CUSTOM_NETWORK_RES",1e3),hn("REQUEST_ADD_CUSTOM_NETWORK_REJ",1e3)]);if("error"in o)throw Error(o.error);const{exists:c,actionHash:d}=o;if(c)return!0;if(!d)throw Error("Unexpected error: actionHash is undefined");An({type:"OPEN_UI"});const l=await Promise.race([hn("APPROVE_REQUEST_ADD_CUSTOM_NETWORK",11*60*1e3,y=>y.data.actionHash===d),hn("REJECT_REQUEST_ADD_CUSTOM_NETWORK",10*60*1e3,y=>y.data.actionHash===d).then(()=>"error").catch(()=>(An({type:"REJECT_REQUEST_ADD_CUSTOM_NETWORK",data:{actionHash:d}}),"timeout"))]);if(l==="error")throw new Ui({code:_i.UserAborted});if(l==="timeout")throw new Ui({code:_i.Unknown});return!0}async function Hz(e){const{contract_class:t,compiled_class_hash:r}=e;if(!t.abi)throw new Error("Missing ABI");An({type:"REQUEST_DECLARE_CONTRACT",data:{payload:{contract:rv.stringify(t),compiledClassHash:r}}});const{actionHash:n}=await hn("REQUEST_DECLARE_CONTRACT_RES",1e3);An({type:"OPEN_UI"});const a=await Promise.race([hn("DECLARE_CONTRACT_ACTION_SUBMITTED",11*60*1e3,i=>i.data.actionHash===n),hn("DECLARE_CONTRACT_ACTION_FAILED",10*60*1e3,i=>i.data.actionHash===n).then(()=>"error").catch(()=>"timeout")]);if(a==="error")throw new Ui({code:_i.UserAborted});if(a==="timeout")throw new Ui({code:_i.Unknown});return{transaction_hash:a.txHash,class_hash:a.classHash}}function jz(e){var t=[];if(e.length===0)return"";if(typeof e[0]!="string")throw new TypeError("Url must be a string. Received "+e[0]);if(e[0].match(/^[^/:]+:\/*$/)&&e.length>1){var r=e.shift();e[0]=r+e[0]}e[0].match(/^file:\/\/\//)?e[0]=e[0].replace(/^([^/:]+):\/*/,"$1:///"):e[0]=e[0].replace(/^([^/:]+):\/*/,"$1://");for(var n=0;n0&&(a=a.replace(/^[\/]+/,"")),n0?"?":"")+s.join("&"),i}function $z(){var e;return typeof arguments[0]=="object"?e=arguments[0]:e=[].slice.call(arguments),jz(e)}function vae(e,t,r){return isEqualAddress(e,t.accountClassHash?.plugin)?"plugin":isEqualAddress(e,t.accountClassHash?.betterMulticall)?"betterMulticall":getArgentAccountClassHashes("multisig").find(a=>isEqualAddress(e,a))?"multisig":r&&r==="smart"&&isEqualAddress(e,t.accountClassHash?.smart)?"smart":"standard"}function wae(e){switch(e){case constants.StarknetChainId.SN_MAIN:return"mainnet-alpha";case constants.StarknetChainId.SN_SEPOLIA:return"sepolia-alpha";default:throw new Error(`Unknown chainId: ${e}`)}}function Vz(){const e="hydrogen";if(!e)throw new Error("ARGENT_X_ENVIRONMENT not set");switch(e.toLowerCase()){case"integration":return"integration";case"prod":case"staging":return"mainnet-alpha";case"hydrogen":case"dev":case"test":return"sepolia-alpha";default:throw new Error(`Unknown ARGENTX_ENVIRONMENT: ${e}`)}}function zz(e){const t=Vz(),r=e.find(n=>n.id===t);if(!r)throw new Error(`Unknown default network: ${t}`);return r}function u1(e){return GF(e.id)}function qz(e){const t=Math.floor(Math.random()*Ay.length),r=Ay[t];if(!r)throw new Error(`No random node found for network: ${e.id}`);return r}function Zz(e){if(!u1)throw new Error(`Not an Argent network: ${e.id}`);const t=Ng(e.id);if(!t)throw new Error(`No nodes found for network: ${e.id}`);return Ay.map(n=>n[t])}const Eae=[{id:"integration",name:"Integration",chainId:"SN_SEPOLIA",rpcUrl:"https://cloud-dev.argent-api.com/v1/starknet/sepolia/rpc/v0.7",accountClassHash:{standard:jd,smart:jd},possibleFeeTokenAddresses:[x0,xy],explorerUrl:"https://integration.starkscan.co",readonly:!0}],xae=[{id:"mainnet-alpha",status:"unknown"},{id:"sepolia-alpha",status:"unknown"},{id:"localhost",status:"unknown"}],Ty=[{id:"mainnet-alpha",name:"Mainnet",chainId:"SN_MAIN",rpcUrl:"https://cloud.argent-api.com/v1/starknet/mainnet/rpc/v0.7",explorerUrl:"https://voyager.online",l1ExplorerUrl:"https://etherscan.io",accountClassHash:{standard:jd,multisig:j7,standardCairo0:JE,smart:jd},multicallAddress:QE,possibleFeeTokenAddresses:[x0,xy],readonly:!0},{id:"sepolia-alpha",name:"Sepolia",chainId:"SN_SEPOLIA",rpcUrl:$z("https://api.hydrogen.argent47.net/v1","starknet/sepolia/rpc/v0.7"),explorerUrl:"https://sepolia.voyager.online",l1ExplorerUrl:"https://sepolia.etherscan.io",accountClassHash:{standard:jd,standardCairo0:JE,multisig:j7,smart:jd},multicallAddress:QE,possibleFeeTokenAddresses:[x0,xy],readonly:!0},{id:"localhost",chainId:"SN_GOERLI",rpcUrl:"http://localhost:5050",explorerUrl:"http://localhost:4000/testnet/",name:"Devnet",possibleFeeTokenAddresses:[x0],accountClassHash:{standard:XE,smart:XE}}],Aae=zz(Ty),Tae=Ty.filter(({readonly:e})=>!e),Sae=Ty.filter(({readonly:e})=>!!e),jo=/^0x[a-f0-9]+$/i,Kz=_.object({id:_.string().min(2).max(31)}),Gz=_.enum(["red","amber","green","unknown"]),Wz=_.string().transform(e=>e.toUpperCase()).pipe(_.enum([gc.NetworkName.SN_MAIN,gc.StarknetChainId.SN_MAIN.toUpperCase()])),ex=_.string().min(2,"ChainId must be at least 2 characters").max(31,"ChainId cannot be longer than 31 characters").regex(/^[a-zA-Z0-9_]+$/,{message:"chain id must be hexadecimal string, uppercase alphanumeric or underscore, like 'SN_ABCXYZ'"}),Yz=ex.refine(e=>!Wz.safeParse(e).success,{message:"Chain ID is reserved"}),Iae=Kz.extend({name:_.string().min(2).max(128),chainId:ex,rpcUrl:_.string().url("RPC url must be a valid URL"),possibleFeeTokenAddresses:_.array(sa).nonempty(),accountImplementation:_.optional(_.string().regex(jo,{message:"Account class hash must match the following: /^0x[a-f0-9]+$/i"})),accountClassHash:_.union([_.object({standard:_.string().regex(jo,{message:"Account class hash must match the following: /^0x[a-f0-9]+$/i"}).optional(),standardCairo0:_.string().regex(jo,{message:"Account class hash must match the following: /^0x[a-f0-9]+$/i"}).optional(),plugin:_.string().regex(jo,{message:"Account class hash must match the following: /^0x[a-f0-9]+$/i"}).optional(),multisig:_.string().regex(jo,{message:"Account class hash must match the following: /^0x[a-f0-9]+$/i"}).optional(),betterMulticall:_.string().regex(jo,{message:"Account class hash must match the following: /^0x[a-f0-9]+$/i"}).optional(),argent5MinuteEscapeTestingAccount:_.string().regex(jo,{message:"Account class hash must match the following: /^0x[a-f0-9]+$/i"}).optional(),smart:_.string().regex(jo,{message:"Account class hash must match the following: /^0x[a-f0-9]+$/i"}).optional(),imported:_.string().regex(jo,{message:"Account class hash must match the following: /^0x[a-f0-9]+$/i"}).optional()}),_.undefined()]),explorerUrl:_.optional(_.string().url("explorer url must be a valid URL")),faucetUrl:_.optional(_.string().url("faucet url must be a valid URL")),l1ExplorerUrl:_.optional(_.string().url("l1 explorer url must be a valid URL")),blockExplorerUrl:_.optional(_.string().url("block explorer url must be a valid URL")),multicallAddress:iU,readonly:_.optional(_.boolean())}).extend({chainId:Yz}),Cae=_.object({id:_.string(),status:Gz});async function Jz(){if(!await Ey())throw new Error("Not preauthorized");An({type:"REQUEST_SELECTED_NETWORK"});const t=await Promise.race([hn("REQUEST_SELECTED_NETWORK_RES",10*60*1e3),hn("REQUEST_SELECTED_NETWORK_REJ",10*60*1e3).catch(()=>"timeout")]);if(t==="timeout")throw new Error("Timeout");if("error"in t)throw Error(t.error);return u1(t.network)?rl.encodeShortString(t.network.chainId):hw(t.network).getChainId()}async function Xz(){return await Ey()?[Q1.ACCOUNTS]:[]}const tx=e=>`0x${e.toString(16)}`,Qz=e=>e.every(t=>typeof t=="string");async function eq(){const e=await rm.accountMessaging.getAccountDeploymentPayload.query();if(!e)throw new Error("Deployment data not found");const{version:t,classHash:r,constructorCalldata:n,addressSalt:a,contractAddress:i}=e;if(!r||!n||!a||!i)throw new Error("Deployment data not found");if(!Qz(n))throw new Error("Constructor calldata is not an array of hex strings");const s=tx(BigInt(a)),o=n.map(c=>tx(BigInt(c)));if(!t)throw new Error("Account's Cairo Version not found");return{address:i,class_hash:r,salt:s,calldata:o,version:Number(t)}}function tq(){return Promise.resolve(["0.7.0"])}async function rq(e){const r={wallet_addStarknetChain:Fz,wallet_switchStarknetChain:Uz,wallet_watchAsset:Pz,wallet_requestAccounts:Dz,wallet_getPermissions:Xz,wallet_requestChainId:Jz,wallet_deploymentData:eq,wallet_addDeclareTransaction:Hz,wallet_addInvokeTransaction:Lz,wallet_signTypedData:d1,wallet_supportedSpecs:tq,wallet_supportedWalletApi:async()=>{throw new Error("Not implemented")}}[e.type];if(r)return"params"in e?r(e.params):r();throw new Error(`Unknown request type: ${e.type}`)}var Zd=fr(35578),rx=fr(49935),nq=fr(73460),vi=fr(83900),aq=fr(89386),iq=fr(61631),sq=fr(31943);function oq(e,t){var r=Object.setPrototypeOf;r?r(e,t):e.__proto__=t}function nx(e,t){t===void 0&&(t=e.constructor);var r=Error.captureStackTrace;r&&r(e,t)}var cq=function(){var e=function(r,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,i){a.__proto__=i}||function(a,i){for(var s in i)Object.prototype.hasOwnProperty.call(i,s)&&(a[s]=i[s])},e(r,n)};return function(t,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");e(t,r);function n(){this.constructor=t}t.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}}(),fq=function(e){cq(t,e);function t(r,n){var a=this.constructor,i=e.call(this,r,n)||this;return Object.defineProperty(i,"name",{value:a.name,enumerable:!1,configurable:!0}),oq(i,a.prototype),nx(i),i}return t}(Error),dq=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,i;n{for(var r in t)lq(e,r,{get:t[r],enumerable:!0})},ax=typeof window<"u"&&window.fetch||typeof global<"u"&&global.fetch||x2,hq={};Fi(hq,{calculateContractAddressFromHash:()=>b1,calculateDeclareTransactionHash:()=>Ex,calculateDeployAccountTransactionHash:()=>xx,calculateDeployTransactionHash:()=>Oq,calculateTransactionHash:()=>Ax,calculateTransactionHashCommon:()=>S0,computeHashOnElements:()=>Zo,feeTransactionVersion:()=>Kd,getSelector:()=>vx,getSelectorFromName:()=>Vc,keccakBn:()=>yx,pedersen:()=>p1,starknetKeccak:()=>_x,transactionVersion:()=>T0});var pq={};Fi(pq,{ALPHA:()=>wq,BETA:()=>Eq,CONSTANT_POINTS:()=>Ly,EC_ORDER:()=>h1,FIELD_GEN:()=>_q,FIELD_PRIME:()=>Dy,FIELD_SIZE:()=>vq,IS_BROWSER:()=>Sy,MASK_250:()=>lx,MASK_251:()=>hx,MAX_ECDSA_VAL:()=>qf,ONE:()=>zo,StarknetChainId:()=>px,TWO:()=>Py,TransactionHashPrefix:()=>bx,UDC:()=>zf,ZERO:()=>wi});var bq={};Fi(bq,{assertInRange:()=>no,bigNumberishArrayToDecimalStringArray:()=>ii,bigNumberishArrayToHexadecimalStringArray:()=>Vo,cleanHex:()=>Ny,getDecimalString:()=>dx,getHexString:()=>My,getHexStringArray:()=>ux,hexToDecimalString:()=>Oy,isHex:()=>$o,isStringWholeNumber:()=>l1,toBN:()=>wt,toCairoBool:()=>By,toFelt:()=>$c,toHex:()=>er,toHexString:()=>Ry});var gq={};Fi(gq,{IS_BROWSER:()=>Sy,addHexPrefix:()=>oa,arrayBufferToString:()=>ix,btoaUniversal:()=>sx,buf2hex:()=>Iy,calcByteLength:()=>cx,padLeft:()=>ox,removeHexPrefix:()=>ro,sanitizeBytes:()=>Cy,sanitizeHex:()=>yq,utf8ToArray:()=>fx});var Sy=typeof window<"u",ky="0";function ix(e){return new Uint8Array(e).reduce((t,r)=>t+String.fromCharCode(r),"")}function sx(e){return Sy?btoa(ix(e)):uq.from(e).toString("base64")}function Iy(e){return[...e].map(t=>t.toString(16).padStart(2,"0")).join("")}function ro(e){return e.replace(/^0x/i,"")}function oa(e){return`0x${ro(e)}`}function mq(e,t,r,n=ky){const a=t-e.length;let i=e;if(a>0){const s=n.repeat(a);i=r?s+e:e+s}return i}function ox(e,t,r=ky){return mq(e,t,!0,r)}function cx(e,t=8){const r=e%t;return r?(e-r)/t*t+t:e}function Cy(e,t=8,r=ky){return ox(e,cx(e.length,t),r)}function yq(e){return e=ro(e),e=Cy(e,2),e&&(e=oa(e)),e}function fx(e){return new TextEncoder().encode(e)}function $o(e){return/^0x[0-9a-f]*$/i.test(e)}function wt(e,t){return typeof e=="string"&&(e=e.toLowerCase()),typeof e=="string"&&$o(e)&&!t?new vi(ro(e),"hex"):new vi(e,t)}function er(e){return oa(e.toString("hex"))}function Oy(e){return wt(`0x${e.replace(/^0x/,"")}`).toString()}function $c(e){return vi.isBN(e)?e.toString():wt(e).toString()}var Ny=e=>e.toLowerCase().replace(/^(0x)0+/,"$1");function no(e,t,r,n=""){const a=n===""?"invalid length":`invalid ${n} length`,i=wt(e);Zd(i.gte(wt(t))&&i.lt(wt(r)),`Message not signable, ${a}.`)}function ii(e){return e.map(t=>wt(t).toString(10))}function Vo(e){return e.map(t=>er(wt(t)))}var l1=e=>/^\d+$/.test(e),Ry=e=>er(wt(e));function dx(e){if($o(e))return Oy(e);if(l1(e))return e;throw new Error(`${e} need to be hex-string or whole-number-string`)}function My(e){if($o(e))return e;if(l1(e))return Ry(e);throw new Error(`${e} need to be hex-string or whole-number-string`)}function ux(e){return e.map(t=>My(t))}var By=e=>(+e).toString(),wi=wt(0),zo=wt(1),Py=wt(2),lx=Py.pow(wt(250)).sub(zo),hx=Py.pow(wt(251)),px=(e=>(e.MAINNET="0x534e5f4d41494e",e.TESTNET="0x534e5f474f45524c49",e.TESTNET2="0x534e5f474f45524c4932",e))(px||{}),bx=(e=>(e.DECLARE="0x6465636c617265",e.DEPLOY="0x6465706c6f79",e.DEPLOY_ACCOUNT="0x6465706c6f795f6163636f756e74",e.INVOKE="0x696e766f6b65",e.L1_HANDLER="0x6c315f68616e646c6572",e))(bx||{}),zf={ADDRESS:"0x041a78e741e5af2fec34b695679bc6891742439f7afb8484ecd7766661ad02bf",ENTRYPOINT:"deployContract"},Dy="800000000000011000000000000000000000000000000000000000000000001",_q="3",vq=251,h1="800000000000010FFFFFFFFFFFFFFFFB781126DCAE7B2321E66A241ADC64D2F",wq="1",Eq="6F21413EFBE40DE150E596D72F7A8C5609AD26C15C915C1F4CDFCB99CEE9E89",qf="800000000000000000000000000000000000000000000000000000000000000",Ly=[["49ee3eba8c1600700ee1b87eb599f16716b0b1022947733551fde4050ca6804","3ca0cfe4b3bc6ddf346d49d06ea0ed34e621062c0e056c1d0405d266e10268a"],["1ef15c18599971b7beced415a40f0c7deacfd9b0d1819e03d723d8bc943cfca","5668060aa49730b7be4801df46ec62de53ecd11abe43a32873000c36e8dc1f"],["234287dcbaffe7f969c748655fca9e58fa8120b6d56eb0c1080d17957ebe47b","3b056f100f96fb21e889527d41f4e39940135dd7a6c94cc6ed0268ee89e5615"],["3909690e1123c80678a7ba0fde0e8447f6f02b3f6b960034d1e93524f8b476","7122e9063d239d89d4e336753845b76f2b33ca0d7f0c1acd4b9fe974994cc19"],["40fd002e38ea01a01b2702eb7c643e9decc2894cbf31765922e281939ab542c","109f720a79e2a41471f054ca885efd90c8cfbbec37991d1b6343991e0a3e740"],["2f52066635c139fc2f64eb0bd5e3fd7a705f576854ec4f00aa60361fddb981b","6d78a24d8a5f97fc600318ce16b3c840315979c3273078ec1a285f217ee6a26"],["6a0767a1fd60d5b9027a35af1b68e57a1c366ebcde2006cdd07af27043ef674","606b72c0ca0498b8c1817ed7922d550894c324f5efdfc85a19a1ae382411ca2"],["7fa463ee2a2d6a585d5c3358918270f6c28c66df1f86803374d1edf3819cc62","a996edf01598832e644e1cae9a37288865ad80e2787f9bf958aceccc99afae"],["3d4da70d1540da597dbae1651d28487604a4e66a4a1823b97e8e9639393dbec","45cdef70c35d3b6f0a2273a9886ccb6306d813e8204bdfd30b4efee63c8a3f9"],["1e448fdbcd9896c6fbf5f36cb7e7fcb77a751ff2d942593cae023363cc7750e","30c81da0f3a8cb64468eaa491c7ae7b4842b62cb4148820da211afc4caffb3a"],["6531acf1a7cb90a4eb27de0b7f915e387a3b0fd063ba6e1289b91f48411be26","31330f5daa091889981a3ea782ae997f5f171336ed0487a03f051551a2cafa2"],["54be016394d5662d67d7e82f5e889ed2f97ccf95d911f57dd2362c4040ed4f4","c6cb184053f054d6a59c1bf0986d17090d25089b3fdcdaf185edc87ef113e5"],["35b9ecd0499ca1d5d42dcbb0c6b4042b3733c64b607ca711e706e786ef2afc6","5624b476a5b21c3a544f0712d4817b06ad380a5a6529d323bf64da8ef862d8d"],["4ce0378e3ee8f77ed58f2ddbd8bb7676c8a38bfb1d3694c275254bd8ca38e23","5a16fcbff0769c9cf2b02c31621878ec819fff4b8231bff82c6183db2746820"],["648d5c6f98680a1b926bfeb01c00224c56fdcf751b251c4449c8a94f425cfcf","72c05ac793cd1620a833fbe2214d36900ebe446e095c62fcb740937f98cca8c"],["bd09be3e4e1af8a14189977e334f097c18e4a8bf42577ef5aafa0f807bd89b","6e0e72ed7eb65c86cee29c411fb4761122558ee81013344ba8509c49de9f9b6"],["35ea4e339b44ae7724419bdfbe07022253137a4afb7cbaffad341ea61249357","3665d676a026a174f367bb4417780e53a7803cb02d0db32eb4545c267c42f14"],["36457bc744f42e697b825c2d1afd8f4029d696a4514710f81da52d88e178643","7c93715896735492a68c7969a024b3a8fd538bffc1521538107de1a5f13ce9c"],["5b3a08ebcf9c109cc9082f70d9df2b9c11b5428ee23917b4e790c4c10f6e661","9d7b42ab0c20f5510df7ea5e196eec99342739077e9a168198c89da859753"],["21883ef8580fc06e59481955d52ece3aca6e82c8c9fc58e216dcf46f96990c6","51a6423543e6e8a43e71da34cd90f5b520b8d33b67c4bf857573ab9e301aa4c"],["19e86b77f9b581e81092b305c852faf53940a8f15f0a6990c414f04c0fa7ef9","515630e35d4398c9c79fc4ee08e1023fa47d8e03c6e7819c6d2ccef45398fa"],["888ab8eb4c31bb2ac5b54aa320dbe1a69c96b864e8a5f54d89c1d1a6b86c24","730e148467f6a55ce22c5296f5380df88f38de76ef0b2de844cd3094aaaf3ea"],["75e79ff13a894e7120dac17b7429c0c32ce7828f726c9973728c0977a5f5977","4960526e59c1c736561a201bc56f7d762641b39f609d273cc996f5d9197cfb8"],["640fe009249115d7254f72ecafb3006139e4bed7e9041af51458c737282d1d5","3cc6c978a575246e2ce4f7ef1fcc7f63085db9ff98a1b1f3fe374087c0332c"],["6d6fd09ccab7c26de9b3906191235deb5c34685580c488275356a05e209ca96","7157f81a34213dd8f91dea4f6df1bcfabc4ee091a3049eeeb3b7923d39b8645"],["5531ca1d00f151d71da820918f74caf2985b24dca20e124721fff507b5a5876","518529643d3f25e47f72c322223ba60a63d6bfe78cf3f612215d9c19bf29200"],["6192d454e4f8fe212bdfccd5b15dd5056d7622ffe456c6c67e5a7265aea49c4","2377a45dc630017ae863cb968ddb38333a70c7946d8684e6d7a6213f634b7bc"],["542fb44b4ef3640a64fdb22a2560fb26668065c069cf31d1df424819a39ff18","5dbae9b0948e0361aea443503840341c322aa1a1366ce5390e71bf161f78f8c"],["299ff3e3412a7eb4cb4a3051b07b1be2e7b1c4b789f39ffb52cba3d048b71de","1951d3175c02761b291d86b6c0a08387ad5e2a2130ccc33c852530572cb3958"],["628ce3f5367dadc1411133e55eb25e2e3c2880d6e28754a5cb1c5d109627e73","ae3e9b7d50964e28bd15380400b7659b87affdef5d2586cbefcd9be7d67c0d"],["6ea54aff064895eccf9db2283225d62044ae67621192b3346338948382f5933","6431507e51aadacfaf39f102a8ff387756e9b5e1bc8323d44acae55130d93db"],["28097d50d175a6235320fe8cfe138dd9e46895d189582e472c38ad7a67d923a","7f9eab4133d7d09a7ff63368d6135c26262b62336eca1b5ca33f2096ce388ba"],["619fd09cdd6ff4323973f256c2cbdcb224f7f25b8aef623af2d4a0105e62e02","2c95f0ae11d47eeae1bc7f1350f75f9185c5bc840382ceb38a797cae9c40308"],["641c18982ced304512a3f2395942a38add0d6a7156229c2a7c8b8dfbe9beb96","6f6288c9c659b6af5ac975f4180deffe53d516399b2cc62f31732e9d4ba9837"],["58ab546e51fe49fc5a382e4064a2bd6cfc268904412f86c26de14f28a71d0f2","124b7217943e7e328408e8afdfa7da00dcbc94a2bb85fd8e01fb162d2c2c0a9"],["a82c2fdedbb26c3c762a12f7e86b0e01e65320e0a25a8399d665f6e266bf74","1a1de28e253f3e10f44d0111e8074f882d7f42e5900780ccbdc31da372d3fd8"],["744c725a7455a992e3cf5bd007bc234dd4668dba285f553f38350ad94c1615b","7f721a87f48798bdc4a9c0eb88559e2ad7a74112fd901e70ea159e67a9c33f"],["434df142ddaa60f7881b6348d91687de40457de7ccfb07f0304b9e820705d0c","7fae425e3b53f97dd1f5b20e49ed9fe24ff1efc341ba5e017ac89cf8df0cc39"],["7a1e2b809dff46277021cbc376f79c37e1b683bbd6bca5317014f0dc0e1ae73","56790278a231912c334eff05281e08af1558e85516b4411ef64647c13bea431"],["4931b7990348d41cf8907be79f45bb7991fd18f8a57868351c92fa7a34cbcd7","ca35091815cdf0837d396e25aad6052ad32d497a33b123256cffdc008bc50e"],["250b815d352fd89f8210b624b147ea7d0a4f47bcac49f3ac9b777840da93ebe","1173f10e9691948b7da7632f328520455aadcba46e017f891e0a1d7da2bef04"],["2223b85032fa67292f6e1f822628e6756e5c3cc08fc252ab88d63d624e4dfb2","55619ba96a7dcec77832fcb22cd5c21c7dcebc0280d730cba0002b67e0a8c63"],["249b131e04de73af9820d3e22492d9ec51bdc0c4c4f34d95352fa44dd61f245","7576d3b5d136368ff01170a77d8286d0d1c7c40688862fb40813b4af3c6065e"],["6777915d9b4769027eb7e04733f8a2d669c84fe06080f55e8a55674dfbf9efb","640d0ff384c9635e1af364760f104e058e3c86209fa9d2320aeac887b2e02d8"],["2abe3f237681052f002414399111cf07f8421535af41251edc427a36b5b19c9","636ce4deaf468a503ab20ccb2f7e5bdc98551656ebf53e9c7786b11dd9090be"],["4d5cc5414758ea1be55be779bd7da296c7e11f1564d9e8797ceea347c16f8ea","1a680c4c410cf5ddc74e95ff2897c193edaaecce5b2cde4e96bbae5c0054eff"],["46c375c684b30adf4d51de81e92afee52b1a3847e177403372c82109373edca","1eaadc5783c90a0261306423d52009e991126b3f620e9cb6cffca41ca096f4f"],["2ddfb71f51205888118cbabba8fd07d460a810289bfdeeb7118707e310cb152","1fd905d07b3933be886f2518246bdafa6f33259a174668808223cd7c28183c7"],["386f3879960713d41fdb3b1e41bbebf26b1c0e27a9a75bb1adcc1a0d3e8547b","2b21498c0f34ec6f17c720334dc0f36021c2f87afbbbc8847d0bd536eb265e5"],["407eae62c6c4de3b942195afec3f45efec71ddb5e6edee3d427631bcdbf9b90","436e7f2d78268ef62c4172d2ff1469028bad1f1d0f97ab007064418e61caa8f"],["1b881175e21201d17e095e9b3966b354f47de8c1acee5177f5909e0fd72328f","69954b1a9b8bfccf8ec384d32924518a935758f3d3662ef754bcc88f1f6f3ec"],["7d545a82bff003b8115be32a0c437f7c0a98f776bcf7fddb0392822844f3c5e","34b6e53a9565a7daa010711f5bf72254a4e61da3e6a562210a9abc9e8b66d69"],["299b9fcd4fadfc4b6141457a3036aaa68501c23df579de26df69d4def89b913","b95bf2c2bb303c38bb396382edc798ca6a4847e573ce19b7b08533d1912675"],["551f5a4dae4a341a3e20336a7d2f365ddd45849351ec6dd4fcbedfe4806d5d5","5865c977a0ecf13ce85ae14c5c316872080bd36f0f614f56b6dfc7ece83792e"],["7a1d69c08e68c80ad8b310736e6247a53bcba0183b9b8798833bc696a0fb6e2","3ce803a20ebb3b120d5eaf0ad64bed0522fad1a0f2ce39a5c5cbae98c4438f6"],["28acacc0bc41d84e83663f02b36981a2c8272ecd72d3901164be2affb09c504","7a5aee0b160eaff5b5968ab1a0304ce58c3d5ae0148d9191c39e87668229e5b"],["1f78cfdbcc767b68e69a224a077468cdfcb0afd6952b85bccbdb96d1fb8500b","4772ba173c6b583284eb001cfc2a124104833f464ff9df096443e10ef3e9dd4"],["2774108962ca9897e7f22c064d2ccedac4fef5fc9569331c27cdc336c95774b","9e13d79b68e8dc8091c019618f5b07283a710ddf1733dc674a99fc32c12911"],["770d116415cd2c4ace0d8b721dd77e4a2ef766591f9ec9fa0b61304548994ed","42165d93c82f687635aa2b68492b3adffd516beb4baa94520efa11467a209fd"],["5e6e4ece6621e2275415e1fda1e7c4f496de498b77c0b913073c6a6099394b9","3d92ce044fc77fa227adc31f6fc17ef8b4ec1c5aafc44630c0d9195075bf56d"],["6e69c717b5d98807ff1e404a5187a9ceaf0110b83aa15a84f930928b1171825","1ee7cfc3a9744d7fa380ba28604af9df33ac077724374c04588bd71fa16b177"],["404318f2d2ceb44f549c80f9d7de9879d8f7da4b81e7350c00e974ebf2daef1","3934831b5af70d17a3f1da9d2931bd757e6acf2893236264fc7e0d92ff1a1cb"],["20dcb6f394fea6d549b2e75748f61b7ec03b6e52319cb14163373a9c22bb9dc","106a8c96cfb95a331618b7416d1498554730499e194a58fbf63019890480fc7"],["119000f277ccee013e6bb121194ec1ab5460fb6a96eb702a14079865f4170aa","1737a32f5415e8720a5606ec1dd4756f02e7c6817e3723b453d091f2d192773"],["45d0fb5cd95db76d05dec3faa12e467a308eabaad363a062353db3cd2d9b749","ae08691b5b0cdd19ec499132421638f470f493320e4003d123ab1da761b965"],["1257b3e65cdfb6367c6d0942327e799bc66eb221e70c6573a9862889eb51c38","593309fd45755dd2cc4afd2b9316bc4638b0c5ddb3009694fcb7b250d0c8a2f"],["186dcf9950f72e868014a8accf14aa36e82a7a2a29f86ba37f6632da4189db3","55684c9f7a043fc523ed78f756f834b4db823d5e4161bd79602c17d55a5cd8c"],["58791d5569f282f5c3b01ecdc9388df7ba3ca223a2dc1eed5edaf2a1d302fb9","6298d7dd51561a045bb4089deda9f40b2865589ed433e56d54554f8b45e79f0"],["13fd87144aa5aa4b24d5a7bf907d8280d15937fed262d41084898cb688fc28b","3fa54367770cc4479a857411ddcabe86627b405ce1cd14ad3b2863bde13abe4"],["48118139445415f0c1879224e2dee744ed35280ff00537260402a1741ec3676","4dfa39dadaabecfc54ecb7a25319444f8e952782d863790e42a9887064fc0c1"],["4ad031bb9eda84f2fe5d354c7948d41558ca657a04508654721810ee72ef158","620ebd5d0086b92c6009a42777b946a351c2c7ba852b57d3c9905fc337459ef"],["4a34abb016ad8cb4575ea5bd28385d2348e5bcc0cbba90059f90f9c71f86e8b","4f781829ad83f9ed1e1b6de0e5f4ac60dfdfe7f23cb4411e815817e705e52c8"],["7fc632d7512aab5356b7915dca854c8b12b369ab54f524fbce352f00eb9b9f9","2ce80b944fc9158005f630b34385d50c3ad84450a9e1e529925b3211dd2a1de"],["65ed10347503cbc0216ca03f7536cca16b6abd18d332a9258685907f2e5c23f","3be1a18c6bfa6f2f4898ebefad5a8e844c74626d5baa04a820d407fe28bbca6"],["1a8abba1be2e276cdd1f28c912280833a5ede1ec121738fcca47dc070dcc71d","21b724378bc029a5199799df005922590d4e59cae52976f8e437bf6693eec4a"],["3a99c22dafcfe9004ebb674805736a26aeed7ed5d465ae37226dcbe270a972b","5bf67552af08e1e6e2a24bf562c23225e89869cab9bef8becb3669175a3c94f"],["4a6a5e4b3501f2b7bbdd8da73ea81ffca347170bdfb6776a037cdd74c560fb4","5af167ebb259c2da88740ec559ee04052bb66480b836cadd0e2590c32d7111b"],["6890d95308525f0bac9dc25cc1189eb92d29d4b3fe61bc8aee1c716ac17b1e8","e6f23f78e882026b53ea4fac6950e56e3da461e52339eb43d2fdb2dade7ca9"],["748f4cf4f027efdeaed7c7f91ef3730ff2f2bb0bfc2db8f27aadde947f7d4d5","3a1cbc550699411052c76293b8c41a3a8a1ecf12cbbc029a1b2b6ea986fca93"],["7321f3f581690922cd0dec40c9c352aae412ec2ccdf718f137f7786ab452cd3","5be5130c9277cdb76d7409452438ec15d246b211dd1e276ee58e82a81c98fd4"],["6c4d6cb7e7ae70955224b8a912ff57ca218635a2436b36cee25dce8a5cdf51f","32f8c03c6db3246946e432e4148e69f5628b200c6d7d72449df6eeac0998039"],["1dad5f2e795ea6fa5177f110989516eacf8fb37bd6a091c7c93f1d73a2fe309","56b2298c538180e99dea3e171dbb5c6fba0bd0a9ed40537277c0c2373a8e2c4"],["1610605baacc9bc62c4cc923dc943347cfece7ae241e746fbe6c2c878221dbd","431a82d657e0d109d00dea88cf3fa9b999845221b7b5590a20c40fc71368c1c"],["6a4f5c787fb09a5be2b04d2eafa1e6f3d3c863ee22960eb0b64f6eaf6659162","14dbc3eaea6146ee7eaace5a91ed9430dad3a47e9ca2f68b455171f8fe6a7b3"],["738415b73e55412b0e582e45ff0d7bf4b1bf2922db581783fdcc75559f40e","33825aeb3fd8459999eb418d15102ba5864b069c6ea517f0c6e9eab8d9aca47"],["2603e72ce53985c70782774057a17944f7b4ce224a809be4e2b5af3606aa1d8","92822921809c42318f42dac4d773325f41c43069e990adac7818a45e2554dc"],["181cd967ab4615357cc96c82eae9152ce7598c1a1dfdd91a458bddb016ae9fe","5d562fdaeb0e12647e230e50eaf216bed52fa73c6b7378821a3bfc4cd66d4ff"],["1121726069b9ef5954ba6490100b226e0be53fef3e071b7c58a1286174b789a","4b25594cf4e9eb2d14b3f52f2661a9992234fc222c0a0d44517cb77deb9c16f"],["e543663969b915337f105f80995a77b356f1a51d8b4a4fb12d44364130e873","34b2e3c009fdab4cb7349a580df2e64c0098a123280078e5da6623a9ec6b44f"],["4e2f8909bb62de5ef65600e61bbf969293815296b6e23702875e049b3ce5c45","3cb81f2c21f22a7add26fa38a9ce5d9cce1bb251bd2698f90c34ff0a84f7af"],["37b546e403a1ba970c17b67c2f1361ab9c803f8d2b5cd93803014faa08861ed","37079184ea46272f5809b523d060686633f7995167897a153be1772fd6566f6"],["27bddca77f7bd7f66b3693567a4238f2e6751d95b0bcb409f6b24d08f84798c","6417a85cbfd6fc02df560d3963a241a986baacdfa423f65d7227ce49a96c57d"],["2de71a39aa043057d1bc66e45f804542acddf18f7a6d88c0d7fb0ca240debdf","306c1ce39ab46300f7cca0f3a2fbfa77296a27e24bc66b0b8044968ec0ee413"],["307c877154364c0c03534e7327d5a88e1380ceef6481567ade37a14ee7c1a72","3404bc7dbfb33b95d922d0693aaf9358f77888d7d95e773c38d83dbe2e5f995"],["79f09ff7c60850e5f5ea020722659a1ed27db4c95dca131f99552f785c8afbc","40429528c099349b426ddbf129497176951a64a53db5f9d8bd2be0252cb22b2"],["4027dc6b56d446e5972f35464eeac85c5254ef377c902d9fe37aea841bb5292","7c3ea37689ef679fa2f5c7e031a78e23d484a8317990fd34d44d95cc1db3717"],["645dbf78a3c228c4b7151450b5e65edb58e71f37e1e4bc5f471e0f1abd6d9c2","15cfe7850f327b256e23b00627451560c5c6ab60db78d45b7ab286afb6f13ab"],["1503ca373757677ad1d911a2b599d01c46eb879d1ce21ae171c7e439846a85f","583eb269b7030da6a0c324026919de3f9489d2ff6ae0e6320c36f05469ad66c"],["66e1819ba3ec4ad4ae9f7d7588d23baa004e29d3aad2393d52af204a81626ca","505249980cbe6273b82ad5038fe04a981896f4117345ac1abcc67e2525c0ee4"],["5ec20dbb290254545f9292c0a8e4fbbfb80ad9aab0a0e0e9e9923f784d70ed1","bdb1ca3a859227cf5d00eaae1f22584e826ed83b7ccdb65483ed5213dc4323"],["a5c1a5011f4b81c5c01ef0b07c0fbf0a166de77280f0ae241f2db6cba15194","4444521fb9b33d7dfeb1247d0ee1a2b854ad166cb663d9dd2e686909362a689"],["1f35335de40e00c62642dac2fda8b30f071986ce4f11db849df11bc45ad4e0c","7801a2c761b90fd4477ba0be9a775003d5dfcd959b1ed198b4681f15e7acbf"],["48db4798cf6821c1ffb8178b1d3bb6020e04186c96aaf4670972d367f4ed5f","781019494df95b888f1578f1b4a3f8e125ea60eca47ef9207a10630671217a3"],["17f653d904210148a8e74d8e719a3061683c164aa6d79c902a19f185ab437bd","6780e97985932c3860d810af1e065d454b1cb4be0e7ffe2d8cea7d52526e223"],["5c4d0c7432f9b0070436240f9855adae1467cdc9826952ae01b68cd52a3ad89","1c5747f968ed91261b7ae9bf1023c999da9816e37de602d6a1a50d397752bff"],["6fedd7639fdaa2f7bad4ca0b391710f6f8a7e890250ae8ae4252bb8b39a1e58","436a215f655a3fd3778b2335ffdc9aca6b98474e43d764c1f8362830b084f0e"],["7fbd45a889c5e9d127bb4f8474d6be7cb9796bbfff923b75e42a1ad4cae37d6","484bd12622a6ba81cd53049c550d9ed682a8e765b656b1cbff9bbea637bd1f4"],["17d984d47937263f7966a3e7b1eea04071e678494bd749c9e02b48b3234f06d","7b341ff08722c4e161005d0037204a7a2001fdda7af2cc1a0b04a027f115a0f"],["7f1822045db45ea07e1519c3ee1f7705915f35fe4dd8db1e8921b5d1c740edf","33d41e06b93320ad1b3d9580380ec797a05dac3f1cc8008899110ebefde2f78"],["7b19453ecb74b7d0e2a66b9890ff73bfbbcd61a266abd6d82dbe665bf32f34d","6dba2355420dac582b1f349609ea1c89b89bba2d1a68a0642f1dd12d86e73cb"],["273e82a15f395ddf2489a95685bec8bac62c4b459d1b28987d3cb27e4bc9128","653375b48a4cf5d5b101c9ef533039bedce5dbeef3f59e8f168bdc99b06ca5f"],["3006c9e7fc6a553d8eb4e8a47ce9f10d1a39576ac255ae9e0a4ce3869e76212","65fe9e2ef2aae608be309332d464f57e28f1df5de1a6a519751b056971f932e"],["5e8f384c8a4607fbe9789fcc52d54249d304d698562597d114c1d81452d3dee","3c8bc78066b5d947dc1e405e326ee55ea606c7988f666748d259850fa259a22"],["7841b2102e9aa103fb53a642b3e167b21113ea44751ab38e0b5ef8312654db9","71bf5c8308fcf9c4a7847494cd9bdd946fddf7d3a37e8bb0b201ff2343deb8e"],["40f68027420c11e3ade9aae041978dc18081c4f94943463aac92d887f922a62","499c6062594a6c7e21a3cb91ea451813393bff365a27a08f1a515439b83cf42"],["6ce77a50d038b222634e87948df0590b79d66087b01e42b9b6d8fa30ebb1465","35f5c46bb1be8555a93f155a174d54ec048c2ac8676e7c743054ddc52709d37"],["604f8b9f2dacb13d569262864063c2d4bb2b2cd716db6eeb2b1eeabc57746f6","68c6799e24f3b44eec3049973445174727a66970f1614a782efa2b91ab1e457"],["73d620f3bfe77f672943d448d7dc05327adf64b8e7af50039c469d7f7c994c4","4859deb36eaf0c802f0d1514602368143a33ec6ce8fd55248b59025debc6afb"],["3fd2bcd1c89d706a3647fbd354097f09c76636e93ae504973f944d8fc3bcc1","677ef842cf5eb2444941f527abec567725e469469192354ad509a26ebb3d0e0"],["39222ea924ac17b533c72ffb2c47ffdc11d6a7f7c70fbde3a10fb0b8f35eb2f","20dc4bd1089019bc1d7379b4feb3eae6eb5af59e9f253845da9fd633057e952"],["326f58994e1347f62e4102183215b5db956378d2f61f14aba4dec94577f53c","7a03284c296003bbe05178a1d82efdb7b8125511d63e20e50aed789c2e52e1"],["53aa8939c74d4ee58f03bc88bace5a45c7bfcf27466201da05dc6723a5f5632","2e32535ca7732904a048183247b04b426ecf9b39fc393a9cebe92fb1dc7a7f1"],["6cee1a03145e93b3e826e6067005f09c06099c98198c91c222407ba5c8c132e","beaecad1274e7c6e5476a100c271aa1a6f86ee5a9fa5c2f26124d5886fa63"],["3ec659b8175e1be1bd5a252108714776b813e330393f587814f5f1f32a73332","529a5cf9f8c237ae69a94217d173c8d19c156952041f5c980da557990863fa7"],["3d66ec5963d0c534d4139c8cef2e1ac48b3e7965fafabf58be26f903318af4e","3d3f2de7a95f59b683725ee6283cbaf31f97c4b600df9a4621413223a468740"],["7fb38ace8e0932fac2ea0d3eb676db8d684db1817e2e4d59da7996ce398b4a","68f92bd5768cdd4710249f9d49ef1d5654e497b9a4ba10bd2971366d83fb400"],["1c4a49314d6b4969cdd142c76ceb7682bfb868ace7f7568b0fc8635bda5a9fb","5fc0519f1f4cc10b5771312458748c036313b87707ed0540026ac64a5955aa9"],["3073c95d08d3b97caea5f0be16b2789bee766f76b7e5499f8ce8f96abb0f344","52a8974b4eb9a1f6a0ae2c83cb4715bf18d73f057255fcb3f63b74f7e78f590"],["44485b16d597a5de3604df6f7ed7e00b8aeef9e7e8dea8688255153b8bb16aa","6cccb0ba170123266f24b5d93a744397dc2c44820edc4f8f5b9a0f5c9b3b940"],["7618f77b7b32d512688dd62e0b48231d9574c6361e8be353a7dc04f7c3a115e","78ffcd16d80636381ca231aae70d99c9e20298b4f5388fd823ea9fa2b8ddfd9"],["7dc82fee1ef95cf5b3720fcc07f63246654bfe39762627839da40e51c75654d","4c0ccdd70955da74558de20c88352df8a02aa97e4d5971c500e884740a8cb62"],["7fa5d460dc10cbb418b444d9bde97e92c70a99a222b99f244dccee7e62cc04c","636163901baa5b7576c38c43407af578b8c4607e01e86011ae2dde587a89f84"],["758930d46006623a756c89bd0cc378f6a3c1f43c9a0edbb42274c35e75c16d2","1d74dd9f81c2fec811b8cbd6168a745b0a111932b2a345265ef2853b50b6245"],["7332ee0626b044d664ef228f8cb84df7c643e52f6a2591ae1c9007ad61ec16e","229bd8e630572cbdee54283234cf3e9f060e6382f99943bf234119d47b54470"],["78a16ef803aa20a075bb2f66c61bb2dae5698bebb94a0995fa74c3d53de1614","246d588b68edb6fed96c128349908c42dcd64c46341b205e79f4aed9b5d3675"],["6e1933939bd03b67bba753cc0cbe7d2f25bad68c993887ef8c9e2fcd59b0647","599413f7c204a11a5ce315eab11299ab7326603412bb00bc1c59ff75a37d6b4"],["4a79957a5a1888ad063b51c69565a2b48e8eb917183e220a1c8d3374526d30e","1f092de0e069bba7fc5386e2e9a114c1618f88c4b95e220cd35ffe96f99fcad"],["3148aa3df9ece39aca84f59489f2710522216f14be6055ee0027529d1d55e2d","617e9a52a92975db0ba1977f71116f7058a0d31b869ac7f3ee2fd80b0c5100c"],["5c1188e72384160ae39d07328346cda4f6c12d227448e6236f04dc971625287","1643006eb3a3bc6aafd5f685cf054f2a572e6ca58c0118bcec0b833741f116d"],["3f72efc93c9b71adc4c51d8fc69d3940b20d08733af2b7d05140fdb1d1c1004","7399259987c8f4ebfab46e522380707e58427d3962ee0c2a91760813f76d232"],["3129b34c03c51aa8f611e91d5cfcc9bd3ef108ee66e6d3ee35a0e0e50055bb","563b18b5650085efb4cf179a029e6afff27b1d3091cd28eaa68d24fa1f801c6"],["16eac0f9fb4c67cf89a7fa4ee615bbe731d8edcb709a1b9b50c7d873a530f52","7ff8288b6e199ca8f316192881424a37fb080c29daa76b1f0edaccaf580a80e"],["75f6b6028c43ce832f65d7e8e620d43b16cba215b4b94df5b60fc24e9655ee4","35e9ccfaed2293a8b94b28de03bcb13eb64a26c831e26cc61a39b97969a2ff0"],["3c6152fe093bd6316897917ec56a218640ec1b2148f21db9b14fc7a5ff362e8","6eef2df27ae7d63a28856b07b73e7aad7ca94f317201a1e675ffc6f9a1710dd"],["54e01b5fe4fd96052aad55b3f26b1d254dfc7e2525fffb9ae0a77eb8cc5579","7c3d39232ab333675b219abc766ed9b4782c840e6b046614dedb8a619696eb0"],["d1e63f8ea8a76429cf254a6d3b668761f0dc572d4bfac4fd56d9eaf58fb6c0","2bd0a84d3908a63085824c9329a0983913006ba155b56a58eb3f9becab29c45"],["2d6122f2a702edd4da7385b1580796a71d13bd72be94cfb3fec01149c006c2d","70eb282fae992efa6f5915e578b640653549f23385ef3a29ab29b1b9b8ad63b"],["752fec14beaadb5ddbba6b3a17fcb86579fa588ef407fad0ea07dbb22a640d3","3feb6728eca21a1e84e8f9f23010387a53a96a1cb62d86fb37996150a1299ef"],["63f94a92f27acde8f5ed949b459506f51d70c85bcc61a34d647264ecc53c65e","37e5dce0646ee66f4fdb93b82d54d83a054948fa7d7fa74ab6b36246fc7383e"],["d6aa909287a2f05b9528690c741702c4c5f4d486c19a46c38215f52ef79c7b","5ebe1128dd81093df4aca0df365d58adab848d1be1a94b95eeb649afd66a018"],["12866812b3053e2f7a9572bdaf5ef2b48c6fb62a0eed9ff0356df50e7d05557","6785f7eb2cd1c120e4c7167b46861d10117040a2e9f2ca86a71e9d67df90613"],["46a730d05330b1b13673cb8a1b8f45460035e4a9f1a1751cfba099c4355c1c","76fb0ec6cd16a8141cdcd875c8b2de9fce42d296072643d148ac7e7fa7472df"],["4bd4380a22900bd34835e0a908eacf4b6edb61eda0cf483f9212453b37e7516","5e9551cd20d8d7ddbf4366880b7d5267385afa1966ff30da4baaf273b009d29"],["71f1994ad40baa2922424ae222663a64f93d8b67929e9a10f9e4c1ab19f3833","85320fe68ec0d37cc19fdfd03589d66906ffa4046c80e1b094a85f27676346"],["5a63b1bf5232f28f808765c6be7ce1f81c52145b39f01c879fae0f4303bee61","3bc5d6df68bb6d0577bf9ae2ae59ec0e9b2dc7dd56ea179fb38a41e853db950"],["161ded55ff1087032381e6c1449704f63ad2d88df82dfc44a71890fa09b3941","78a52e0013842037274ea75daaf8eb4afc04ccc4b07bfaf3f5ee47d165e01b"],["1bfce5229c5fbff5c0f452a22317fcfcd9262f23df41840f84fe7d44cfba1a1","66b387872c00e63c73006a955d42cf49c46c5708fc9d1579b9ae38341b24a3d"],["56d47dadc9cbd1dcb2ee3efcd5d4af5e6aea71df10815c68b54a14e81d11b44","47e966ba54df48e9b612a903685e0060a67e4725402e8cb4cf654e54e813a3e"],["4b1c44438afd4ddf20a2cf612df2ee494ce84c7274c5529e857693e73018491","430403bd31d8f0677e06abff7159384560f27b9622943fea1a3192f14bf40d4"],["7f7281728fc2214aa1dbf13176a4624b53814734abd570eb6ef7c7e32379606","312da47be347fb3fa2c9089b38df372560dcace2effeeacab4d96ab11567295"],["16a28884a1be8183e0d3fc0db84a9afbf47126fd3be548c2a584aaafbfa7dfe","7c3f57b3b895564ba562c1cd80b71fda6d2e611665c6ab87744f5390858fe24"],["323339f37b327a731232a9580e79952063c7c232bd1380146d8a83c285f4b8b","4f16be1d983c7232f92cce6b9690695978d42cecc8eeb8c206e125d1098a265"],["624d26cbaa197e104eb83cebf2adeed09a5cdad359993fe5e3529d4d0def21d","261b7da3cfb55c788977e0d8d640e3e93ae5a325d962ce85c816d7d32cfc430"],["f24ecb7ee83a3e28dab54a330dc93d0429a7aea36412e922dce8fbff40d60d","b043e36a258d1df1d21b0cc7be9c4dcae1bd4ed326c110e668ac23d86805a6"],["686cea46b710bde1231483bfdbc700cfa3da6ecd5841c0e0c782f9ea24328ec","7eb7407aa58edd6911c7c7e8d1e03bb52ead4a2415a0c33325872ff3a521dd6"],["3866ee1186264549df3dfcdf8705c0380c9372eef6d4081c2454d3aded1720e","634c6d3e8eb8af652a4be73e3b613452c2213104ca875b66b4b15ee5b1716af"],["484c687cd2969a1d20a58cdfb9a60f280a473284503b1ecff5de514aaf8206b","34d44d26b7427e51a646d1b924084762f5b461685450f21d6a472de565bebd8"],["203561333771fa0fe22c4033349f7b877d15b0542a5598e81e067968768247a","2b6a533aff6e2163a36a2a89cb7415848bef48db40f952ffd380f47676707c2"],["2ffa6cca6233695760251206fc5e34c8d3692498589478cdd3d5b09f0b7c05d","6c57d605478fa9626c4ed769554d075daa53e1a1d0bd4d94174d3bfeeb11ad6"],["5dccf0fa46a5571f204d0b033b45f299cbb3d9f80fded57253ea4f1c64faaef","30a38e131ee8756ee5ea2a3e16618a5dbc28b5b9311308bf037ecc2039dfc7d"],["57b0a2eaebeafd950221facdd24790d7d1ab8883e5c5d55635f0d14a1ee4741","7b41cc478fa6be38417271db8ed12efc0da6982552c1496025d2df0576bf4ad"],["611b5725101f611c387ccaa13889ecf3bb5595071a179ce350029bfca4ad7f1","3129755977abc8995fec7eec1123a1561e429fde37ff36af002d3211831ecf4"],["1c06bbd0c52fdab9fcaf680c7a93fb821e538a2ed79f00f3c34d5afb9ea6b31","3873d3bdfe0be0157bbc141198dc95497823cc222986d24c594b87bd48dc527"],["275cdbabc989c615130d36dabfa55ca9d539ed5f67c187444b0a9a12e5b7234","2b7f723e68e579e551115d56f0ae71a3b787b843cc04a35b9f11084b006521"],["6cc702eb20f8b5940c7da71f8b1801f55c8c2d8e2e4a3c6c983f00bc1ffdd95","5d15b3727bc66f3aba6d589acdd139fae115232eb845abe61fbdfc51341352e"],["44defb418700cee8c9bd696b872adb005490512d8bba081f8f99a9f15cc981c","3b2072cdb1d919b2b65b5cb3557f0a3381d7ca293c267ca4a38f83e77bcc96e"],["fd83ce77b1578b3a9b8c3cbeaddb1504d2fd4a19c901c21ac65961224e4966","110cbe64fc10c6b9c66f15ca406a35f50b723b35d83c5eb9797a57f8395f4f9"],["9dc6ff90e341875e113bbfb507724dc7095a280d2f32cb6ba61a1e0c2d2aef","4aeb622896c852c2747454e8f172c9482955a42ecbe522d6ce07ecde79d0a51"],["71c58b0e47b9dd9107ebd8a8c8fa9f0534e78231bac612c1ddc7a94edf33eb7","7f90edaf4792bf8334adbaa0f4ee7c654312725af188682d75f34874c4eccb9"],["1f6de1f14988778ceb2dfe844f92394f1f1e72fd1581ceb3bf336c95ce50345","4f6007ed4e022d2ee9fe4ca8207c5f6c766c4f3b85260e941fb24ad0dcbf0bc"],["3ddc3ac25ede4a67a97547ed27dc920239b585fb3624177e2e8d59eba678115","a9afd8f8bb759cbd1dff2addc63f47da4ba1291ea34229c09c0637dc5c8d24"],["c56b0269d8431556e471cab9d70edda3a37b391696f107b2dc370631de51d","729c52f6b134f733eb750c14bd9f95c077f0f6f6ff4005701e5bedc6544599d"],["44d32ce19ac6807cb22e4f25fe1486a36a13926f147fbfa054b63ff0446177d","212a21e8c124c9cd37c80d2dd66913ceaa6b6f666522f115c39382b2d5925e8"],["35dfc16f3ae6ccc06a267bf6d931601e52f3e45359ffc513570b65b96adc4f","74311d10f4bece01b5ae65a6affe5c931463aa1b73a3320eeb41bbb7bb1ff62"],["e0acd9d2d907031b319b80121dc90699d003d220ea785d50e5033cdb3b1a03","3911ba78d6e507485d6374b0f7d2e6198f6462a7d6d3cf046404a07af690357"],["3c57918ca254c0cb7dac251ef4e10c7d82327969552eae15d26c4c52660922a","5fd5f5ff3f14e671548074114c72c48409df8a2e71fc8aa3c8acb506e2a88df"],["222ad8b61e219ba2b581f606b7c996516850a46a3db72fe1f72b5a9be6c324c","72015a5e2db648112abd284fd867b59fc5606645177d26cf6e9a655c9912d42"],["3c86d5d774bc614469768ad38f7be9a53e9a233942c5c553b82e49aae684764","480febea8229e130dedffff89c11f3c43e11724e6bd89d5566d78752859d41c"],["adb73bb8352d0c10175df371f7868ef2c9e0c79ac788430c480c0f7d85c187","60b564785248111502e6f39c4994d6293fac22bc25f4d764b2fb1957d3c9bd8"],["3836ab8b46cf4f453a22532c886940b982029b29c42adca90ded5bf77e6bcb9","7b15e91d6355f147b171a90b064a9d8b2d7bf3699bbf4987664c61c950d8996"],["12ed96af1a97c45ec31f1531e96f6fb28a03ba52ab8484545fbe0dddc97bb32","6d1f522b6c6cad0940cff8e23decc72bb8d4164696af031415508b025aa8be1"],["27382994ae5878223ef802e9b4882f481a1b4008f1eec8484483471f7aa742b","c31750d242b3975b0026a0e86ccdd17d0f680a8c6f53f197fc25eb1f777917"],["431677eba3715455bc235557518a74f3b111a88844ef13e159ad44bc16de3e6","30000e1eb6a17d9df776981e65c6e500fded1ac12003adc9446b269812c9197"],["4b563e6f42589671579eabfa2cda5502b361c46a5ac8d45c8ed44741a925b33","627bdb41678443fdd1aa607709e9699b652308615f4bea760a3b79ee0d9ab5c"],["2932fd3f81fc973ca9def6b7f1bb50f980fe589187cfe9e9f52ba4d356cf2c8","1e6bfd00fa976c4770263a227048214c38850fe0f059e7b3d2c7871ef07d68f"],["e44e4f3d96d9dec775b996be57e57fdc28e7c68023109b221c414a244a0dbc","58b1e52fa274812e5184e00e9ad812bec2463140adfb4bea3b2d665867dcc9"],["7fcb89be1f4bec745887bb891e53fefd665c53d00a9e74de16b8a7e1f7adfb5","74af0b06633f779897e199609c71cc5649bbb65bc2c0abd4c678f0480c198d1"],["62a381ffb904ea3ff4d451d4c8459457cdbc3dc2fd2da646a95d8c1e90c0b7b","1ba058658e09db9e319fa73de8ab4a992b71e4efc22c273725bdcab84e2a315"],["1b0fbb7a84c67e668450a54449c7a46261a2d355589f8b84ebfbaf9a77ee938","44f8fffa33dd33a6146c35d196595e22cc4a215f61ee9197cd751400970a1b"],["78fe920bd96a356d4d95ee34adafe8fecf071d3107c36f047b4024ddc4b3eea","6162f29607fdbec10181fbac6e57d5cb41b922c5791fb24bd28bcdd75d16c41"],["5629b849e026e65d119ac11821d7ab7efd9c52226f75c7427505d6818bb0c8d","1539c0f90970ee8b490e45bbe5568170e5708521a0e59f976be680595906feb"],["62bc853f349bac8c6e5921d27ba85dbd9ba20a375d70a7bc008928f3e123b04","6acfeb1de05ba43c3ef1a9110a983a320e77b3ca294abbc04aeca19b194f26f"],["4cf4bed663464418285cbae359b5d84ec76b5997d24f3640984c7663421190f","941f818e3e3e8fb1568da85217d17f9250ebc948379014d900a7b1a848494"],["52ff3d9ffe9a302f6dfaaf74bab57c08027d5cb699a69b30830540c0a2d47a1","987dd8876873778d933fbfed37aab2f7d6f669c37024f926b1edcb2ca55782"],["1109ee32f0bc53de6bfa457060b366e909d7c18061ec9845f46ac715496897f","38f36f172bdfd454b9285f86e6bdece8fdffc95182c7d801b03c671cc55139b"],["4b4482f1d84efe23dadf3bb10df3dcaa251312dcdd604f616f1eb540e1f3232","7c9c149dcae9135f940fb54482f9c3cd8193721643a6e23157b8020410d439c"],["69cb459b9e415b7581ca163611c470d875971d5d7949de732d1f0f200544a73","a7136fa9dd00c0469863b7def3f83a5611ed628810d7e807e7a873da5a9897"],["b66a4e32ac9a4baa8f64780acd94ed3628b2b0ea874ba4dece629af65f9e62","24328ba9996a24389658e3467b8b90dc3927ef8419fe28b3f55b1c1aaa51915"],["5ecc3080062dd451236de0e4eb91c5c75100733364bc5469f5fa76f79021ecb","6da4abb9031a27b5be94529324fad8026e7d871570780081b0f424d4fe543c9"],["1e3146f00880bb22486d5bc73e54367d54251f4002bcf342d0393b05a4b9ce0","23b6fb8e945d3205f633ba724202db5a99305f807137edf942cd60eef867699"],["2e1da8013285598b899f026c6974185db12c97b4c63509769d3d4ad1d18a4e5","1e7e7b668674d1593c39d58bc7bccbf568208732b3519bc2cdf93db34366862"],["d26c3f389d81709506f184b53871497c8d36c5c9eee8e3737358204c1acba3","34649c3d39f3b825947fedbca215ae30c5a5995e93b1c8efca4944cf85a082a"],["91300478a83595d548f32f259033291fc7d083953b0b8bde88c7559660c563","e5d2bff57fc6551e9b80c06ac7314a71907cdcc66ce82f2cce721a670df10a"],["1f7abcb9d462c63ffe92aa56619ae8590089cca4d93ee3e5f34a63882452cc7","7e9f85c7b7ca6e9a4f3a026d1048adbeef69ea9d876c6f647c257b879a81bdd"],["4d2caa1323012e4c83b0ad387308b8aef5637bc35ddd882e7f5e41cf2ca410f","47150e808c81a540b6f8864e9d6636589cacaa516f82caaa96506edfbd6f0e"],["3c10a6083c38351deb3e6d1b386827d0acf48979b66b95249eb8700ec26b069","47e34bfe561d903cffdd1d849b85aa3cbd31cb4a9bbd8cc2e5fd2f95016cabc"],["758bd54868eec045d0b4d3d2bc415d24bce13fee47cefdfda46425c109b657","3392a7c66ea3bd7b044680bbe9f78ae86752097404c067e9d2572f55330df83"],["19e718e0ca1d2d6fadbc6006ee7dda7a385430e29f5e239cdd4bb7c3fdcb2f8","5c68249b7fe03ea2e13481a63b6cd4bf74ce42009a89fee0b3f8f968b3ec709"],["28077f57ea62401806367e6d54fe45d02de5b072db787ffdcc3854e12a3e855","14f3762689072f5fb41d03e94b01808c739f6d42b7b785b0e464100b150efd2"],["3b8a8cefd017363ce867265af3293cec081fa589fe561830f0078778cbd338f","69ccf2383cb7b4f9c806d72535812483e7c5e9a1a5928529d64ca7e085e758d"],["77878f388d22161a2953e5aca6bac1ea480e102f329574b4b201640d44a296b","7eb35706a90a03aff7c2fecca72659136547cee98038746db5aba16fd7178df"],["97332e6da70961f2ef31b7b628f1018d21db8db015922a301fca7d6fc6a8e6","2e37b06f639fc7a82601b744570a2619e543cbfaf60e474107fcaf4686d3223"],["a81518d452d3aac48bf0386c3ff170ef4e684a4def242c964e129c64f4d647","37506e44c85908ec7b7adda9547fbdcc2e3605151fefa77fbf127ce3bc938f2"],["e80336b2220b1d666074f6b0dac85353d0e4c2e8bd0f37055a2236a6a9fadc","1cae76d73eda7a5964c5d9d3ad6748aff51f5543c56441d2fdb7b444a39846a"],["2c01fd8430ecb44e066f352c4f697fc9fda177dbe162f82862d7b9ea8c918de","6e1dfa99640fdf5b30603d34c7c97c1aa6e6b7f3a2c52a21fc64b0fcac7d591"],["744e37b511cd0ddcfe15f3581947014c159de81ed055d15a13c7a2d1fa39f0f","685caa8ff6979a6c63640ac638a3f9c75737f2031bd55322a47384357af164d"],["40e627ff84e1a7a9068b4368770f5956128a4d9e9e33e9cf5e24d9a242149fd","2465bd6cb20bbdf810e2bc5c3c458cecf4f3aa163a7ac99c2579e5f33417f2e"],["5f635af7f554a17bceb6ccb6e637abf89ab6dadd399189b0a0390e87b1896bc","2aa6238a69f89665646c0e3ca2ba5f709cc6e14351cf71e1b00ec45201417a2"],["5edad3063c9fa8305978d7e6a4e037c9fa519b8023c7608dfc3b66e5c1e8985","49f405d07d7d01919da51159ecdad1031a5ac208c026fdfc14d38f633d92183"],["2fdf2e8a45858c12926a1f25a62255fb2d02d0149a15ef669f859806683e649","61cfb686bb31e2524470d4ad2ae09e3cc91b16305a21d748098feb1d8ce3b3d"],["ecdbd7c37f1dffa3943977278da3bb429afdf948b4ea6cdebace3d3be82381","190b67fb34f7f3ad6afd3d6b6427aa327547d8ac0fb4deeb0feeba1f63d6c60"],["233021b483f578dfa5222f8cccba5766ceee0ac65f6d4a3b1673b302a21fb3c","7d4b6d44d175d4b593f06f5a6dcba2cdbc4eaa2097abaf613123546866cf4ef"],["42db4e953c2a7a743de9fe20c5798f2247f51db4eabc6f40e86c13909a310ce","12c1a0764a0b9f3666e431923ce15e7fcd0ded5ab153f0b48d362cca1604e65"],["30d539e2b545fb957e40e2255f6463b52d227c9808472cee6a3d521aa283a44","5f9eccf747fe6313570f99e845db32b40070acee9ce9e34da7f3c29ca53a07a"],["4bd64e5ade3e2733580a6116b4af328751198e7128f9acfe3a3496b545efb5a","4d584768900dabfc0dbaa086632b8051bb3905ef79b84d96c01514441d0cc93"],["62d6e771f02e591557197d13c3e77dfa2d1794ac1808407bd8227c4be31b466","5c6f5607c1808e899ba36a425911fa8566b7ea9cc80de8a80538c0fceb837c0"],["5ce406218cb2852b1d2fe1836b19462f664631785216e87ffbce26030e2101f","5225f107743c255ab50e7be4a090fe39478d1ef4ff558468559d8cfa87bb94"],["670286486e8dda3dc66b0ed3149be7697d3e06c8279844079daa7e42d5af728","26becabe7430380c56e320f5ae3329569cae7b0af06fd5327ee23979d200eb0"],["3ef448df33a4394c43e93e5850cd0c5a6dcb18ae1cd865d00fe8ede9336a9f5","56711f6ab7e0e4f7365ac34e284ac2879f40208c46f6febcc1dcf7146ecf015"],["4b63fc130288e92f2d6ba238caa7a6364804e29829ac037c57df32fbf762bc3","1eb8c80af55278b4113286c038fff2bfad2da62763bb03426506b869139da0e"],["4e7e998557b29a95f805a6e2e26efc1e970108272d4755738c04f28572295c0","97cfcc2f447bde61bde71049d8200a74a3028b21703bc139143d81a3623f09"],["574b67898f02964c408f68e9470e7b615be037e40b824e6617f89cb56c21219","49392d5f8e6740a1b0b7444f56d7a17363f8656c6e4c628678c86223f2e46c8"],["7e8cb50ea5d5c1b09e219e7305bcb601d99b6d7185b1c388aa8e36fe1e56554","47fefa308645455c12ccb5817da338f0c4f423b341aff4a9d158891a4fd69ba"],["67266dea9e71b4ed2bf24a597a823dd048cf31e725db511edceac72998c9ef6","39babd65850befde1f7c28e41dbdbb4caf82bbcf3bcb5b33161f1c2960b2d8"],["63e99c2cb9c74eb9227d48065e27abb8f606df8fc83b2c44e4ea38b046bad2b","60494a53dd13ecf34e08079d343c88fb655d6d810785af81f08d5aa9bcdcf9"],["3cf0600b0f5a2a4eb78c487cd385350e8c7848e3f6983231881d7f1bbe28543","56dee4288528de609976ef6b903b652127c37b0590e91a2fdbebc3f11df2628"],["758f09245fa4b8b23d290ee2b3bfcede199b4fdb11f3cf2502a8ceedd61b129","622d9baadfde781e985d9722e0a04715666769a4cc7a9bea0b96d6386be1746"],["38e1a45b81492aa95d7abea2b08b8c14dc0b8a41108b036871fb737910ae18c","145c611262656385e5ed6243568cd3f9f59dbfed7a01ba11e22bb8bb272e08e"],["206e54ca53a2f155bd4fc45bf2edb77798ae6623defd4cf22f2dd4a7d119dad","6c94e7f0825ad81680e4cdbcaaaf4df806d57a0d1fb2331926c3fe2b79d22e8"],["56e98d2862893caebf66180e84badf19ffc8b53041eaaa313ae7286a8fac3d","526306f9c01afd6e0c1198ea5de17630f5a39c4ecd02d8e6f0d613c355995c6"],["4fa56f376c83db33f9dab2656558f3399099ec1de5e3018b7a6932dba8aa378","3fa0984c931c9e38113e0c0e47e4401562761f92a7a23b45168f4e80ff5b54d"],["450cfaadfecdb8a2fbd4b95c44cb1db723ee5ac9677c9c188b3d7c8eff4ca58","1a552bdfc0c81be734f1f6ca9a6dd3ab4daa61c11fb53ebb7046eee25d617c7"],["6fe20e5c8a8004e33eafc84d16ef770f2f0b7bace19adaaa150f987d295a34d","28a35040a2ebe9a14a162d3208d5eabc6e2f3a8310f926bd80be65aa71775e2"],["1bd65f45a35bf62ae8f9ffcbd7de2976b90518b6820c219f039c50043bb1edf","fb5f0f8659f9b6ed7cb0ddd7999506d0c20b26bbe69d1915a31842cfac41eb"],["4ba4cc166be8dec764910f75b45f74b40c690c74709e90f3aa372f0bd2d6997","40301cf5c1751f4b971e46c4ede85fcac5c59a5ce5ae7c48151f27b24b219c"],["21cfbc678f5a279ebb6ed124273c8df37eaf12a2d04180403ae6b5ec0b1e1ef","4478ed6a346d899ad7b0b10350270aad39ddd5b68529297e4c91a54357f0a7f"],["350bfefbe3d864eaadac9cc1195c14159bb736be743aed7380d2384cadd2046","5e2a4b3ad0e1d7b9b8ef72b10d68a80e5ee691d7db591fcfbaad6240d41da8b"],["529acd569127f73c8d34345f87e96cebfb48ee12a00a3861cda209337ed94e6","3120671a89b705e5bfd99b0e7fd2118b4914a3ac309b3d74527cacb5ad7491"],["55d3d7956a97d10e65a4d8ffeba40deaf0db0b57f8e022cdb3df6df613f5c6d","159e59a6f92f48fcf85aa96c1a03749a4c4e2cf9e2bc94dd36796daebd9b8b9"],["405f019ee8f2e972a005c549b0884b5051f63d1e78480b73208dc07d8c65a1f","4301a3d0c285ad309ff24a12c100ead7f48ba1368143712f32ac141ab4d9e8d"],["376d59b298d982f02dccad0edd5bbd4e5e8fad7898750675ed0856850a7babe","5233b12bbc50564eb61cc098a17d3d97f06ec7a230380e4c5d3b725cc318eba"],["2f55624af6109ef04b2ed035a44a904ace8627f55889f011f768aabf4de9a38","7f64209ce7dfb63337ccf3d8c14f4093295f86996cabfee23b1655549aca089"],["3b8965e942bed2714bc2e685fb103496e1e3595ac6a343d6df45fb5ef6979ed","5b7cac7a165cb69ae103dd9052fb39c00ed0aad47989005aee53972d82d45b5"],["7abfe3accdec1eae1a50049efdd9a8eb7c2921a08e8bf1fe606e9d5a4039ec4","3af178e7e831f8148244d2d2b284a32991852db6212ad0a9d77540ef648a5fe"],["4983196df6ad7d6f0a8d76f86af3863ad8611374a03fc0fd00793181dbde9d","204c1f91b70f975a21d24a8face664e496f00f602daaafa69a3b56098a4cf89"],["79e2b91c1531a3b16dbd53e72d94e16bf265cbec261658151acfaea3718ea72","3d9bdb47e8b148c1c5e9e694ffbc2cf71aac74ae1a85e8d8c3f77e580f962eb"],["297efceec61b3be17565843cae465c52524b4ecd9331a4170f54f7de8c4556c","6ccef1733624cc8b973ac63dd54e7a53604929affe81c3439525ae5ed6af993"],["44f04b1966264a23ccdc870c8563ad2efcd4c8087b5469b90e792287a5581c7","1c417f0e9829fa3d3cbb7c3cf4dc7aac04c5bf66ff3f86b833a42c533aed1fc"],["6ff83f5d8b51db3be0bda80eed2e2adb7037f2f58f705e88f0f98197431ac26","64f59b8428894c2b7afd740866065ded42e716c7d48accd3f117f22768ed9fd"],["14aa8187c9559f77cd1cf96b2dfc949182529936f2b0b4050ea56e134073b24","5f36508c68b1dc586f3fd3f4e2bd29c6d8258491b8a6aa19ede811ce0d3d0a1"],["95e8882a68c5000d1c2be7c0b43e7f2a6f8de906485241f0285a5c73a27a83","1e4cb67207ab73bc1e5d19fa2146fde6d03021393b77a55df4ddda1fd28f5b1"],["2ae0704dacb3da47d564514b4c3543505b403ba09a248c6e74593cba1867ff5","5a4b5818088dc9ef4066b90a8893ae80fc89584f987ec1928ef9d72cea2bd67"],["61a10898a76fb99989e51c0e823cb60b95ec7ccccb917c42b2b28014f5fd94d","23d8ec1de45366d3b86c64c2da05a2ce3d171adf52ca5522e652ffd0eeee795"],["79884133c879cf07734976fd64de220c5a972e04c2a3afb74c362d6c3beecbf","2aaa0e6d4891b792b5643fdf09873343cd0e3fbba3cbd0601b481a4083f32b6"],["45f73d2fa82be6c5ccd0f62d2237efe8727c479967d27cce28e42b9a44bad5b","2fa4932215f72d56d8be5205c5851c9b3e5f2a14468e4a7acace5437c6b27dd"],["37f53f771850f52f9c8f87b53c6bf0c93c2bed76f5fd1d5697356d0b2325007","50f1a052b79b446fbc7b93ffa1a4515f6c3be3a76a2b0bc5eb8ff327549960c"],["71bd6d23e0d2f312d47582efa609101f15b9ccc571fca8ac4fe3457c67fbc9b","3b3fdf86bd4c7fc26d60540a6439b4d179dcbf7b91efb0ddc60dfbff9a148c6"],["78219ba049438385b829c13a4993874a4a326c4143de0dd581c7b9956f99b06","5505f1268dcdd4ee01b77abac3bfdcbf3f0513ab097c69ff777b4a631aaf256"],["b81e924a86536dcf68bc5a2ca2065a61103ba6c9eb0ae4cf8cce9dbe286f15","653a6dfb51acfe8a844fb8362795e5549d424aed88d3a090366a44f840b5b83"],["441c0d7b7aa705046dc0e07ba5f33a7d9df23f694a05192ff8c2d7be2aa3fdc","4c06568c0902bb99d428bfa0a946ed0f0ca0a51fbf07cad88e06e9c78e38a59"],["2569c8c78b6d6b92533f29f767c95720d377fa63ad5a3b9827ee0a74b0488aa","4b59c81d3cfe08834f946d9d57614f5366e0bcd9349475aaaebe01341196fe0"],["3f2fa285a0471647b214eac652bbad9d58a9f2dd2e812aff0210d0d8a6eb32f","4cdb18e1c2848c2b52c1a6557165bd1a8f55c2f7562f5cc0b326f73c25b696c"],["5bb5141ab4fcc5290ae9151b8045a2cd8391547ce7b3b33cbbb10f8fb538092","5a36bfd52acc6a83a9913b937ec086cc27fed030b5fa70dbc5d3c12c9515f56"],["3f3fed272edf91aa7f8ca5d70005d390fbc67830ffc69c5fa3ae17582d2771","459057e0883c44d8776fa217405f443e5954f08c4a5db68e437becaa664a999"],["5237ca6656237a717a739a4509f70db1b9dedbb6cd232f60c9bd8c4563a6b1f","56c7799dd02896dbe7d69dd8bb9718270549592099569d107b7b49c34bf5a49"],["1cf6b8499ac881e0b2fc7def9bc1a28937033b2fc52de99e75909a620c7a281","5769cf4f735366fa386b6858043dc99a100f86fbc77b16d57d77766197ba27a"],["1b74b8a6b86dbf9638cdb0601e1a332b8d880753423d38c3394902c57f15e40","6bb2dc10d2ecbb913219d0ebdc8d3337d644ed8b6c4e70637ef4c7e50887488"],["61e4da415661bba52a4737e2bcde1a837787c4796b2e1854778534f1582c29b","27c43e632cb7652e8508c9c38e3b4ad0d3dd6ba748d42dc84ec2685e64b9aad"],["7c460a204d23f20ce86596dae6ac9b36734e4a9f7c5b43262c97a36c6a41c6e","481a11f9300ab4c4bf6924c5ca884728cc361247377065920966785d043fbbf"],["124ff5e55e4effa40daa5b9618d75c49c8b6fad95cbe8c0bfdd83cb9bed8316","33a2ea15d0f71f58a00de71acd7f22ccf9002115e49dd1f7631faa0d32f9987"],["61c9f8fc86715e95ff43583a865c5a6515f93381839d557ef884a68637eaf4c","5877daaa42bbab9083b571e12648a9d62ced4470d71653092b6546f4a5acceb"],["70a6b9a9e5d1fcc07dd9ebef6d8f5fcf04c6cb34932d0fe2335330ac6dc8d3d","3f0cbd332ac56922e886656bee74f6e9bb4bb88f7af7bba9098678af1f38fc"],["41db8a0f1ea78443a39e08a54323743c8897eed1ddc28f41aec6f2655040d9f","7d4bf32f8f4719c2e4af8b7889f3b65cfdd033dc2f971798a12170f2b26efce"],["62f035e01acdfe841104942d6c8c07f0fbd618cb85998ea24bcc24cfac1f8","1caa886104b7d753fda93645a746989794cd825c62473b526ea34b3d51b5771"],["441c6f016d270e86c19843727b83b864cec060cafc813b23d7e41e5abb1a60a","29fece4e40400f3acae0586f4fc8ed535e805e472123ec38d662d8a0b01c086"],["2c791ba0fb0b66177815c98191fa6188dba9c795e34a7c3c8a19086215e3cee","11123151389d4b330db6a665a560407e7cd8c3807c749e2b0cffd9c3074ba77"],["5292da4ca71ae75ed0554c267747e39c7a129b3b863e1af3ebb3e368439c4ea","63af6a5016deea8cc674c44f16c63c1db31f09af4fb4d2ea7917c28116661fc"],["3367388d5d1b7758dc3d92e244f227bb8a54e3d9909e7b7dd62ab5965e3efc7","7ffb4833071e4b03ea755ccb9938487a478248fe9b1158a08f1ac298801c092"],["95c863314b7f18090f8eee602403be823a367a1b416d54c32e5f914e67d922","159c2824f899171deee23e0ed520d4825bd667983df0a8d45d3a1f7156d91f9"],["621c6e08b3c57404644ad49ac7629832c141273fa1f323781b3395393fe985c","65d1eb0140652958c4371ebec791e03317d6b2e689d90e304666f1b610783dd"],["54313129bf13993952cd2b31ed06013aba85e74c1b8a00e062031f32188a84e","680129efc9eb8ec07fc180e8f6877e5f0f9f44e3000a2c586ed4ce49d12a313"],["21ea57a1c8286bb45872e78617853c47b89091670ba51c124afa3362e7260d","7087e5c1536df233ec9bfe2f983e8d7622892b9bf64c450c9823898e2cc2fc8"],["3793b05b99e7a57d88db4ed0dbc3b771285abcd9052da50f88595354409f3f3","12164105041c056f127e737c7cd63981e05f246bd2b6b65d1f427019c7c3801"],["befd345cef5fcae22ac37dacd6b9128cc58cbba3e3fd774e11b421c2ba392","6209d25f24f88f7876ca604db23d05f78e6b3b67fb033f2f1bee221f352b8c8"],["15fa536045fda4c65ff74f10b4e669ce88b9996c6772288289d3ad725987fa6","30e0c2124a35e265e931ccc66ce5ac3697d982814beb407144ff6762cb691df"],["38b795bd77ac573576dc204857a488cac2cce19809882631ca2069598c577c8","786ba555d55ebef688b068bb9186a34a08cb00bdfef51619bbf911890ae9a13"],["6c66853592196c3eb8d9526dc155205e2c64097adf8684bb0e15eb460ce1c72","1bb4ebf654f4250c8dd1061a4e1b464b31a8a9999ac9960446ef8108a66871a"],["5b08dfbc87ad9c00b88e78816973ad2f9c10c70f2156908892cc7b7a2a1fd30","1151f407a77e2556073173d8f5c9ff561d8a23742121ca15f7d0ac391af50ea"],["309190eba106aa6ead54b5ca5817969aa68b4b4c627700799a49fc6bdd32ba1","505b6a2bc7b0d78ca6ce2abe7dfb7312369918a4599cccf8a615f6701cfd851"],["89cc205966af08acc8910d563af7443d5dfbb5d88dae79c013c678c65dcecc","1f8cf955694b246a423ac725791231257b88936e00347ecaa1e17045c0ab540"],["480086b61a80c36cf1e1a350baf554e58ee8d9333186b70c9c512fb9e9d5a84","511edfe58f8d36a6170df743731da1ff525cfd5108be20e30ac4183d1281570"],["3caf14fb1d2e90a13ad4eb091250fe37133aabf6029633e905e5a93ead41dbb","49122aff6059dfda19e4b973aba5ebe3804c91728936c6381c1ed1ea9380920"],["66d1b8fb2cabc46cd79741ce1cb7326077ad8ea3227a6427244bdd3806bdadd","4a52eb74f4d5371ba3265dffd61c844f9e68d4ff0b44dc4936182f9280bb66b"],["373330c5afd53c31257fcc9050fef873e15ea9f81d9810f30744309b04e02b3","5889806607b3dc97a9c5b0c8a2f16d1792099a22866b879ca480cb89a11ef5c"],["26840d0ec69a22c6818ff64b8b14633b531508c866e21d1dc9239778ae9e8c7","157971f9a6e3a24d3b307be0e7c8cd352e2eb5cad33cf276270c0f309ee63fc"],["ebb84848f1c38c19a754d1b5d9460e39624dadbb30800987c9419c0f933b9f","517b297cf32f4064e6d6c8e761ba8db89809604a701c7b3aa1a9c6beb370ea7"],["25780380bc0795ed0dca727c55240f1d63593e552d224adb40df2d3721c0f66","10215fb5a893e0275e9f1f66b217dde35addee91ed0e8f7d79531a2ff57b8c8"],["243e1581cd1abfbf18c31c19a4c3d1cedfe69a40bb57b607c9af2717eefc742","1296c27929f14535718c3a4ebe045f00afdc60afc74c7d398d8ce1b6609dc0f"],["48babb8649e054bc8e0b902c89e6940c265f48464520649502ef1064eb94562","3235be7852b0526d1a16f6969ec0e5b0e09cedaadc65863dea4e47f4f398264"],["592db7c27e63489ef4bcef2eafce89f40067cd9a1ba48bc3dc76b5fc62ad9ca","48b7711b570cd9ac65910e75e752f4b751fdbfb4091a28f59b8c046d3d9f8bc"],["31d133456222586ae42a9ec7ce8539ee04afbe0b2ed00a2564dab0798d9b55d","a77c52fa1fd718db5c83e7fda6d7d4d9aafef9ad95cad621470f2b753729e5"],["4651668379883521e7983aafcb93811b4a72ef2975b3277773746708ef3e3fc","512507f3f544d80ba5d47f73b571881e8d70d7b1d305b9704bdad036b7abc47"],["26069e359b2e847affaef604f772f36224608b7642245d0e643889ed231bddc","75ae1ec379f074ebc91270077c74b4d34347ce183b676b4dbe100bfff143b9e"],["3196d01d1fa11dc3803b4813c4bbc6326869f61410f2bd14bc0f570d875aebe","20313217cac79875bd2a503db1e86d1e5559911667a02524759344468d9561d"],["483256607f75f06fb126addc60cadddd602154cc4782bcc08351a48745d0b97","2950a7e500ebbe9775f08be37cc2e62ccf9030de18948d1bab07a4a9173f75d"],["65f07b6050a2fc6eebe2c29ffa62f764060f7f9d3c82d2cb5e4e368aaa442c9","562c9654b646cb84a213b41de203c871b3eae0a05c9c105a66a53c319c06373"],["284870f6181c43f3b01d94baa9c5b6ada0deb861145523ad9169580eb7bed35","5e03e6c40c1cfa3cafb01fd0622349871832a9d35499d06408a83edc1b76d02"],["32229810a52137f0e6c3d37595c46f6132822d4b05f42674b48d7a7ac3ad85","7babde959a0cf2c53ee59fc52c77c3adf899453f077f441965629f9aead30cd"],["1ea8b98a6b85e74e0a2fbc18b206e290f3ed94ce99ca665e8e2351dfade990a","478e93c4724115fb1648c8d5347422adbc1a0bbf962b2312e14aec80e1be742"],["270cbaa08c79140c85b864475a0bf569cc03ac785e57f543dc444f37ce746cf","3a9b8d894016680ae9d1bf3deb931d8987d4d8d8bfed45b81ccc595ec79046b"],["6943922708b8ae5b40dd7031ef2e487abc4ac39a3591368285e83d6c9c51f4d","5f157c37d09634e8cbfbef90ea50af59815d011e419a691c67ca3402b5efc33"],["48ac6a80979fab4912cf0cb557d917a0bd68825d8658ec100496eaae6ff62e1","2b6931350ab183402e39476340eb1177b7006f7a552915581e29a79bd7203a0"],["e3adf9517d92ef22d1e2a787740a292ba32d5ca69faa9e8675f63ed816dce5","36bccf69bb12dadd610145a3399213248d193660d8dc90a2e206f23bf2c7997"],["5e6c8ae5afb2fa470f767581f3d578cf6a49547e4b78665edfd45776948bef8","6cbfc11953dd7e195d2ce74e52a60df524767b44c4608bdd755be4bc85eb74c"],["15a576a1242d39300f0db3ad770983825988da0457718ecd596c63a0a0eb4a6","69a42e5f6f5a63349b57683a4609bba90f556a1680fa1ec3b02ee7d3211f903"],["274cd14e4fbf2ed07402e8ad8075b320c5f76b7ea45ea36af523e95ed63ab50","6ca640f9557c5f2d8b27f6ce95b108880ff4e4816b26b70b6506114389ce656"],["4d8284e132e2fe81c5f71be1e3c79ab51b229e2c56c323e207cda179999d123","116cfc00e9fbee1cf16af6282123cdf20eed13021c2037ef4c86f94eb6e6cba"],["4056194fb5643e97991942ef5b63cadd89080bf57a01489c4398aca03f0980a","2e2cddb434fa6f6da7859c3d518f0ced8795eea043a6c9613fb3e020103339f"],["5d119d5c5ce532afc0875e0ee9b026d878c8773d34237f90a0d0670da6f01b3","4a79fc025ce076b6a4742fbcc8cad313d0a8220c58024a41a5a674c0947e64b"],["11800ce4061d99b9d53fd4138802335258f7798c5a935c9979f5a949ce1d483","36745a4741a5c7290eaa8f2a3f9ec955ccb7ca323272e5d35d35c2a724ffac8"],["4302525bceb97fa642fd5560a4a39fba3d2c06f68e6aff3332ff1854439ebb3","e31edfd081ce82f8177b2d7d96e69851d09e908c2517114ffb37ee12c0ac64"],["2f5fcbb96f0a66fd3bdfbcc78bda361cb812570f50e7c476533d56eee01c0e3","527428a34855b5695c479d8fb7e831a299f7897f36682a74169cc60d160df2d"],["52167df045ad0dc999b98de3d035aced9da4434211149b8cf4bf20e774580cf","19051d2a1ad3fab190c5dfaf45188b49b4e90cca22aae54f0a785562d3d3f41"],["541b5332491dbdb2b6f6bccceb7634970c046963891fae936dd950f4432b961","78fa54da996a51e3a9c06091d58c2405a806649da2bb1f323807c4eec50eda2"],["5f11e973da659b7738f87ca5bd4f3bd02207dd3c8d978f0d3e83fe81030febd","137aba7027069f62d25caed416e13537687bb1428e71e5f0a0c52d52f2e65bc"],["15ec941ee6c2110b819b5541be52981c09d83484c9dc735c43f39f5778718b4","4561826142dc5b56acfcf605a78a4090472bb61235bcd605a765e05d0a7e549"],["68ba398736d659522f484406110b43c68158bf4992094acf797a38979c587a4","7c1d9e1702e28afddf22fed7a7a79df4315c174d0c6c4f4c75bc77d9b56777f"],["67889cea31c81a429fbae643a4fce0ecd690a5c32b99397e39ed6d7a08702df","7ea277c80b671146c9e455b98f42f45b941ac95ca2d15c8fa9ea82ee9b45e01"],["596f2c68390ac26505d3c2eca5c77d46f8f3acbed192a2649d8c525a58d2334","49f3bd8c62c610d5c19c52d970bde24b270c4ff7ae900453b909e72483974a0"],["567779fb8b0afe592cea284629e3621ccfae3c4d7d3dc559c9fed750591a395","6010bdc33f1cdb374facefff537e7910b72a1120502f312a7ce41df0d552ddd"],["cebed0233e810aa6a29a8b0829d28f1c92f303d14dd73d6b12da98117dfc7","4bdd51e1192a00df23aa8d0673e4915877ca41ddb8c9eaf21d39dd167fde7b7"],["4c7085f066adeb6781596771972b188177e63f2e2b3788d03e033cdd5af1f06","2929ee89f525862b0cedb3ab9b5166e1680cb77fb4668f10a6a3d76b5434566"],["760e341bd836899c226176f47685f69438270c150c6fe7744cd723cd1e72359","1bf09f2f1aac1a10ce8bdf20d5d178db747f01a4aa0aa8a5e4bfeef562cd94e"],["6016b94c00b54920027ef64902c61478244b1936337d2ad41d9a8d43dd6a4b2","3bf3dd9bce7f6d6f120de87fcbce6219340b59c2c1d75ee0d45105d33aab1cd"],["4929e44ff692eb944d1045bee96e750219cda3bda0500029f0df49a1db30b5b","2e138dcbd092242699004b4ce98764ffe4e892841f56830af298581cd1e523f"],["5972d0e526311bacb70a04e88969b6c63c7399b578f0dc28bbd00d65ef01da7","76b22bca9ac12d26530e7b0757e646beb3bbc5680d0f3f82fb8ee57ed4b5e39"],["2ca0a42a26e26934ca2d48db960b4719113d87c5e57fb437d557c5eb4e03ac7","62778c02561d4ec5d83a132afd7763a8349207c6b5d01fba70b56ba660cba2e"],["5137ee53f076e21a2c23da09f63c0d275408c31e4634a6b6373be5cf13e6c00","14fb446c077beb78e04de3282a63bfde12f9af85caaca4ddfab506cee31c0c1"],["7d944853d1627b63f560aeda33acf640d35a4ee4d23a744957a2dae9d5b7c6c","bcb411a210710acbcb9ea12680d89e3e4e652228b6786d3886e95f4d9e6970"],["37d412c2ffb173a728477446b60b2b702d07a5243cb5fc8963e623a5ee75843","672c79968908f92cd0cb0b4c65ba86e8f359b015623a89441e1bf859bba84cb"],["5b37f472aa80398bff12cc74c8ee784c4fc89757292580d3a498bff17e9f114","7d79da1aab9cfef58a5f3d1c9ec466956a45f8d2af0c1da6dd4c93f720fae6e"],["25c09b3f1188c562571536202eb0f5fc4b9a7590417b8ea58b4343685d88a63","3d5b817c73b37e9a1d24ca923351359b42ced2f3cafbcac8c2d6322dc767bb"],["32e60904e73f9756f71e0a918d302aeca17cad4acacc81bab15702ab5ff78f0","bcf4c0204f8275072f98a65b09ac58b87cdc9c70c4edfe99fe18870a3a5459"],["49c35575996c1517d2daed90d2fe4a58e674d6b4aaa7288d0642c8bf59e562f","57eeee00adea4ca80eeabab57852cbf03f1a57e21872cd44221e0550b9193b8"],["10e1776b4c2a867bf1b028c6edec224cc6616c747e272f49e69b67b02a893dd","8d45d62ec8e627b56950f2f7622a0438647f9e9f28e723e4a37cebc039a1b0"],["79a93a75ecbe943acc964fd39ecfc971dc6555b2bc335e7b53f52f4eb16cd36","146132a68ce2ca8b48363612226771ac547eb3cf52b6eb7981718faac08aa3c"],["6b22d32e0590e169504e7f19864fd646d0994e7ed3e578a5b88f6e095913439","68c3b22d859fb85e5c8fa0a8aea932285945b230957e603394333e9ad5acd82"],["71ce5ec8286eb8c93b8481c6d19cf0a288ef4da4397e9c80f65023e516bc097","54470babc742780cd8a05499026e738ccbf81d4170d1731734de68a8e5b402c"],["27beb13a43bc6a1f6ce046da438b0beac5899ff4d57962dcfb6476b563f74b","14074e9e93ee45394dfbe833998b9d1691961f8ba3166224b36404448c61bb3"],["6b1de6c8f161aa6509a1dcacf2c0aa1bcf6ee9d9b40e032a9d72f77a6fa298c","5e9312eb5b59d6cbadd7d3dcbc39f1b5bd9a8346fdcfdf1107bada6f9cc048"],["32670fc3fa43bf39974ba72ea51f0d045d92d084a81fe5282dfc8309aa900b9","518fee521bf1af62356aac3b7e53fdbf57121e030c6e9572b3de69912ca4eb4"],["4b9ca363eabed9c66091a347375f7065cd28f49f914447de7cc1461f1375f1e","3a1a3a2e5e7e72476befe2571ece708052d740d02cbe6fed58740968ae609c4"],["4cc6da42863a3deca62fa218b7a3b50e034eb4bafd393eccba3f4cbe192ef10","20bfa683c884f203713953b26d2821287ecd305fa2cb70570474533fc07f918"],["87705353c44a5ccec8de65cf5433be6b3d9bd21eea49b60e6c907cf1a67a6a","112804b13eee56e3b01aff75fa08fa8374c44fc461aed8a30ad54acd09c24eb"],["6cf6eeeb9d339c0a05f72fd5af73fc7588e6d957100ee8999109437bc126cae","54fa257cea22032eac272fcd034dadf2e00d602ef9e519cf7072023c130aad1"],["19b32925048c5519d929650c833661b452ef7be7963fab0b6b328ab7dd7a28a","1bd0c14a10bf9b88ea61011c0b2e64d07da151c6203800d5a5d12063838a510"],["12a5fc5559428bc3b4eff97b21b63668b866e0722807f1db1f19696bacd9b0d","4c2eb07f0c24047a3d73b560144f3fd32c99d6dbd9fc7cd2fd2a72a6e4b24c7"],["13662b7a7d390aa76eb86a7c3bff6d9913eb28db6bd1a7c42de5cdad2e35ce2","40626aded7f56f82cc431ae30527b096f57fbfbc04d3e12a5abae3edf301cf1"],["255825bd49b8a2cce114360bd9c8fe8c641af64c8e7710107213cfcb006f43d","3619cce4482335232f9e76a1460be9d296f2d468d26e4f95a78c71524fe59cc"],["7f83009eeed4f12f54d341bbf06066480cfcdf51dda103ac54d4bcecf6b3b31","4269519d28faafd7fd68bebfd8404d71ba05d62c4bb6d65d24aa6802fb84ab6"],["2f325650eb316646b4eec903fe44828fcb11054f1bd42ca3a77f7e734110b35","44f976082271016f9048e22c507d97d628722bb431f8d5cc1890524e6c386bf"],["750b166bb6edc0ee80fae39c7c106879036738df2d79fb2294e1c21e9a24d6b","54f8aa297a1afafe2a17a3254f45861167414327e918d17003c6aad01d0b24c"],["3aedb10db9cf3285cdeee375879396fac1fb50dd259e1716f8c01e66f67ca72","7feb9400f621f58c21601f23b7ec7c94a9b6b193c1cd74a8a60846aedadd359"],["4ab7151702de76faa493e7a0b1ac20ee4d10c33b83fec9477547cb1236973eb","63f1f122e3ef3acc46b0915ac69c3f5772879799cad889a817f55f5853d1235"],["1675ead0d20e5bc3a7a7331999a87ac4c916ae29669e54197bb02aa6364520f","4d1122da90d49e491922d9b533a6a668e2f65a2737ebb391ebb29fb7c1f8a9d"],["2f7148111ef53c613157aeec12e16a20f13481da4390b6ce18a85d1d8547087","2eeda779ab395597651d2a0b833ccf53b10280750139916ae2baf4ec57c633d"],["4439c7810e7b2ba772b701ec3acdca0b80c9df23047710b87f7dc3f13b337d3","5029cfe704c602a8a4662af0a5860ec03fb88f046d0e3400f2ce7638014c621"],["2248eec40b5732a6a488b681f093643af7937071bc73118acae295a32b51b05","1577e4aec30a97b648de4d0b19cf8891151b4eb11f8de9c6d7312f091552e19"],["4738424e558d4e0d87a3124ca02ea24f0adc6b7a9768b0d3945ed2a6104857c","33576f92aca3f0c8ae689c3c274c2de6b918940d86a6852e02fc99e35d1614"],["7829edd8b866ebf7baaf604ed13d19a9797578f44bbc51b1cd67ca53803e96b","5559040a6083f2af1f9133ccaf5bc2ce06e56ddfc7dd410e9635c0116b62722"],["7f927b881f2cdc05e1a69e40bb714af47b630d1425f08ab5d574ee698f33d51","26a465288e96572de303203bd38f4a03031e8158da0591cb037c0a5111d1056"],["36a65598552f8753580d1655417d645a140966e10a1e1663015f9fdfae44881","33d5bbfaebf59eae72b89b1aea12ab2ba3c9617f8c3baed1ec16bdf668381b5"],["403becfa545c826782026ff409cc16c9d4fe428f1b5b6e630c92439d2fa5fd","47bd6f2bf5d74f710ecb479c79b01fb774fbdad590e683a415cdedf33f71dc5"],["3a747826d241b877d3d56b16e0b810cf088eda4fd6048da174c9991a942a5eb","2c7ba19b0a3486a2cdb84d4a388d34beb077a0e467ba44590166f93f6a09d2e"],["3d60cd375842714b37bda89dd1f13a7e0f3ff133b522209617d031bce05a537","f77f216451ab01ad5226844d2162a7f32744688bcb4325445539e2ce5cec4"],["235bf66f67c9100e7f0e22bb299cdfaa603644b240e0770aec7e7fd163e2a65","37110b3fa83ece3990afca2bea8d5ebb3c7aace60a0147f8e6ab733e2f2b4d5"],["3b796d4eb69a55471fa86108f787b3604874e92b6887a7667a6c2bfbbd9a42b","4912d6dc0419732ef82cb3278415851d4e2d7ca89e0f4d7128cc9de51b810fe"],["48d53516dd51e49faa7ab46c8c10db1befd10f23c6a9d9bc3640a2f0da44518","73a2fb3d064adadf21aa1362c04affc660598f38a9e069b3afb74d0a99ae9ee"],["48c32cff161ed145da0d5b73084897647abb777adf65738559ceab6939cf3e0","3d99308978e828f857c382df32b472bda81e8ec8e30c8844077ba6d6d2ba903"],["2947ff091a8ec9684affbc9a62e09e598841c4a6dc638088492aa47dea57097","19a2cc97975e547f97a4d02e42f89e6ced6f5a953cfccdec347867d26926541"],["1960d85f30475615f82484eba0bdafb7ea7cac3809f0518a757d66f02b01676","36c8f77baabf0cc8805d993bbe62041fcf4e3239cf9d53278a4fbd91e75eeb7"],["2765f28074d21d5a055340b6d40092d2bbef807e02009fabfa08ec0b9bdf38b","7fb189e0553d5df52b6843661814824b3f3cbebbd54988f042fb256c6bf30b"],["348836cb2aaa00212f4b1a4e2d7fc5417f246bf2fe5c9a16ebabda449e2e08a","3f7276fd7d69e0d55ce5ee1d2d830534a27227fe0b6d8a36c93f9a78b872969"],["7afb9d34b6a42ea8c6d870e4b8191c274201dc1f93a1a2219a2392b7e345a31","42bbc20dc7115e0758b364a110227b16b64ec58fc535ce5ff1a9ad8b8a09fdd"],["2cae0c2afee1767fd4c66f52e1f176d217e92e89cc19eb36d5a6c1715f641a","5335efe2d9bc3667d25ea88bf76438a4d6ab9ba5c512f9da7d0529b79b62d83"],["1cc5fde334707723c3a06f00c106db88664284a2df47bb6b144d9f960aea3e2","dbbf610d100316938bcd8bcd078513512ecb50d4579690dbefaa419c05980d"],["54e90cb8f3a2998d2675c5780679e06c0556b1e618f8fdf07f9a4b2466fbf1e","16248676b6f06ec5e34994bc3115f85c8147b54f34d8500928f2fdc051e2089"],["525c70a2ba0dbdd68d75640f47f13d0d415ea595f7030f533f4625c2a46523b","58292c8675e5e1a438f49e0c05648d9a7aa997f2f1fd77d5de1944afe5d7eea"],["54726d78d099007393348787a03107ab492e59690a46c87fb02ec554f2353bd","53b54b77184ba75a3391e0ebfa6d6974db028f3f8e34bbd5460759a5848dd76"],["4ac81a66903537769d3aac6c483ccc08535cb767b6b5e1ec8017a7393ab70ae","2cb22b77a8a05d26f11a4dec80eff292633aa05553a889c5ab16b6ac6e2ab17"],["21d0175349e21114988a2930b9a607d43245783cb4a0c984ce27f4c4206708","59f1f49342cc5496213d3329bf4ca7fb0044337449c579bf53147a1dac9e67c"],["167f821b381f4c8adcc39789475fb55ba639e5124fe75f26dd61be396dd5e66","22002c87d4cafb47ac9d27286d5cf5ff7a6715d69814118269b0729be9e4b3a"],["31010666c6db83a9f9e4db4c48173afd405783ac53852a6e38a8ff925528843","1f466dc9b5d9094107c741dbf380f9fd98d8549cd50f67169901516f8cce74c"],["1ad3875769a5053388a86edc85dd80fdffbbda6a456aea497ff81a0f1f6707b","2de7cdec5e2bad56a71bd2f33a4ae4c874e1ad4210a6ac32b443cfa34e85b1b"],["c489650fb7f459ce09cd05a456fc5a46b849b38a671298ed645bcdaab168b0","45610d092b8af1c43ceed474cd17f7bbee65120aa6fa4d37f949e7e41f25327"],["394256a5ef4d7af5459587a0bd2edb8acaf5ecfef2563c9a04daf34a4abe4c6","1ebee390dae1403c0c53994e1d064fa64e20fcb45392e209b2b99486a559ffd"],["410a1511fead6151e9bedb089b9832d0fe01fab76d3f8459929f767525aeb27","361f0a5ffe09fcc3ad4eff3f5e89508ac247af80267100b69de3c59df561cfa"],["38cd437c9f659e110a869605c182ee9fdc26de36baf559d9229e258267bb734","624b1128ea7739bf1cbd0e423af92a4884323c868d2ba0ee9d362946edee2d1"],["78b126e50b7042d2a019f95cb87a3213c664ca1bafe345999b1e9e2dac1e608","19e398196b22f4488cbe854c614ad8c353839abc5ab3a4f3f5c03c16ba8a198"],["6d3a5ce91132f385a91823c5c8046c4b638f5fe63357424410d901457cdb867","7b80bae16d2d487e122495174f7a70992bc5dafbed72bf84127ead7c57302bb"],["32d053a904dc4d88fbe7d0b96e0cbeca22a00aa5c79c753d52b0b60abf31602","3af6a02e5cae6d6490354ae51185149e3fdb6d0d9caab90e95ff58aa0c40377"],["49b1fbff5bdb0aa6938b066dde0ed772c0d81f9eff52e7fe038b0ccbd78adb5","1c6e57834eb14d507eed8b36c81ddf92fa91c242467061927a742fafa82b43d"],["2f28b8994ca6f234d9293d26196b43b9d1d5306844348c4a638102c05de85f5","759cfb172eab065d477248b3569f4ff5791055f01e95fe71b94b8e615d73c96"],["3c2ee954ff534f856f59188fa0f29ed8a022aee0cac52d634f6dc58cd514d70","22bd162e74925f0a876bd8a206b8767dfdd7c898576a73a490f138d9a7f99c6"],["5763a7cab001e1aaeabf9ab5b9b2fffe6cc2b299ab04ec4933da74d960e1ab","715ee4f8ee93ab5a1dba00f0a6abc4eec47d49b61254cc27fc36a031e32f0f8"],["19976ad8d7b7f47c785408243a227401996b36e47c7a78a7bc7d4256233ba9a","896b713c5d7777b0703821a73c1d9a4c3755501042120534ff13990975e1f5"],["61674b992c29827186cab5ff454758dbbed8e89bc23d0bd33193afccc3a04bc","38e1020744c13903809ea30a0662fdb5226ae760cdcf10800faabec452e00f8"],["2ea2d48bcb83c0c9cda4efe11f07165cfcbc9ccd26526e5fb12556316d4b1df","1d2d68b74ad384c5c4a9c85453104216357bfcdf635680b40215f0f800974cb"],["7881212050264c40c336ed3a15dd2cd868ec9a558f5b728869eab66e8b8ed54","21aaefcc8ad8a161b8971d6880321781dbd939570c540da4c330922b8c81e9b"],["b6be88ce0461d20f59c5199573cda0170b61decf6e8e69a6d32f1695adc4ed","5536e4808370716f2bb3423a9a49a38ddbfe91faf3b7a35eb53d3519238b6cf"],["e5972af1655eb6dde2e8c77cc58044299922441b5ee41ceaf5cafedc765bcc","550282f37a4783dd60801c237045992d6fbe82a5902e7d837ea25f6f98c7b3a"],["7efc1aad1f580d8f50274f1c114c40056be19a8c96fa8c4cb5bf85e1e7f3e4","2689f1c3898b114d668be6413643ee9f879913d40c262541fd0316264c60a4f"],["7939db98037f59b0113e9d60051f75ac9c3cfd1a3eb535c73e2d945068c6c5c","410914ca8bbf3c65cdf3e9772ca790c19131c50068d34b7346c10260a578a8e"],["225b77ad00a2b83d26690190b74867326eca4f55bfbc3a13be036225ca3b1b5","411faafef89042ce6beb64309fdaff70fa53e9d32d79a21e7f82f80e79ff05e"],["1501e64c99c8b6658b0479f2c05c9142d246eaabfccf2fcec8dc4399539d8e1","3bab1e3339e42c9ee66c65b0b20236fdd9362d3ce786ad3a9779ab578af50a8"],["59b907b941f24fb8ea2458153e55f07534b388e835af7b69f3c9f54392a335","1d5438c4f2f68a417f3d56f916d899a6ffe910f5f2989ca31687f1b10f60db8"],["2887d08a26f484546f360e33abbf7a998b7170a5b30070938b84f072c676bf3","62a78e8d00e5d3a59e2fc424ffa08961567ba1ef24c8531cd7bceee6074a535"],["6e3cc8076b3d45377929033af35aab0c6d19ae4fd47c0daf844079ca04c46eb","7b90f338e4d848aa8f19d0b5c3bca916a2a9024acbf14bddb278bca2aa39e5f"],["34844dacdd3ec54a3af328bb9d67715ab33425e194ac9977ca02ef22e8f7a88","3c1affc6372f32a1634748124f9e1a03c4f0c993971da0dc28888b0801279d"],["436b192e03a49796cf9bc5e93c88268b71c9c24f9c3a85322bba634ebea309d","67a8091ef69d62abcb28ce5df4dc7d53f8dc2b9690344f75ecd03a6d9386044"],["592d25b68baff87a6d7fd41ff0dadbddc1bd1316683de3b2d677501c0eb14e4","27ad1e1099683f54589010faeefb19e38569ace43653be8787a42b0591e7bc5"],["89a5111ae911512ba62e87b97f643c0219702f235c70f62c6678a129302009","557fa3d98e9ce7b83b47545013a4498f3de43787fb66b1a54521222242f7c1b"],["1c9b5e53377e72da5066cb08566bbf9ec31ec1877f455d932cd9b1aa375d34e","72f79555a8bc207863f32d482fca54692825449fd8963fcea3de3a8183a739a"],["574a6e05eb14591729515be239ea8c1fa9e12d4049d42876f76c8ff37bca03","5f99b3af43ca68c1c73e8190d5f73c8de162ba643d7d5f0cd73cfa8135db6d3"],["513fc5c2e16505b2b25a2f284e167d5401194bcac0dc3ecf8b7c9acb560daa1","687ee7a1a8954d08d3856e1a16ded808e419e789736d3f55f79f7693bad69f5"],["53d48bd1205274b1c2b0a0ceb3d21c5fcd7c8892a784931603240b288a598b9","35387abd7ea59c9b956de44d36533cad1f6668c438d666651695ff3862159be"],["213eb1ea99e08825110dd61094eb6e8145119dc1c507636f068730b1e086d44","744f6853f4f02f4f042468d0739e0c9f64df720b87ed77d1979547084ef7a89"],["735ef017d091ca23264ad0aa7bb9b2be3309b4539605e79ed4a652ccb2fbe3c","7f0ccc7a5747c4e921fff97d431169f690763427e2cfd1ad74d7a0308d7faa9"],["3f36babc5a30070b610ed97db44997e6d9115c9c0579ad8f75d295a17130001","79047908a2474e32d5c712a07bf5c4ad522590bb5d6cefda410d30528e12ca8"],["51c04907ae88a5926b242fb2862cb1f2c651a94e6caad5bff8601c079fded74","10a585a269f460aed43f54c7de13cdf623fc8de5957526997278be939ef32ad"],["c1e1bd626a735aa2c065831317217ecce68e377eb1f67e54ce2e97bc2ef2dc","53c5af23a9b482f420be6dfd37b6886154cfd130794098e1f51c1885ac2556a"],["5aff3b30775ae4758e604a4a6262803a545f5ef4e7855fa245ac6a6431a9ece","39a4799e5519047f29333bee9c86c99bfa8056d4aa381c396c4a44331fe795f"],["3d753e9723701a8e9d99b91bb93dee2eda7ffa5072fb2cd5c5fd99aebcdb299","15798bf5c17d6d5880fed1553af32dd8d8baf2888c715a886575448a24c7975"],["6593e5078466b07a4222d2e544da826d2c583c9cc5f2eaea148b129b00d4aa0","11b352b08a0a61d3cd67d1dc08069dec3bde907b3da0f56de5011b956bf8744"],["7a6eb353c5be9ff03fe4a06c01fb71aad2b38144179a291ebcbb2c2417cca65","3de3ecb12f2fa699b46a9d399abf77ca17bebc3e491bfb2542dd0fba991e2bb"],["2c7ead583d6c32162091034a9eddfa775b4e84b8bdbea939edb2a80dcf64f6","461790ce40d9c276d962b2a1e9a74d66e9d7335962e234e8a2fc6963d31722d"],["34285af023d9b4c2c2b88e8704bf2c05a9b553b00b2e70ff05f8c2970cb134f","33fe678e7671760a83836107428dbade68c3593fbe568f3f8f1b2c568099c44"],["6222f720a24466263db6a11842f117fc4bb78da6705f140e48869db3e087441","6eff5b9bf3aeedc962bc5a24b66e7bdad2153450ed53a058bf2c8dbf2907693"],["17c6ec5ea206eb97cbf53851e37ce391080e0d2bf1e5395610f79ab0503f7ce","3adb71ca3523d88ceb1e365f12dfb24895453c14daf0046b2626cddadfdf5f7"],["70859f9771a713e54974ce11cdaf44b0dcc3e9befa0c0834908d877eeaafd27","d18f794bf0cc0623b711e7450030424e52326c45ba9b03341883ae4828a5f8"],["2a820cfd0fd4ab0871e7b303cd545a3086caf8fa818c087a4017197da74efbf","5f992683ff37f6c041b84bfc01503d333ac9763505cc8f69473da01812969d1"],["5b0526de2c07fe7cd73e3884f642d57a0ac5e13c68590ed03a14e530616e8c1","eec69d0cbd92c9fca31ec967dba848bec368e792d6678797946a5e34fe3487"],["6cf6b3efee707210cb3a72f1e885c3d0953aefb43e5e148c740aa1641725c61","911cb630b898e2c1a9115f9e45bafe3b819edfb1eab6e15612d14289939984"],["74e913de55f1e46143cb2ecfc580f8d3d3908f200281322b84e21c989cda293","761d2736c9ac7670ba905bc2629c6c0dbe988820a4454ff415ba68710f7df92"],["44084305e0c911a40b7cbefe5f13cffe9a99375d1a584c4a2200958050af7a9","249c83877371564708ea525b64b1e7e12785460d83364446531c9adcacba5f0"],["2bf71ad4d1bee1a67fb300477029f54bdb0e09f78bf2ac2e8afc7465a7adbcc","6244dd6cad282539049be57487bfd9900bb0d5da805d02b535096368fcb4cd5"],["3a62d8f763b62def36e4089458046a49c5ecb91b861549530773e0548ff2bb","6a10a03ba61e6ac657270465c09aa9526cf1ebe96bdecdf0e7000476a47b9eb"],["284eed3a17c51e0677d4fe897f056abe9def8af07a4630e6ca5723e2aa6677","516a06ac1d5626ed03d2eee9de6f60f0311eca703a99b0fb31b9c66b01c27c7"],["2a2c63b16cccd685f731d06fe93ce2cffb358d34d03dda9a7368185c1eb0c32","7180baca0ba81284809f92eca1654cd76b925a9242e5d5e0f18d0a55d13c6ec"],["5f9466017ec09769611389ea5370ad68dda936d3f5816c9e928ff9574abf9a7","6619b5b145bb5f4f29deb7a4cd68ef4da3995312fa6537f0d01684da4267ece"],["74f229babe01b4962b3307589c1a13019134b1db6822698388bebb55d21c30f","156ae857ab3279f754facba0db36398dffec8c31e5e160473198f2f891b7531"],["334b9fe3a5fd99bc966ddd1309698fd32afd1f235062f2c275b6616a185de45","221a60053583cc0607f6f2e6966b62fc9dac00538bb7eb1148e007a92116d2"],["7ad710ba002a67c731efbaba2149d16fec5d2f7aa3d126fd9886172e9f4ea30","3a10f8e902a7a13aec94d66415347e1314f9bac83a7db176096b809b25ffb86"],["4306dd0a184a3283c3097ff8f7434cec80912e9dc04b7df21ba73fda9f8e6d8","6d42bd3d1a8dbddafd09e872e2aa3891ae79ec939dc1b382196bc21c4ab749"],["1c3f2124e1135c32a426d1d14e471edd9e0f2c7bd703ee123cbbd608e8c4be7","3cc607a3c3f1ab68dd5fa56c65996002721b8ad8ad4b0dd9e5b1467d316583"],["294af33272ffcee0b56a436de1b73759cbddebef4c07888b42c2f92b0b68e1","d837164311d5dca8d37b99ef9eb22708643c83d1cbdfe852f63ea07b06fbad"],["753bdb5439a19bbffdfa02b1dc24e8368f22d0a8276b109c11e6feb26f56f39","6ed396231af93647633eab467f1a034f38e76823eb85baf97cae56e2dcd9f75"],["5674f0cb892b733fc0b50e121d8679afed0a925c32594cc65ffe83bebe7748e","7fbf0325dd38dd94905adab2c52758552292a6a103d9edfcb11938828e828c8"],["4a8f053573a0a74251059d0229d89b6660407ba0b491779fd10f87a5117c81f","21b70112485398bf67ec9d733df24a1df30dea718a93b786f41ed04e3ae3c5e"],["726c01ec4a08df8fc8de173311f50d4f3b97c5a9cf68c1536146f827db95ae8","15013cafadefa7f1c4e4dfdd70bd4d3979dd18bd7f0332572ce2a3fd8773d12"],["38ac0fbfa98937257460db7e6645d7e5112b6fce7234813fc8a704e8ade8da2","73c0109f86048aad08c443f781ae60ad13b99f7b9cfdf3128fe6d6eeb799a7b"],["6f6d3a38621582ace092eb50ecfe9eff265df141ebdcab8653299116fcea291","4a1bf3f39bc919c8f1b720a0b1ce952cad17f2ba98308ee6b76dd9b6f3d7b75"],["6a307fc28e1df8d9ad01766419e097797d65cb674436fa1c8f012d3de2c2a1f","26911a635ba824db004875d79dd84834a97ac12643e42829015bf88c1fd6f05"],["2a74860e3336d6db916555894cc8028f41508812925db1925457afe40257155","5f8da573f4c39816ce2dba8a20224223a7cfec53117ec78973930c0e9b60244"],["4d2b49e1ed0799f719b8269f092cb489a466a645bc0ccabafdc678864c176d7","5410083df7d256f18cbf5697ae5e52c31e075d8a3b27e21d6f5177ca882f6c1"],["110ecb9fbf6c333d168cee473cc5ad98809b6cb9eb5d1f6cd28ab5fab504fd3","7e3c54d7533d9f8c3310f219dab0cc3ea4d39b418a748eeffd6bae2b8637a43"],["5be4d711b80da70e6d3ac493250bbfd16f20b25f31919b3a91cf14ffbac1096","7f55a0919f082e8885f1515e83c5b39b6022404503507498e1b4422d79c43e2"],["2605125b95ca4ba93a21cbbba5762898a7cf9e988f07ab9e64cb3868e3b139d","62f0ccf55b9fc0eaf9736fc8ee484e2acdbe259813af9803cf815829a5e9d3b"],["1092bbbf206f2a3068167c3dd99a72de31e206f6c504c071c8214d105ff814d","309f489f68a62089f53b96df5d4fbc3ecc5a1a42eb7ece0e49bad17ad490ff4"],["2abdee9409d9c92559ca3f4e6bddd649c31aa09b90bfcb4a612af491241e18d","3ffa8eac180a29de3f8a69efca84bac046f921f5725e96a6ff0530be1436aaf"],["376313f27d00bb1aae7ec991745efe6ee28c6b50de0c6cd9845cc4bb4f83543","6a8e0a9389ba528b156fa94ac090a895d7b795818d4941c29415d9e2984c547"],["a80380c71bd466a696b3f0fbf02817c9459d9798f4f3899cf32edf647fe066","6a09805e814e7cdfc76eba4b79f1df5ae559e0f0aba9f728d3cba4ea5c57471"],["223694b921d247d989a79b9b2b2f07496036c40cb043eab074a9d6a2cd2ffed","c247217f1b1df35e30d9e15fdaadf42d6fb0edd3a5a7e265d4cdc426c120aa"],["102333620df278c6714bbc880fc087db58c1b9b4d77ed4d61b32a74bfc7c3e2","6a77d37727ccf71c2caeb151faf4404d4b94e9047f9f0a7c3966367f3b53c65"],["891626f466536929ee7eadcd18b41925706dedab7528ed5f0f7abf039eb9d2","5f73d11c141c933a35b2d0d06e5cbae614a20d17dc3b439f8bcdc3413c5ea37"],["215c23fd3f073f870e5e80303967391bf173f8adcdbeec72d131c557babc203","10634332e9d9439a321597dc5b0fac9ff478834c3d6e281735f21a4a5e13266"],["21ea0bdc1332bc36e6aeb43be9071651c27e4ea2eadec636c8d818d4af72a36","3a523d9643dccc6bb9c7c58413312caa3e60ba9c7c7f0177e0f3f469a3241e3"],["60deaed1bffb6190beed40caaf2bfab5e43d3707aff7ad3f278d571aa247eae","e41f71ff254c1418e6a66992af307789fe04d6606fb2670900bb1a089fd879"],["1e1fac4a1646253fb1332fadc21fbdd3e3a24a840d129400f520ae4116a4cf5","69c406f9f46576afad68808de0ab7e8922b6226af748e721d9097e21f1800f3"],["5db0ddcdf79ffe74d6454c12d2bc60b06776db03c75dc413f5be42ea9a91b5e","134c3d6c699841f17306835bb193785228ffe7ab212a01a861c56b086a18cec"],["626814e320fb5bea505b248fd1c1389ad586c1cfe04923fe2f83173e915f4f8","7ae407a926e887206a8b85cf485f1f327c9bb8ccbb6897024e2d122877d8ee0"],["23186237dc7d3b570cea645282ad4c359731bbfa54e7f036426bf6493812cd","7d1fbab7e61a22d3b00993290d9f4cd5d820061573e787f66c2cff9a18e1eaf"],["54302dcb0e6cc1c6e44cca8f61a63bb2ca65048d53fb325d36ff12c49a58202","1b77b3e37d13504b348046268d8ae25ce98ad783c25561a879dcc77e99c2426"],["13961b56b9fc0e412e468c385c22bd0680a25624ec211ffbb6bc877b2a6926c","62f7f7792c77cd981fad13cb6863fe099c4d971c1374109185eae99943f16e9"],["47abd7308c70659af3f00fafe6837298af3cb530b6c2ba710ffd07a6bc1ae98","75d0c8a7377aa9f0663d0c124a5659750847afabc29e39893fd27534a4a03cb"],["2c6276b764fb398fa555857dbe0ce0ec18fab7a233bf23851295739801f0585","5d8f4897ce44007ec5bfcb9aeb78b8f6e1d40a514f72d213c9300d2770d2b8c"]],gx={};Fi(gx,{ec:()=>qo,genKeyPair:()=>Uy,getKeyPair:()=>Tq,getKeyPairFromPublicKey:()=>Sq,getStarkKey:()=>Fy,sign:()=>A0,verify:()=>Iq});var{ec:xq,curves:Aq}=aq,qo=new xq(new Aq.PresetCurve({type:"short",prime:null,p:Dy,a:"00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001",b:"06f21413 efbe40de 150e596d 72f7a8c5 609ad26c 15c915c1 f4cdfcb9 9cee9e89",n:h1,hash:iq.sha256,gRed:!1,g:Ly[1]}));function mx(e){const t=e.replace(/^0x0*/,"");return t.length<=62?t:(Zd(t.length===63),`${t}0`)}var Uy=qo.genKeyPair.bind(qo);function Tq(e){const t=wt(e);return qo.keyFromPrivate(ro(er(t)),"hex")}function Fy(e){return e.getPublic(!0,"hex"),oa(Cy(e.pub.getX().toString(16),2))}function Sq(e){const t=wt(e);return qo.keyFromPublic(ro(er(t)),"hex")}function A0(e,t){const r=wt(oa(t));no(r,wi,wt(oa(qf)),"msgHash");const n=e.sign(mx(t)),{r:a,s:i}=n,s=i.invm(qo.n);return no(a,zo,wt(oa(qf)),"r"),no(i,zo,wt(oa(h1)),"s"),no(s,zo,wt(oa(qf)),"w"),[a.toString(),i.toString()]}function kq(e,t){return Array(Math.ceil(e.length/t)).fill("").map((r,n)=>e.slice(n*t,n*t+t))}function Iq(e,t,r){const n=Array.isArray(e)?e:[e],a=wt(oa(t));return Zd(r.length%2===0,"Signature must be an array of length dividable by 2"),no(a,wi,wt(oa(qf)),"msgHash"),Zd(n.length===r.length/2,"Signature and keyPair length must be equal"),kq(r,2).every(([i,s],o)=>{const c=wt(i),d=wt(s),l=d.invm(qo.n);return no(c,zo,wt(oa(qf)),"r"),no(d,zo,wt(oa(h1)),"s"),no(l,zo,wt(oa(qf)),"w"),qo.verify(mx(t),{r:c,s:d},n[o])??!1})}var T0=1,Kd=wt(2).pow(wt(128)).add(wt(T0));function yx(e){const t=ro(er(wt(e))),r=t.length%2===0?t:`0${t}`;return oa(Iy((0,rx.So)((0,nq.hexToBytes)(r))))}function Cq(e){return oa(Iy((0,rx.So)(fx(e))))}function _x(e){return wt(Cq(e)).and(lx)}function Vc(e){return er(_x(e))}function vx(e){return $o(e)?e:l1(e)?Ry(e):Vc(e)}var wx=Ly.map(e=>qo.curve.point(e[0],e[1]));function p1(e){let t=wx[0];for(let r=0;rp1([t,r]),0).toString()}function S0(e,t,r,n,a,i,s,o=[]){const c=Zo(a),d=[e,t,r,n,c,i,s,...o];return Zo(d)}function Oq(e,t,r,n){return S0("0x6465706c6f79",r,e,Vc("constructor"),t,wi,n)}function Ex(e,t,r,n,a,i){return S0("0x6465636c617265",r,t,0,[e],n,a,[i])}function xx(e,t,r,n,a,i,s,o){const c=[t,n,...r];return S0("0x6465706c6f795f6163636f756e74",a,e,0,c,i,s,[o])}function Ax(e,t,r,n,a,i){return S0("0x696e766f6b65",t,e,0,r,n,a,[i])}function b1(e,t,r,n){const a=Zo(r),s=[$c("0x535441524b4e45545f434f4e54524143545f41444452455353"),n,e,t,a];return Zo(s)}var Nq={};Fi(Nq,{default:()=>Mq,parse:()=>k0,parseAlwaysAsBig:()=>Sx,stringify:()=>I0,stringifyAlwaysAsBig:()=>Rq});var Tx=e=>sq({alwaysParseAsBig:e,useNativeBigInt:!0,protoAction:"preserve",constructorAction:"preserve"}),{parse:k0,stringify:I0}=Tx(!1),{parse:Sx,stringify:Rq}=Tx(!0),Mq={parse:k0,stringify:I0},Bq={};Fi(Bq,{compileCalldata:()=>Gd,compressProgram:()=>kx,estimatedFeeToMaxFee:()=>Wd,formatSignature:()=>Dq,makeAddress:()=>Pq,randomAddress:()=>Hy});function kx(e){const t=typeof e=="string"?e:I0(e),r=Rh(t);return sx(r)}function Hy(){const e=Uy();return Fy(e)}function Pq(e){return oa(e).toLowerCase()}function Dq(e){if(!e)return[];try{return e.map(t=>wt(t)).map(t=>t.toString())}catch{return[]}}function Gd(e){return Object.values(e).flatMap(t=>Array.isArray(t)?[wt(t.length).toString(),...t.map(r=>wt(r).toString())]:typeof t=="object"&&"type"in t?Object.entries(t).filter(([r])=>r!=="type").map(([,r])=>wt(r).toString()):wt(t).toString())}function Wd(e,t=.5){const r=Math.round((1+t)*100);return wt(e).mul(wt(r)).div(wt(100))}function jy(e){return new Promise(t=>{setTimeout(t,e)})}function $y(e=[]){return e.map(t=>typeof t=="string"&&$o(t)?t:er(wt(t)))}function g1(e){const t=typeof e=="string"?k0(e):e;return{...t,program:kx(t.program)}}var Lq=class{parseGetBlockResponse(e){return{timestamp:e.timestamp,block_hash:e.block_hash,block_number:e.block_number,new_root:e.new_root,parent_hash:e.parent_hash,status:e.status,transactions:e.transactions}}parseGetTransactionResponse(e){return{calldata:e.calldata||[],contract_address:e.contract_address,max_fee:e.max_fee,nonce:e.nonce,signature:e.signature||[],transaction_hash:e.transaction_hash,version:e.version}}parseFeeEstimateResponse(e){return{overall_fee:wt(e.overall_fee),gas_consumed:wt(e.gas_consumed),gas_price:wt(e.gas_price)}}parseCallContractResponse(e){return{result:e}}},m1=class extends fq{},Ix=class extends m1{constructor(e,t){super(e),this.errorCode=t}},Cx=class extends m1{constructor(e,t){super(e),this.errorCode=t}},ao="abcdefghijklmnopqrstuvwxyz0123456789-",Yd=new vi(ao.length+1),Ma="\u8FD9\u6765",Ox=new vi(ao.length),Vy=new vi(Ma.length),Nx=new vi(Ma.length+1);function zy(e){let t=0;for(;e.endsWith(Ma[Ma.length-1]);)e=e.substring(0,e.length-1),t+=1;return[e,t]}function Uq(e){let t="";return e.forEach(r=>{for(;!r.isZero();){const i=r.mod(Yd).toNumber();if(r=r.div(Yd),i===ao.length){const s=r.div(Nx);if(s.isZero()){const o=r.mod(Nx).toNumber();r=s,o===0?t+=ao[0]:t+=Ma[o-1]}else{const o=r.mod(Vy).toNumber();t+=Ma[o],r=r.div(Vy)}}else t+=ao[i]}const[n,a]=zy(t);a&&(t=n+(a%2===0?Ma[Ma.length-1].repeat(a/2-1)+Ma[0]+ao[1]:Ma[Ma.length-1].repeat((a-1)/2+1))),t+="."}),t&&t.concat("stark")}function Fq(e){let t=new vi(0),r=new vi(1);if(e.endsWith(Ma[0]+ao[1])){const[n,a]=zy(e.substring(0,e.length-2));e=n+Ma[Ma.length-1].repeat(2*(a+1))}else{const[n,a]=zy(e);a&&(e=n+Ma[Ma.length-1].repeat(1+2*(a-1)))}for(let n=0;nnew vi.BN(Oy(c))).slice(1),o=Uq(s);if(!o)throw Error("Starkname not found");return o}catch(i){throw i instanceof Error&&i.message==="Starkname not found"?i:Error("Could not get stark name")}}async function Zy(e,t,r){const n=await e.getChainId(),a=r??Rx(n);try{return(await e.callContract({contractAddress:a,entrypoint:"domain_to_address",calldata:Gd({domain:[Fq(t.replace(".stark","")).toString(10)]})})).result[0]}catch{throw Error("Could not get address from stark name")}}var Hq=["latest","pending"],Fa=class{constructor(e){this.hash=null,this.number=null,this.tag=null,this.valueOf=()=>this.number,this.toString=()=>this.hash,this.setIdentifier(e)}setIdentifier(e){typeof e=="string"&&$o(e)?this.hash=e:vi.BN.isBN(e)?this.hash=er(e):typeof e=="number"?this.number=e:typeof e=="string"&&Hq.includes(e)?this.tag=e:this.tag="pending"}get queryIdentifier(){return this.number!==null?`blockNumber=${this.number}`:this.hash!==null?`blockHash=${this.hash}`:`blockNumber=${this.tag}`}get identifier(){return this.number!==null?{block_number:this.number}:this.hash!==null?{block_hash:this.hash}:this.tag}set identifier(e){this.setIdentifier(e)}get sequencerIdentifier(){return this.hash!==null?{blockHash:this.hash}:{blockNumber:this.number??this.tag}}},Ky={headers:{"Content-Type":"application/json"},blockIdentifier:"latest",retries:200},Gy=class{constructor(e){this.responseParser=new Lq;const{nodeUrl:t,retries:r,headers:n,blockIdentifier:a}=e;this.nodeUrl=t,this.retries=r||Ky.retries,this.headers={...Ky.headers,...n},this.blockIdentifier=a||Ky.blockIdentifier,this.getChainId().then(i=>{this.chainId=i})}fetch(e,t){return ax(this.nodeUrl,{method:"POST",body:I0({method:e,jsonrpc:"2.0",params:t,id:0}),headers:this.headers})}errorHandler(e){if(e){const{code:t,message:r}=e;throw new m1(`${t}: ${r}`)}}async fetchEndpoint(e,t){var r;try{const n=await this.fetch(e,t),{error:a,result:i}=await n.json();return this.errorHandler(a),i}catch(n){throw this.errorHandler((r=n?.response)==null?void 0:r.data),n}}async getChainId(){return this.fetchEndpoint("starknet_chainId")}async getBlock(e=this.blockIdentifier){return this.getBlockWithTxHashes(e).then(this.responseParser.parseGetBlockResponse)}async getBlockHashAndNumber(){return this.fetchEndpoint("starknet_blockHashAndNumber")}async getBlockWithTxHashes(e=this.blockIdentifier){const t=new Fa(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxHashes",{block_id:t})}async getBlockWithTxs(e=this.blockIdentifier){const t=new Fa(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxs",{block_id:t})}async getClassHashAt(e,t=this.blockIdentifier){const r=new Fa(t).identifier;return this.fetchEndpoint("starknet_getClassHashAt",{block_id:r,contract_address:e})}async getNonceForAddress(e,t=this.blockIdentifier){const r=new Fa(t).identifier;return this.fetchEndpoint("starknet_getNonce",{contract_address:e,block_id:r})}async getPendingTransactions(){return this.fetchEndpoint("starknet_pendingTransactions")}async getProtocolVersion(){throw new Error("Pathfinder does not implement this rpc 0.1.0 method")}async getStateUpdate(e=this.blockIdentifier){const t=new Fa(e).identifier;return this.fetchEndpoint("starknet_getStateUpdate",{block_id:t})}async getStorageAt(e,t,r=this.blockIdentifier){const n=er(wt(t)),a=new Fa(r).identifier;return this.fetchEndpoint("starknet_getStorageAt",{contract_address:e,key:n,block_id:a})}async getTransaction(e){return this.getTransactionByHash(e).then(this.responseParser.parseGetTransactionResponse)}async getTransactionByHash(e){return this.fetchEndpoint("starknet_getTransactionByHash",{transaction_hash:e})}async getTransactionByBlockIdAndIndex(e,t){const r=new Fa(e).identifier;return this.fetchEndpoint("starknet_getTransactionByBlockIdAndIndex",{block_id:r,index:t})}async getTransactionReceipt(e){return this.fetchEndpoint("starknet_getTransactionReceipt",{transaction_hash:e})}async getClassByHash(e){return this.getClass(e)}async getClass(e,t=this.blockIdentifier){const r=new Fa(t).identifier;return this.fetchEndpoint("starknet_getClass",{class_hash:e,block_id:r})}async getClassAt(e,t=this.blockIdentifier){const r=new Fa(t).identifier;return this.fetchEndpoint("starknet_getClassAt",{block_id:r,contract_address:e})}async getCode(e,t){throw new Error("RPC does not implement getCode function")}async getEstimateFee(e,t,r=this.blockIdentifier){return this.getInvokeEstimateFee(e,t,r)}async getInvokeEstimateFee(e,t,r=this.blockIdentifier){const n=new Fa(r).identifier;return this.fetchEndpoint("starknet_estimateFee",{request:{type:"INVOKE",sender_address:e.contractAddress,calldata:$y(e.calldata),signature:Vo(e.signature||[]),version:er(wt(t?.version||0)),nonce:er(wt(t.nonce)),max_fee:er(wt(t?.maxFee||0))},block_id:n}).then(this.responseParser.parseFeeEstimateResponse)}async getDeclareEstimateFee({senderAddress:e,contractDefinition:t,signature:r},n,a=this.blockIdentifier){const i=new Fa(a).identifier;return this.fetchEndpoint("starknet_estimateFee",{request:{type:"DECLARE",contract_class:{program:t.program,entry_points_by_type:t.entry_points_by_type,abi:t.abi},sender_address:e,signature:Vo(r||[]),version:er(wt(n?.version||0)),nonce:er(wt(n.nonce)),max_fee:er(wt(n?.maxFee||0))},block_id:i}).then(this.responseParser.parseFeeEstimateResponse)}async getDeployAccountEstimateFee({classHash:e,constructorCalldata:t,addressSalt:r,signature:n},a,i=this.blockIdentifier){const s=new Fa(i).identifier;return this.fetchEndpoint("starknet_estimateFee",{request:{type:"DEPLOY_ACCOUNT",constructor_calldata:Vo(t||[]),class_hash:er(wt(e)),contract_address_salt:er(wt(r||0)),signature:Vo(n||[]),version:er(wt(a?.version||0)),nonce:er(wt(a.nonce)),max_fee:er(wt(a?.maxFee||0))},block_id:s}).then(this.responseParser.parseFeeEstimateResponse)}async getEstimateFeeBulk(e,t=this.blockIdentifier){throw new Error("RPC does not implement getInvokeEstimateFeeBulk function")}async declareContract({contractDefinition:e,signature:t,senderAddress:r},n){return this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{contract_class:{program:e.program,entry_points_by_type:e.entry_points_by_type,abi:e.abi},type:"DECLARE",version:er(wt(n.version||0)),max_fee:er(wt(n.maxFee||0)),signature:Vo(t||[]),sender_address:r,nonce:er(wt(n.nonce))}})}async deployAccountContract({classHash:e,constructorCalldata:t,addressSalt:r,signature:n},a){return this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{constructor_calldata:Vo(t||[]),class_hash:er(wt(e)),contract_address_salt:er(wt(r||0)),type:"DEPLOY_ACCOUNT",max_fee:er(wt(a.maxFee||0)),version:er(wt(a.version||0)),signature:Vo(n||[]),nonce:er(wt(a.nonce))}})}async invokeFunction(e,t){return this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{sender_address:e.contractAddress,calldata:$y(e.calldata),type:"INVOKE",max_fee:er(wt(t.maxFee||0)),version:er(wt(t.version||1)),signature:Vo(e.signature||[]),nonce:er(wt(t.nonce))}})}async callContract(e,t=this.blockIdentifier){const r=new Fa(t).identifier,n=await this.fetchEndpoint("starknet_call",{request:{contract_address:e.contractAddress,entry_point_selector:Vc(e.entrypoint),calldata:$y(e.calldata)},block_id:r});return this.responseParser.parseCallContractResponse(n)}async traceTransaction(e){return this.fetchEndpoint("starknet_traceTransaction",{transaction_hash:e})}async traceBlockTransactions(e){return this.fetchEndpoint("starknet_traceBlockTransactions",{block_hash:e})}async waitForTransaction(e,t=8e3,r=["ACCEPTED_ON_L1","ACCEPTED_ON_L2","PENDING"]){const n=["REJECTED","NOT_RECEIVED"];let{retries:a}=this,i=!1,s={};for(;!i;){await jy(t);try{if(s=await this.getTransactionReceipt(e),!("status"in s))throw new Error("pending transaction");if(s.status&&r.includes(s.status))i=!0;else if(s.status&&n.includes(s.status)){const o=s.status,c=new Error(o);throw c.response=s,c}}catch(o){if(o instanceof Error&&n.includes(o.message))throw o;if(a===0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}a-=1}return await jy(t),s}async getTransactionCount(e=this.blockIdentifier){const t=new Fa(e).identifier;return this.fetchEndpoint("starknet_getBlockTransactionCount",{block_id:t})}async getBlockNumber(){return this.fetchEndpoint("starknet_blockNumber")}async getSyncingStats(){return this.fetchEndpoint("starknet_syncing")}async getEvents(e){return this.fetchEndpoint("starknet_getEvents",{filter:e})}async getSimulateTransaction(e,t,r){throw new Error("RPC does not implement simulateTransaction function")}async getStarkName(e,t){return qy(this,e,t)}async getAddressFromStarkName(e,t){return Zy(this,e,t)}},jq=class{},$q=class extends jq{parseGetBlockResponse(e){return{...e,new_root:e.state_root,parent_hash:e.parent_block_hash,transactions:Object.values(e.transactions).map(t=>"transaction_hash"in t&&t.transaction_hash).filter(Boolean)}}parseGetTransactionResponse(e){return{...e,calldata:"calldata"in e.transaction?e.transaction.calldata:[],contract_address:"contract_address"in e.transaction?e.transaction.contract_address:void 0,contract_class:"contract_class"in e.transaction?e.transaction.contract_class:void 0,entry_point_selector:"entry_point_selector"in e.transaction?e.transaction.entry_point_selector:void 0,max_fee:"max_fee"in e.transaction?e.transaction.max_fee:void 0,nonce:e.transaction.nonce,sender_address:"sender_address"in e.transaction?e.transaction.sender_address:void 0,signature:"signature"in e.transaction?e.transaction.signature:void 0,transaction_hash:"transaction_hash"in e.transaction?e.transaction.transaction_hash:void 0,version:"version"in e.transaction?e.transaction.version:void 0}}parseGetTransactionReceiptResponse(e){return{transaction_hash:e.transaction_hash,status:e.status,messages_sent:e.l2_to_l1_messages,events:e.events,..."block_hash"in e&&{block_hash:e.block_hash},..."block_number"in e&&{block_number:e.block_number},..."actual_fee"in e&&{actual_fee:e.actual_fee},..."transaction_index"in e&&{transaction_index:e.transaction_index},..."execution_resources"in e&&{execution_resources:e.execution_resources},..."l1_to_l2_consumed_message"in e&&{l1_to_l2_consumed_message:e.l1_to_l2_consumed_message},..."transaction_failure_reason"in e&&{transaction_failure_reason:e.transaction_failure_reason}}}parseFeeEstimateResponse(e){if("overall_fee"in e){let t={};try{t={gas_consumed:wt(e.gas_usage),gas_price:wt(e.gas_price)}}catch{}return{overall_fee:wt(e.overall_fee),...t}}return{overall_fee:wt(e.amount)}}parseFeeEstimateBulkResponse(e){return[].concat(e).map(t=>{if("overall_fee"in t){let r={};try{r={gas_consumed:wt(t.gas_usage),gas_price:wt(t.gas_price)}}catch{}return{overall_fee:wt(t.overall_fee),...r}}return{overall_fee:wt(t.amount)}})}parseFeeSimulateTransactionResponse(e){if("overall_fee"in e.fee_estimation){let t={};try{t={gas_consumed:wt(e.fee_estimation.gas_usage),gas_price:wt(e.fee_estimation.gas_price)}}catch{}return{trace:e.trace,fee_estimation:{...t,overall_fee:wt(e.fee_estimation.overall_fee)}}}return{trace:e.trace,fee_estimation:{overall_fee:wt(e.fee_estimation.amount)}}}parseCallContractResponse(e){return{result:e.result}}parseInvokeFunctionResponse(e){return{transaction_hash:e.transaction_hash}}parseDeployContractResponse(e){return{transaction_hash:e.transaction_hash,contract_address:e.address}}parseDeclareContractResponse(e){return{transaction_hash:e.transaction_hash,class_hash:e.class_hash}}parseGetStateUpdateResponse(e){const t=[].concat(e.state_diff.nonces).map(({contract_address:n,nonce:a})=>({contract_address:n,nonce:a})),r=[].concat(e.state_diff.storage_diffs).map(({address:n,storage_entries:a})=>({address:n,storage_entries:a}));return{...e,state_diff:{storage_diffs:r,declared_contract_hashes:e.state_diff.declared_contract_hashes,deployed_contracts:e.state_diff.deployed_contracts,nonces:t}}}},Vq=/^(?:\w+:)?\/\/(\S+)$/,zq=/^localhost[:?\d]*(?:[^:?\d]\S*)?$/,qq=/^[^\s.]+\.\S{2,}$/;function Zq(e){if(!e||typeof e!="string")return!1;const t=e.match(Vq);if(!t)return!1;const r=t[1];return r?!!(zq.test(r)||qq.test(r)):!1}function y1(e,t,r){return Zq(r)?r:Uh(e,r??t)}function Kq(e){return e===void 0||Object.keys(e).length===0||Object.keys(e).length===1&&Object.entries(e).every(([t,r])=>t==="blockIdentifier"&&r===null)}var Mx={network:"goerli-alpha-2",blockIdentifier:"pending"},C0=class{constructor(e=Mx){this.responseParser=new $q,"network"in e?(this.baseUrl=C0.getNetworkFromName(e.network),this.feederGatewayUrl=y1(this.baseUrl,"feeder_gateway"),this.gatewayUrl=y1(this.baseUrl,"gateway")):(this.baseUrl=e.baseUrl,this.feederGatewayUrl=y1(this.baseUrl,"feeder_gateway",e.feederGatewayUrl),this.gatewayUrl=y1(this.baseUrl,"gateway",e.gatewayUrl)),this.chainId=e?.chainId??C0.getChainIdFromBaseUrl(this.baseUrl),this.headers=e.headers,this.blockIdentifier=e?.blockIdentifier||Mx.blockIdentifier}static getNetworkFromName(e){switch(e){case"mainnet-alpha":return"https://alpha-mainnet.starknet.io";case"goerli-alpha":return"https://alpha4.starknet.io";case"goerli-alpha-2":return"https://alpha4-2.starknet.io";default:return"https://alpha4.starknet.io"}}static getChainIdFromBaseUrl(e){try{const t=new URL(e);if(t.host.includes("mainnet.starknet.io"))return"0x534e5f4d41494e";if(t.host.includes("alpha4-2.starknet.io"))return"0x534e5f474f45524c4932"}catch{console.error(`Could not parse baseUrl: ${e}`)}return"0x534e5f474f45524c49"}getFetchUrl(e){return["add_transaction"].includes(e)?this.gatewayUrl:this.feederGatewayUrl}getFetchMethod(e){return["add_transaction","call_contract","estimate_fee","estimate_message_fee","estimate_fee_bulk","simulate_transaction"].includes(e)?"POST":"GET"}getQueryString(e){return Kq(e)?"":`?${Object.entries(e).map(([r,n])=>r==="blockIdentifier"?`${new Fa(n).queryIdentifier}`:`${r}=${n}`).join("&")}`}getHeaders(e){return e==="POST"?{"Content-Type":"application/json",...this.headers}:this.headers}async fetchEndpoint(e,...[t,r]){const n=this.getFetchUrl(e),a=this.getFetchMethod(e),i=this.getQueryString(t),s=this.getHeaders(a),o=Uh(n,e,i);try{const c=await ax(o,{method:a,body:I0(r),headers:s}),d=await c.text();if(!c.ok){let l;try{l=k0(d)}catch{throw new Cx(c.statusText,c.status)}const y=l.code||l?.status_code;throw new Ix(l.message,y)}return e==="estimate_fee"?Sx(d,(l,y)=>y&&typeof y=="bigint"?wt(y.toString()):y):k0(d)}catch(c){throw c instanceof Ix||c instanceof Cx?c:c instanceof Error?Error(`Could not ${a} from endpoint \`${o}\`: ${c.message}`):c}}async getChainId(){return Promise.resolve(this.chainId)}async callContract({contractAddress:e,entrypoint:t,calldata:r=[]},n=this.blockIdentifier){return this.fetchEndpoint("call_contract",{blockIdentifier:n},{signature:[],contract_address:e,entry_point_selector:Vc(t),calldata:r}).then(this.responseParser.parseCallContractResponse)}async getBlock(e=this.blockIdentifier){return this.fetchEndpoint("get_block",{blockIdentifier:e}).then(this.responseParser.parseGetBlockResponse)}async getNonceForAddress(e,t=this.blockIdentifier){return this.fetchEndpoint("get_nonce",{contractAddress:e,blockIdentifier:t})}async getStorageAt(e,t,r=this.blockIdentifier){const n=wt(t).toString(10);return this.fetchEndpoint("get_storage_at",{blockIdentifier:r,contractAddress:e,key:n})}async getTransaction(e){const t=er(wt(e));return this.fetchEndpoint("get_transaction",{transactionHash:t}).then(r=>{if(Object.values(r).length===1)throw new m1(r.status);return this.responseParser.parseGetTransactionResponse(r)})}async getTransactionReceipt(e){const t=er(wt(e));return this.fetchEndpoint("get_transaction_receipt",{transactionHash:t}).then(this.responseParser.parseGetTransactionReceiptResponse)}async getClassAt(e,t=this.blockIdentifier){return this.fetchEndpoint("get_full_contract",{blockIdentifier:t,contractAddress:e}).then(g1)}async getClassHashAt(e,t=this.blockIdentifier){return this.fetchEndpoint("get_class_hash_at",{blockIdentifier:t,contractAddress:e})}async getClassByHash(e){return this.fetchEndpoint("get_class_by_hash",{classHash:e}).then(g1)}async invokeFunction(e,t){return this.fetchEndpoint("add_transaction",void 0,{type:"INVOKE_FUNCTION",contract_address:e.contractAddress,calldata:ii(e.calldata??[]),signature:ii(e.signature??[]),nonce:er(wt(t.nonce)),max_fee:er(wt(t.maxFee||0)),version:er(wt(t.version||1))}).then(this.responseParser.parseInvokeFunctionResponse)}async deployAccountContract({classHash:e,constructorCalldata:t,addressSalt:r,signature:n},a){return this.fetchEndpoint("add_transaction",void 0,{type:"DEPLOY_ACCOUNT",contract_address_salt:r??Hy(),constructor_calldata:ii(t??[]),class_hash:er(wt(e)),max_fee:er(wt(a.maxFee||0)),version:er(wt(a.version||0)),nonce:er(wt(a.nonce)),signature:ii(n||[])}).then(this.responseParser.parseDeployContractResponse)}async declareContract({senderAddress:e,contractDefinition:t,signature:r},n){return this.fetchEndpoint("add_transaction",void 0,{type:"DECLARE",contract_class:t,nonce:er(wt(n.nonce)),signature:ii(r||[]),sender_address:e,max_fee:er(wt(n.maxFee||0)),version:er(wt(n.version||1))}).then(this.responseParser.parseDeclareContractResponse)}async getEstimateFee(e,t,r=this.blockIdentifier){return this.getInvokeEstimateFee(e,t,r)}async getInvokeEstimateFee(e,t,r=this.blockIdentifier){return this.fetchEndpoint("estimate_fee",{blockIdentifier:r},{type:"INVOKE_FUNCTION",contract_address:e.contractAddress,calldata:e.calldata??[],signature:ii(e.signature||[]),version:er(wt(t?.version||1)),nonce:er(wt(t.nonce))}).then(this.responseParser.parseFeeEstimateResponse)}async getDeclareEstimateFee({senderAddress:e,contractDefinition:t,signature:r},n,a=this.blockIdentifier){return this.fetchEndpoint("estimate_fee",{blockIdentifier:a},{type:"DECLARE",sender_address:e,contract_class:t,signature:ii(r||[]),version:er(wt(n?.version||1)),nonce:er(wt(n.nonce))}).then(this.responseParser.parseFeeEstimateResponse)}async getDeployAccountEstimateFee({classHash:e,addressSalt:t,constructorCalldata:r,signature:n},a,i=this.blockIdentifier){return this.fetchEndpoint("estimate_fee",{blockIdentifier:i},{type:"DEPLOY_ACCOUNT",class_hash:er(wt(e)),constructor_calldata:ii(r||[]),contract_address_salt:er(wt(t||0)),signature:ii(n||[]),version:er(wt(a?.version||0)),nonce:er(wt(a.nonce))}).then(this.responseParser.parseFeeEstimateResponse)}async getEstimateFeeBulk(e,t=this.blockIdentifier){const r=e.map(n=>{let a;return n.type==="INVOKE_FUNCTION"?a={type:n.type,contract_address:n.contractAddress,calldata:n.calldata??[]}:n.type==="DECLARE"?a={type:n.type,sender_address:n.senderAddress,contract_class:n.contractDefinition}:a={type:n.type,class_hash:er(wt(n.classHash)),constructor_calldata:ii(n.constructorCalldata||[]),contract_address_salt:er(wt(n.addressSalt||0))},{...a,signature:ii(n.signature||[]),version:er(wt(n?.version||1)),nonce:er(wt(n.nonce))}});return this.fetchEndpoint("estimate_fee_bulk",{blockIdentifier:t},r).then(this.responseParser.parseFeeEstimateBulkResponse)}async getCode(e,t=this.blockIdentifier){return this.fetchEndpoint("get_code",{contractAddress:e,blockIdentifier:t})}async waitForTransaction(e,t=8e3,r=["ACCEPTED_ON_L1","ACCEPTED_ON_L2","PENDING"]){const n=["REJECTED","NOT_RECEIVED"];let a=!1,i;for(;!a;)if(await jy(t),i=await this.getTransactionStatus(e),r.includes(i.tx_status))a=!0;else if(n.includes(i.tx_status)){const o=i.tx_failure_reason?`${i.tx_status}: ${i.tx_failure_reason.code} +${i.tx_failure_reason.error_message}`:i.tx_status,c=new Error(o);throw c.response=i,c}return await this.getTransactionReceipt(e)}async getTransactionStatus(e){const t=er(wt(e));return this.fetchEndpoint("get_transaction_status",{transactionHash:t})}async getContractAddresses(){return this.fetchEndpoint("get_contract_addresses")}async getTransactionTrace(e){const t=er(wt(e));return this.fetchEndpoint("get_transaction_trace",{transactionHash:t})}async estimateMessageFee({from_address:e,to_address:t,entry_point_selector:r,payload:n},a=this.blockIdentifier){const i={from_address:dx(e),to_address:My(t),entry_point_selector:vx(r),payload:ux(n)};return this.fetchEndpoint("estimate_message_fee",{blockIdentifier:a},i)}async getSimulateTransaction(e,t,r=this.blockIdentifier){return this.fetchEndpoint("simulate_transaction",{blockIdentifier:r},{type:"INVOKE_FUNCTION",contract_address:e.contractAddress,calldata:e.calldata??[],signature:ii(e.signature||[]),version:er(wt(t?.version||1)),nonce:er(wt(t.nonce))}).then(this.responseParser.parseFeeSimulateTransactionResponse)}async getStateUpdate(e=this.blockIdentifier){const t=new Fa(e).sequencerIdentifier;return this.fetchEndpoint("get_state_update",{...t}).then(this.responseParser.parseGetStateUpdateResponse)}async getBlockTraces(e=this.blockIdentifier){const t=new Fa(e).sequencerIdentifier;return this.fetchEndpoint("get_block_traces",{...t})}async getStarkName(e,t){return qy(this,e,t)}async getAddressFromStarkName(e,t){return Zy(this,e,t)}},_1=class{constructor(e){e instanceof _1?this.provider=e.provider:e instanceof Gy||e instanceof C0?this.provider=e:e&&"rpc"in e?this.provider=new Gy(e.rpc):e&&"sequencer"in e?this.provider=new C0(e.sequencer):this.provider=new C0}get chainId(){return this.provider.chainId}async getChainId(){return this.provider.getChainId()}async getBlock(e){return this.provider.getBlock(e)}async getClassAt(e,t){return this.provider.getClassAt(e,t)}async getClassHashAt(e,t){return this.provider.getClassHashAt(e,t)}getClassByHash(e){return this.provider.getClassByHash(e)}async getEstimateFee(e,t,r){return this.provider.getEstimateFee(e,t,r)}async getInvokeEstimateFee(e,t,r){return this.provider.getInvokeEstimateFee(e,t,r)}async getEstimateFeeBulk(e,t){return this.provider.getEstimateFeeBulk(e,t)}async getNonceForAddress(e,t){return this.provider.getNonceForAddress(e,t)}async getStorageAt(e,t,r){return this.provider.getStorageAt(e,t,r)}async getTransaction(e){return this.provider.getTransaction(e)}async getTransactionReceipt(e){return this.provider.getTransactionReceipt(e)}async callContract(e,t){return this.provider.callContract(e,t)}async invokeFunction(e,t){return this.provider.invokeFunction(e,t)}async deployAccountContract(e,t){return this.provider.deployAccountContract(e,t)}async declareContract(e,t){return this.provider.declareContract(e,t)}async getDeclareEstimateFee(e,t,r){return this.provider.getDeclareEstimateFee(e,t,r)}getDeployAccountEstimateFee(e,t,r){return this.provider.getDeployAccountEstimateFee(e,t,r)}async getCode(e,t){return this.provider.getCode(e,t)}async waitForTransaction(e,t,r){return this.provider.waitForTransaction(e,t,r)}async getSimulateTransaction(e,t,r){return this.provider.getSimulateTransaction(e,t,r)}async getStateUpdate(e){return this.provider.getStateUpdate(e)}async getStarkName(e,t){return qy(this,e,t)}async getAddressFromStarkName(e,t){return Zy(this,e,t)}},Nae=class{},Bx=new _1,Px=class{constructor(e){this.abi=e,this.structs=e.filter(t=>t.type==="struct").reduce((t,r)=>({...t,[r.name]:r}),{})}compileCalldata(e,t){const r=e[Symbol.iterator]();return t.reduce((n,a)=>{if(/_len$/.test(a.name))return n;const i=this.parseCalldataField(r,a);return Array.isArray(i)?n.push(...i):n.push(i),n},[])}validateMethodAndArgs(e,t,r=[]){if(e!=="DEPLOY"){const i=this.abi.filter(s=>{if(s.type!=="function")return!1;const o=s.stateMutability==="view";return e==="INVOKE"?!o:o}).map(s=>s.name);assert4(i.includes(t),`${e==="INVOKE"?"invocable":"viewable"} method not found in abi`)}const n=this.abi.find(i=>e==="DEPLOY"?i.name===t&&i.type===t:i.name===t&&i.type==="function");let a=0;n.inputs.forEach(i=>{if(!/_len$/.test(i.name))if(i.type==="felt")assert4(typeof r[a]=="string"||typeof r[a]=="number"||r[a]instanceof BN5,`arg ${i.name} should be a felt (string, number, BigNumber)`),a+=1;else if(i.type in this.structs&&typeof r[a]=="object"){if(Array.isArray(r[a])){const s=this.calculateStructMembers(i.type);assert4(r[a].length===s,`arg should be of length ${s}`)}else this.structs[i.type].members.forEach(({name:s})=>{assert4(Object.keys(r[a]).includes(s),`arg should have a property ${s}`)});a+=1}else if(assert4(Array.isArray(r[a]),`arg ${i.name} should be an Array`),i.type==="felt*")r[a].forEach(s=>{assert4(typeof s=="string"||typeof s=="number"||s instanceof BN5,`arg ${i.name} should be an array of string, number or BigNumber`)}),a+=1;else if(/\(felt/.test(i.type)){const s=i.type.split(",").length;assert4(r[a].length===s,`arg ${i.name} should have ${s} elements in tuple`),r[a].forEach(o=>{assert4(typeof o=="string"||typeof o=="number"||o instanceof BN5,`arg ${i.name} should be an array of string, number or BigNumber`)}),a+=1}else{const s=i.type.replace("*","");r[a].forEach(o=>{this.structs[s].members.forEach(({name:c})=>{if(Array.isArray(o)){const d=this.calculateStructMembers(s);assert4(o.length===d,`arg should be of length ${d}`)}else assert4(Object.keys(o).includes(c),`arg ${i.name} should be an array of ${s}`)})}),a+=1}})}parseCalldataField(e,t){const{name:r,type:n}=t,{value:a}=e.next(),i=[];switch(!0){case/\*/.test(n):if(Array.isArray(a))return i.push($c(a.length)),a.reduce((s,o)=>(/felt/.test(n)?s.push($c(o)):s.push(...this.parseCalldataValue(o,n.replace("*",""))),s),i);throw Error(`Expected ${r} to be array`);case n in this.structs:return this.parseCalldataValue(a,n);case/\(felt/.test(n):if(Array.isArray(a))return a.map(s=>$c(s));throw Error(`Expected ${r} to be array`);default:return $c(a)}}parseCalldataValue(e,t){if(e===void 0)throw Error("Missing element in calldata");if(Array.isArray(e)){const r=this.calculateStructMembers(t);if(e.length!==r)throw Error("Missing element in calldata");return e.map(n=>$c(n))}return this.structs[t]&&this.structs[t].members.length?this.structs[t].members.reduce((r,n)=>{const a=this.parseCalldataValue(e[n.name],n.type);return typeof a=="string"?r.push(a):r.push(...a),r},[]):$c(e)}calculateStructMembers(e){return this.structs[e].members.reduce((t,r)=>r.type==="felt"?t+1:t+this.calculateStructMembers(r.type),0)}};function v1(e){try{return wt(e)}catch{throw Error("Could not parse felt")}}function Dx(e,t){return async function(...r){let n=null;return r.forEach(a=>{a.blockIdentifier&&(n=a.blockIdentifier)}),e.call(t.name,r,{blockIdentifier:n})}}function Gq(e,t){return async function(...r){const{inputs:n}=t,a=n.reduce((s,o)=>/_len$/.test(o.name)?s:s+1,0),i={};return a+1===r.length&&typeof r[r.length-1]=="object"&&Object.assign(i,r.pop()),e.invoke(t.name,r,i)}}function Lx(e,t){return t.stateMutability==="view"?Dx(e,t):Gq(e,t)}function Wq(e,t){return function(...r){return e.populate(t.name,r)}}function Yq(e,t){return function(...r){return e.estimate(t.name,r)}}var Ux=class{constructor(e,t,r=Bx){this.address=t&&t.toLowerCase(),this.providerOrAccount=r,this.abi=e,this.structs=e.filter(n=>n.type==="struct").reduce((n,a)=>({...n,[a.name]:a}),{}),this.checkCalldata=new Px(e),Object.defineProperty(this,"functions",{enumerable:!0,value:{},writable:!1}),Object.defineProperty(this,"callStatic",{enumerable:!0,value:{},writable:!1}),Object.defineProperty(this,"populateTransaction",{enumerable:!0,value:{},writable:!1}),Object.defineProperty(this,"estimateFee",{enumerable:!0,value:{},writable:!1}),this.abi.forEach(n=>{if(n.type!=="function")return;const a=n.name;this[a]||Object.defineProperty(this,a,{enumerable:!0,value:Lx(this,n),writable:!1}),this.functions[a]||Object.defineProperty(this.functions,a,{enumerable:!0,value:Lx(this,n),writable:!1}),this.callStatic[a]||Object.defineProperty(this.callStatic,a,{enumerable:!0,value:Dx(this,n),writable:!1}),this.populateTransaction[a]||Object.defineProperty(this.populateTransaction,a,{enumerable:!0,value:Wq(this,n),writable:!1}),this.estimateFee[a]||Object.defineProperty(this.estimateFee,a,{enumerable:!0,value:Yq(this,n),writable:!1})})}attach(e){this.address=e}connect(e){this.providerOrAccount=e}async deployed(){return this.deployTransactionHash&&(await this.providerOrAccount.waitForTransaction(this.deployTransactionHash),this.deployTransactionHash=void 0),this}async call(e,t=[],r={}){const n=r?.blockIdentifier||void 0;assert5(this.address!==null,"contract is not connected to an address"),this.checkCalldata.validateMethodAndArgs("CALL",e,t);const{inputs:a}=this.abi.find(s=>s.name===e),i=this.checkCalldata.compileCalldata(t,a);return this.providerOrAccount.callContract({contractAddress:this.address,calldata:i,entrypoint:e},n).then(s=>this.parseResponse(e,s.result))}invoke(e,t=[],r={}){assert5(this.address!==null,"contract is not connected to an address"),this.checkCalldata.validateMethodAndArgs("INVOKE",e,t);const{inputs:n}=this.abi.find(o=>o.name===e),a=n.reduce((o,c)=>/_len$/.test(c.name)?o:o+1,0);if(t.length!==a)throw Error(`Invalid number of arguments, expected ${a} arguments, but got ${t.length}`);const i=this.checkCalldata.compileCalldata(t,n),s={contractAddress:this.address,calldata:i,entrypoint:e};if("execute"in this.providerOrAccount)return this.providerOrAccount.execute(s,void 0,{maxFee:r.maxFee,nonce:r.nonce});if(!r.nonce)throw new Error("Nonce is required when invoking a function without an account");return console.warn(`Invoking ${e} without an account. This will not work on a public node.`),this.providerOrAccount.invokeFunction({...s,signature:r.signature||[]},{nonce:r.nonce})}async estimate(e,t=[]){assert5(this.address!==null,"contract is not connected to an address"),this.checkCalldata.validateMethodAndArgs("INVOKE",e,t);const r=this.populateTransaction[e](...t);if("estimateInvokeFee"in this.providerOrAccount)return this.providerOrAccount.estimateInvokeFee(r);throw Error("Contract must be connected to the account contract to estimate")}populate(e,t=[]){const{inputs:r}=this.abi.find(n=>n.name===e);return{contractAddress:this.address,entrypoint:e,calldata:this.checkCalldata.compileCalldata(t,r)}}parseResponseStruct(e,t){return t in this.structs&&this.structs[t]?this.structs[t].members.reduce((r,n)=>(r[n.name]=this.parseResponseStruct(e,n.type),r),{}):v1(e.next().value)}parseResponseField(e,t,r){const{name:n,type:a}=t,i=[];switch(!0){case/_len$/.test(n):return v1(e.next().value).toNumber();case/\(felt/.test(a):return a.split(",").reduce(s=>(s.push(v1(e.next().value)),s),[]);case/\*/.test(a):if(r&&r[`${n}_len`]){const s=r[`${n}_len`];for(;i.lengthi.name===e),n=t.flat()[Symbol.iterator](),a=r.flat().reduce((i,s)=>(i[s.name]=this.parseResponseField(n,s,i),i[s.name]&&i[`${s.name}_len`]&&delete i[`${s.name}_len`],i),{});return Object.entries(a).reduce((i,[s,o])=>(i.push(o),i[s]=o,i),[])}},Rae=class{},Mae=class{constructor(e,t,r,n=e.abi){this.abi=n,this.compiledContract=e,this.account=r,this.classHash=t,this.checkCalldata=new Px(n)}async deploy(e=[],t){this.checkCalldata.validateMethodAndArgs("DEPLOY","constructor",e);const{inputs:r}=this.abi.find(o=>o.type==="constructor"),n=this.checkCalldata.compileCalldata(e,r),{deploy:{contract_address:a,transaction_hash:i}}=await this.account.declareDeploy({contract:this.compiledContract,classHash:this.classHash,constructorCalldata:n,salt:t});assert6(!!a,"Deployment of the contract failed");const s=new Ux(this.compiledContract.abi,a,this.account);return s.deployTransactionHash=i,s}connect(e){return this.account=e,this}attach(e){return new Ux(this.abi,e,this.account)}},Bae=class{},Jq={};Fi(Jq,{fromCallsToExecuteCalldata:()=>O0,fromCallsToExecuteCalldataWithNonce:()=>Xq,transformCallsToMulticallArrays:()=>Fx});var Fx=e=>{const t=[],r=[];return e.forEach(n=>{const a=n.calldata||[];t.push({to:wt(n.contractAddress).toString(10),selector:wt(Vc(n.entrypoint)).toString(10),data_offset:r.length.toString(),data_len:a.length.toString()}),r.push(...a)}),{callArray:t,calldata:ii(r)}},O0=e=>{const{callArray:t,calldata:r}=Fx(e);return[t.length.toString(),...t.map(({to:n,selector:a,data_offset:i,data_len:s})=>[n,a,i,s]).flat(),r.length.toString(),...r]},Xq=(e,t)=>[...O0(e),wt(t).toString()],Qq={};Fi(Qq,{encodeData:()=>Gx,encodeType:()=>Zx,encodeValue:()=>Xy,getDependencies:()=>Jy,getMessageHash:()=>Qy,getStructHash:()=>N0,getTypeHash:()=>Kx,isMerkleTreeType:()=>qx,prepareSelector:()=>zx});var eZ={};Fi(eZ,{MerkleTree:()=>Jd,proofMerklePath:()=>Hx});var Jd=class{constructor(e){this.branches=[],this.leaves=e,this.root=this.build(e)}build(e){if(e.length===1)return e[0];e.length!==this.leaves.length&&this.branches.push(e);const t=[];for(let r=0;ra.gte(i)?1:-1);return p1([r,n])}getProof(e,t=this.leaves,r=[]){const n=t.indexOf(e);if(n===-1)throw new Error("leaf not found");if(t.length===1)return r;const a=n%2===0,i=(a?t[n+1]:t[n-1])??"0x0",s=[...r,i],o=this.leaves.length===t.length?-1:this.branches.findIndex(d=>d.length===t.length),c=this.branches[o+1]??[this.root];return this.getProof(Jd.hash(a?e:i,a?i:e),c,s)}};function Hx(e,t,r){if(r.length===0)return e===t;const[n,...a]=r;return Hx(e,Jd.hash(t,n),a)}var tZ={};Fi(tZ,{decodeShortString:()=>Vx,encodeShortString:()=>Yy,isASCII:()=>Wy,isDecimalString:()=>$x,isShortString:()=>jx});function Wy(e){return/^[\x00-\x7F]*$/.test(e)}function jx(e){return e.length<=31}function $x(e){return/^[0-9]*$/i.test(e)}function Yy(e){if(!Wy(e))throw new Error(`${e} is not an ASCII string`);if(!jx(e))throw new Error(`${e} is too long`);return oa(e.replace(/./g,t=>t.charCodeAt(0).toString(16)))}function Vx(e){if(!Wy(e))throw new Error(`${e} is not an ASCII string`);if($o(e))return ro(e).replace(/.{2}/g,t=>String.fromCharCode(parseInt(t,16)));if($x(e))return Vx("0X".concat(BigInt(e).toString(16)));throw new Error(`${e} is not Hex or decimal`)}var rZ=e=>{const t=e;return!!(t.types&&t.primaryType&&t.message)};function nZ(e){try{return er(wt(e))}catch{if(typeof e=="string")return er(wt(Yy(e)));throw new Error(`Invalid BigNumberish: ${e}`)}}function zx(e){return $o(e)?e:Vc(e)}function qx(e){return e.type==="merkletree"}var Jy=(e,t,r=[])=>(t[t.length-1]==="*"&&(t=t.slice(0,-1)),r.includes(t)||!e[t]?r:[t,...e[t].reduce((n,a)=>[...n,...Jy(e,a.type,n).filter(i=>!n.includes(i))],[])]);function aZ(e,t){if(t.parent&&t.key){const n=e[t.parent].find(i=>i.name===t.key);if(!qx(n))throw new Error(`${t.key} is not a merkle tree`);if(n.contains.endsWith("*"))throw new Error(`Merkle tree contain property must not be an array but was given ${t.key}`);return n.contains}return"raw"}var Zx=(e,t)=>{const[r,...n]=Jy(e,t);return(r?[r,...n.sort()]:[]).map(i=>`${i}(${e[i].map(s=>`${s.name}:${s.type}`)})`).join("")},Kx=(e,t)=>Vc(Zx(e,t)),Xy=(e,t,r,n={})=>{if(e[t])return[t,N0(e,t,r)];if(Object.keys(e).map(a=>`${a}*`).includes(t)){const a=r.map(i=>N0(e,t.slice(0,-1),i));return[t,Zo(a)]}if(t==="merkletree"){const a=aZ(e,n),i=r.map(o=>Xy(e,a,o)[1]),{root:s}=new Jd(i);return["felt",s]}return t==="felt*"?["felt*",Zo(r)]:t==="selector"?["felt",zx(r)]:[t,nZ(r)]},Gx=(e,t,r)=>{const[n,a]=e[t].reduce(([i,s],o)=>{if(r[o.name]===void 0||r[o.name]===null)throw new Error(`Cannot encode data: missing data for '${o.name}'`);const c=r[o.name],[d,l]=Xy(e,o.type,c,{parent:t,key:o.name});return[[...i,d],[...s,l]]},[["felt"],[Kx(e,t)]]);return[n,a]},N0=(e,t,r)=>Zo(Gx(e,t,r)[1]),Qy=(e,t)=>{if(!rZ(e))throw new Error("Typed data does not match JSON schema");const r=[Yy("StarkNet Message"),N0(e.types,"StarkNetDomain",e.domain),t,N0(e.types,e.primaryType,e.message)];return Zo(r)},iZ=class{constructor(e=Uy()){this.keyPair=e}async getPubKey(){return Fy(this.keyPair)}async signMessage(e,t){const r=Qy(e,t);return A0(this.keyPair,r)}async signTransaction(e,t,r){if(r&&r.length!==e.length)throw new Error("ABI must be provided for each transaction or no transaction");const n=O0(e),a=Ax(t.walletAddress,t.version,n,t.maxFee,t.chainId,t.nonce);return A0(this.keyPair,a)}async signDeployAccountTransaction({classHash:e,contractAddress:t,constructorCalldata:r,addressSalt:n,maxFee:a,version:i,chainId:s,nonce:o}){const c=xx(t,e,r,n,i,a,s,o);return A0(this.keyPair,c)}async signDeclareTransaction({classHash:e,senderAddress:t,chainId:r,maxFee:n,version:a,nonce:i}){const s=Ex(e,t,a,n,r,i);return A0(this.keyPair,s)}};function sZ(e){if(!e.events)throw new Error("UDC emited event is empty");const t=e.events.find(r=>Ny(r.from_address)===Ny(zf.ADDRESS))||{data:[]};return{transaction_hash:e.transaction_hash,contract_address:t.data[0],address:t.data[0],deployer:t.data[1],unique:t.data[2],classHash:t.data[3],calldata_len:t.data[4],calldata:t.data.slice(5,5+parseInt(t.data[4],16)),salt:t.data[t.data.length-1]}}var oZ=class extends _1{constructor(e,t,r){super(e),this.address=t.toLowerCase(),this.signer="getPubKey"in r?r:new iZ(r)}async getNonce(e){return super.getNonceForAddress(this.address,e)}async estimateFee(e,t){return this.estimateInvokeFee(e,t)}async estimateInvokeFee(e,{nonce:t,blockIdentifier:r}={}){const n=Array.isArray(e)?e:[e],a=wt(t??await this.getNonce()),i=wt(Kd),s=await this.getChainId(),o={walletAddress:this.address,nonce:a,maxFee:wi,version:i,chainId:s},c=await this.buildInvocation(n,o),d=await super.getInvokeEstimateFee({...c},{version:i,nonce:a},r),l=Wd(d.overall_fee);return{...d,suggestedMaxFee:l}}async estimateDeclareFee({classHash:e,contract:t},{blockIdentifier:r,nonce:n}={}){const a=wt(n??await this.getNonce()),i=wt(Kd),s=await this.getChainId(),o=await this.buildDeclarePayload({classHash:e,contract:t},{nonce:a,chainId:s,version:i,walletAddress:this.address,maxFee:wi}),c=await super.getDeclareEstimateFee({...o},{version:i,nonce:a},r),d=Wd(c.overall_fee);return{...c,suggestedMaxFee:d}}async estimateAccountDeployFee({classHash:e,addressSalt:t=0,constructorCalldata:r=[],contractAddress:n},{blockIdentifier:a}={}){const i="0x0",s=wt(Kd),o=await this.getChainId(),c=await this.buildAccountDeployPayload({classHash:e,addressSalt:t,constructorCalldata:r,contractAddress:n},{nonce:i,chainId:o,version:s,walletAddress:this.address,maxFee:wi}),d=await super.getDeployAccountEstimateFee({...c},{version:s,nonce:i},a),l=Wd(d.overall_fee);return{...d,suggestedMaxFee:l}}async estimateDeployFee(e,t){const r=this.buildUDCContractPayload(e);return this.estimateInvokeFee(r,t)}async estimateFeeBulk(e,{nonce:t,blockIdentifier:r}={}){const n=wt(t??await this.getNonce()),a=wt(Kd),i=await this.getChainId(),s=await Promise.all([].concat(e).map(async(c,d)=>{const l={walletAddress:this.address,nonce:wt(Number(n)+d),maxFee:wi,version:a,chainId:i},y=c.payload;let M;if(typeof c=="object"&&c.type==="INVOKE_FUNCTION")M={type:"INVOKE_FUNCTION",...await this.buildInvocation(Array.isArray(y)?y:[y],l),version:a,nonce:wt(Number(n)+d),blockIdentifier:r};else if(typeof c=="object"&&c.type==="DECLARE")M={type:"DECLARE",...await this.buildDeclarePayload(y,l),version:a,nonce:wt(Number(n)+d),blockIdentifier:r};else if(typeof c=="object"&&c.type==="DEPLOY_ACCOUNT")M={type:"DEPLOY_ACCOUNT",...await this.buildAccountDeployPayload(y,l),version:a,nonce:n,blockIdentifier:r};else if(typeof c=="object"&&c.type==="DEPLOY"){const j=this.buildUDCContractPayload(y);M={type:"INVOKE_FUNCTION",...await this.buildInvocation(j,l),version:a,nonce:wt(Number(n)+d),blockIdentifier:r}}return M})),o=await super.getEstimateFeeBulk(s,r);return[].concat(o).map(c=>{const d=Wd(c.overall_fee);return{...c,suggestedMaxFee:d}})}async buildInvocation(e,t){const r=O0(e),n=await this.signer.signTransaction(e,t);return{contractAddress:this.address,calldata:r,signature:n}}async execute(e,t=void 0,r={}){const n=Array.isArray(e)?e:[e],a=wt(r.nonce??await this.getNonce()),i=r.maxFee??await this.getSuggestedMaxFee({type:"INVOKE",payload:e},r),s=wt(T0),o=await this.getChainId(),c={walletAddress:this.address,nonce:a,maxFee:i,version:s,chainId:o},d=await this.signer.signTransaction(n,c,t),l=O0(n);return this.invokeFunction({contractAddress:this.address,calldata:l,signature:d},{nonce:a,maxFee:i,version:s})}async declare({classHash:e,contract:t},r={}){const n=wt(r.nonce??await this.getNonce()),a=r.maxFee??await this.getSuggestedMaxFee({type:"DECLARE",payload:{classHash:e,contract:t}},r),i=wt(T0),s=await this.getChainId(),o=await this.signer.signDeclareTransaction({classHash:e,senderAddress:this.address,chainId:s,maxFee:a,version:i,nonce:n}),c=g1(t);return this.declareContract({contractDefinition:c,senderAddress:this.address,signature:o},{nonce:n,maxFee:a,version:i})}async deploy(e,t){const r=[].concat(e).map(s=>{const{classHash:o,salt:c,unique:d=!0,constructorCalldata:l=[]}=s,y=Gd(l),M=c??Hy();return{call:{contractAddress:zf.ADDRESS,entrypoint:zf.ENTRYPOINT,calldata:[o,M,By(d),y.length,...y]},address:b1(d?p1([this.address,M]):M,o,y,d?zf.ADDRESS:0)}}),n=r.map(s=>s.call),a=r.map(s=>s.address);return{...await this.execute(n,void 0,t),contract_address:a}}async deployContract(e,t){const r=await this.deploy(e,t),n=await this.waitForTransaction(r.transaction_hash,void 0,["ACCEPTED_ON_L2"]);return sZ(n)}async declareDeploy(e,t){const{classHash:r,contract:n,constructorCalldata:a,salt:i,unique:s}=e,{transaction_hash:o}=await this.declare({contract:n,classHash:r},t),c=await this.waitForTransaction(o,void 0,["ACCEPTED_ON_L2"]),d=await this.deployContract({classHash:r,salt:i,unique:s,constructorCalldata:a},t);return{declare:{...c,class_hash:r},deploy:d}}async deployAccount({classHash:e,constructorCalldata:t=[],addressSalt:r=0,contractAddress:n},a={}){const i="0x0",s=wt(T0),o=await this.getChainId(),c=n??b1(r,e,t,0),d=a.maxFee??await this.getSuggestedMaxFee({type:"DEPLOY_ACCOUNT",payload:{classHash:e,constructorCalldata:t,addressSalt:r,contractAddress:c}},a),l=await this.signer.signDeployAccountTransaction({classHash:e,constructorCalldata:t,contractAddress:c,addressSalt:r,chainId:o,maxFee:d,version:s,nonce:i});return this.deployAccountContract({classHash:e,addressSalt:r,constructorCalldata:t,signature:l},{nonce:i,maxFee:d,version:s})}async signMessage(e){return this.signer.signMessage(e,this.address)}async hashMessage(e){return Qy(e,this.address)}async verifyMessageHash(e,t){try{return await this.callContract({contractAddress:this.address,entrypoint:"isValidSignature",calldata:Gd({hash:wt(e).toString(),signature:t.map(r=>wt(r).toString())})}),!0}catch{return!1}}async verifyMessage(e,t){const r=await this.hashMessage(e);return this.verifyMessageHash(r,t)}async getSuggestedMaxFee({type:e,payload:t},r){let n;switch(e){case"INVOKE":n=await this.estimateInvokeFee(t,r);break;case"DECLARE":n=await this.estimateDeclareFee(t,r);break;case"DEPLOY_ACCOUNT":n=await this.estimateAccountDeployFee(t,r);break;case"DEPLOY":n=await this.estimateDeployFee(t,r);break;default:n={suggestedMaxFee:wi,overall_fee:wi};break}return n.suggestedMaxFee.toString()}async buildDeclarePayload({classHash:e,contract:t},{nonce:r,chainId:n,version:a,walletAddress:i,maxFee:s}){const o=g1(t),c=await this.signer.signDeclareTransaction({classHash:e,senderAddress:i,chainId:n,maxFee:s,version:a,nonce:r});return{senderAddress:i,signature:c,contractDefinition:o}}async buildAccountDeployPayload({classHash:e,addressSalt:t=0,constructorCalldata:r=[],contractAddress:n},{nonce:a,chainId:i,version:s,maxFee:o}){const c=n??b1(t,e,r,0),d=await this.signer.signDeployAccountTransaction({classHash:e,contractAddress:c,chainId:i,maxFee:o,version:s,nonce:a,addressSalt:t,constructorCalldata:r});return{classHash:e,addressSalt:t,constructorCalldata:r,signature:d}}buildUDCContractPayload(e){return[].concat(e).map(r=>{const{classHash:n,salt:a="0",unique:i=!0,constructorCalldata:s=[]}=r,o=Gd(s);return{contractAddress:zf.ADDRESS,entrypoint:zf.ENTRYPOINT,calldata:[n,a,By(i),o.length,...o]}})}async simulateTransaction(e,{nonce:t,blockIdentifier:r}={}){const n=Array.isArray(e)?e:[e],a=wt(t??await this.getNonce()),i=wt(Kd),s=await this.getChainId(),o={walletAddress:this.address,nonce:a,maxFee:wi,version:i,chainId:s},c=await this.buildInvocation(n,o),d=await super.getSimulateTransaction(c,{version:i,nonce:a},r),l=Wd(d.fee_estimation.overall_fee);return{...d,fee_estimation:{...d.fee_estimation,suggestedMaxFee:l}}}async getStarkName(e=this.address,t){return super.getStarkName(e,t)}},Pae=class extends null{},cZ={};Fi(cZ,{UINT_128_MAX:()=>dZ,UINT_256_MAX:()=>Wx,bnToUint256:()=>uZ,isUint256:()=>Yx,uint256ToBN:()=>fZ});function fZ(e){return wt(e.high).shln(128).add(wt(e.low))}var dZ=wt(1).shln(128).sub(wt(1)),Wx=wt(1).shln(256).sub(wt(1));function Yx(e){return wt(e).lte(Wx)}function uZ(e){const t=wt(e);if(!Yx(t))throw new Error("Number is too large");return{low:oa(t.maskn(128).toString(16)),high:oa(t.shrn(128).toString(16))}}function lZ(e){return oa(ro(er(wt(e))).padStart(64,"0"))}function hZ(e){no(e,wi,hx,"Starknet Address");const t=lZ(e);if(!t.match(/^(0x)?[0-9a-fA-F]{64}$/))throw new Error("Invalid Address Format");return t}function pZ(e){const t=ro(hZ(e)).toLowerCase().split(""),r=arrayify(yx(e),{hexPad:"left"});for(let n=0;n>1]>>4>=8&&(t[n]=t[n].toUpperCase()),(r[n>>1]&15)>=8&&(t[n+1]=t[n+1].toUpperCase());return oa(t.join(""))}function Dae(e){return pZ(e)===e}class bZ extends oZ{constructor(t,r){const n=gx.getKeyPair(0);super(r||Bx,t,n)}async execute(t,r,n){const[a,i]=await Hg.execute.parseAsync([t,n]);An({type:"EXECUTE_TRANSACTION",data:{transactions:a,transactionsDetail:i}});const{actionHash:s}=await hn("EXECUTE_TRANSACTION_RES",1e3);An({type:"OPEN_UI"});const o=await Promise.race([hn("TRANSACTION_SUBMITTED",11*60*1e3,c=>c.data.actionHash===s),hn("TRANSACTION_FAILED",10*60*1e3,c=>c.data.actionHash===s).then(()=>"error").catch(()=>(An({type:"TRANSACTION_FAILED",data:{actionHash:s}}),"timeout"))]);if(o==="error")throw Error("User abort");if(o==="timeout")throw Error("User action timed out");return{transaction_hash:o.txHash}}async signMessage(t,r={skipDeploy:!1}){return d1({...t,skipDeploy:r.skipDeploy})}}function R0(e){return gZ.test(e)}var gZ=/^-?[0-9]+$/;function Jx(e){return mZ.test(e)}var mZ=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function yZ(e,t){var r=parseFloat(e),n=String(r),a=Qx(e),i=Qx(n);if(a===i)return!0;if(t?.approx===!0){var s=14;if(!R0(e)&&i.length>=s&&a.startsWith(i.substring(0,s)))return!0}return!1}var Xd=function(e){return e.underflow="underflow",e.overflow="overflow",e.truncate_integer="truncate_integer",e.truncate_float="truncate_float",e}({});function Xx(e){if(!yZ(e,{approx:!1})){if(R0(e))return Xd.truncate_integer;var t=parseFloat(e);return isFinite(t)?t===0?Xd.underflow:Xd.truncate_float:Xd.overflow}}function Lae(e,t){var r=parseFloat(e),n=Xx(e);if(t?.approx===!0?n&&n!==Xd.truncate_float:n){var a=n.replace(/_\w+$/,"");throw new Error("Cannot safely convert to number: "+"the value '".concat(e,"' would ").concat(a," and become ").concat(r))}return r}function Qx(e){return e.replace(_Z,"").replace(wZ,"").replace(EZ,"").replace(vZ,"")}var _Z=/[eE][+-]?\d+$/,vZ=/^-?(0*)?/,wZ=/\./,EZ=/0+$/;function Qd(e){"@babel/helpers - typeof";return Qd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Qd(e)}function xZ(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function eA(e,t){for(var r=0;r15)throw new Error("Invalid number: contains more than 15 digits and is most likely truncated and unsafe by itself "+"(value: ".concat(e,")"));if(isNaN(e))throw new Error("Invalid number: NaN");if(!isFinite(e))throw new Error("Invalid number: "+e);return new rA(String(e))}function IZ(e){return new rA(e)}function CZ(e){return R0(e)?BigInt(e):parseFloat(e)}function e3(e){"@babel/helpers - typeof";return e3=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},e3(e)}function OZ(e,t){return t3({"":e},"",e,t)}function t3(e,t,r,n){return Array.isArray(r)?n.call(e,t,RZ(r,n)):r&&e3(r)==="object"&&!kZ(r)?n.call(e,t,NZ(r,n)):n.call(e,t,r)}function NZ(e,t){return Object.keys(e).forEach(function(r){var n=t3(e,r,e[r],t);n!==void 0?e[r]=n:delete e[r]}),e}function RZ(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r2&&arguments[2]!==void 0?arguments[2]:IZ,n=0,a=o();return G(a),fe(),t?OZ(a,t):a;function i(){if(e.charCodeAt(n)===$Z){n++,d();for(var je={},X=!0;nje)return r(e.slice(je,n))}function M(){if(e.charCodeAt(n)!==YZ)throw new SyntaxError("Comma ',' expected after value ".concat(Je()));n++}function j(){if(e.charCodeAt(n)!==XZ)throw new SyntaxError("Colon ':' expected after property name ".concat(Je()));n++}function G(je){if(je===void 0)throw new SyntaxError("JSON value expected ".concat(Je()))}function $(je){if(je===void 0)throw new SyntaxError("Array item expected ".concat(Je()))}function fe(){if(n=o3&&e<=c3||e>=QZ&&e<=nK||e>=eK&&e<=aK}function E1(e){return e>=o3&&e<=c3}function UZ(e){return e>=WZ&&e<=c3}function FZ(e){return e>=32&&e<=1114111}function i3(e,t){if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t))return e.length===t.length&&e.every(function(n,a){return i3(n,t[a])});if(aA(e)&&aA(t)){var r=n3(new Set([].concat(n3(Object.keys(e)),n3(Object.keys(t)))));return r.every(function(n){return i3(e[n],t[n])})}return!1}function aA(e){return r3(e)==="object"&&e!==null}var HZ={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` +`,r:"\r",t:" "},jZ=92,$Z=123,iA=125,VZ=91,sA=93,zZ=32,qZ=10,ZZ=9,KZ=13,s3=34,GZ=43,oA=45,o3=48,WZ=49,c3=57,YZ=44,JZ=46,XZ=58,QZ=65,eK=97,tK=69,rK=101,nK=70,aK=102;function x1(e){"@babel/helpers - typeof";return x1=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},x1(e)}function cA(e,t,r,n){var a=iK(r),i=typeof t=="function"?t.call({"":e},"",e):e;return s(i,"");function s(l,y){if(Array.isArray(n)){var M=n.find(function(G){return G.test(l)});if(M){var j=M.stringify(l);if(typeof j!="string"||!Jx(j))throw new Error("Invalid JSON number: output of a number stringifier must be a string containing a JSON number "+"(output: ".concat(j,")"));return j}}if(typeof l=="boolean"||typeof l=="number"||typeof l=="string"||l===null||l instanceof Date||l instanceof Boolean||l instanceof Number||l instanceof String)return JSON.stringify(l);if(l&&l.isLosslessNumber||typeof l=="bigint")return l.toString();if(Array.isArray(l))return o(l,y);if(l&&x1(l)==="object")return c(l,y)}function o(l,y){if(l.length===0)return"[]";for(var M=a?y+a:void 0,j=a?`[ +`:"[",G=0;G{for(var r in t)sK(e,r,{get:t[r],enumerable:!0})},oK={};ka(oK,{ADDR_BOUND:()=>h3,API_VERSION:()=>EA,BN_FEE_TRANSACTION_VERSION_1:()=>_A,BN_FEE_TRANSACTION_VERSION_2:()=>vA,BN_TRANSACTION_VERSION_1:()=>u3,BN_TRANSACTION_VERSION_2:()=>l3,BaseUrl:()=>AA,HEX_STR_TRANSACTION_VERSION_1:()=>mA,HEX_STR_TRANSACTION_VERSION_2:()=>yA,IS_BROWSER:()=>fA,MASK_250:()=>wA,MAX_STORAGE_ITEM_SIZE:()=>xA,NetworkName:()=>p3,RPC_DEFAULT_VERSION:()=>kA,RPC_NODES:()=>IA,StarknetChainId:()=>TA,TEXT_TO_FELT_MAX_LEN:()=>d3,TransactionHashPrefix:()=>SA,UDC:()=>Zf,ZERO:()=>si});var cK={};ka(cK,{IS_BROWSER:()=>fA,addHexPrefix:()=>Ha,arrayBufferToString:()=>dA,atobUniversal:()=>uA,btoaUniversal:()=>lA,buf2hex:()=>hA,calcByteLength:()=>bA,padLeft:()=>pA,pascalToSnake:()=>lK,removeHexPrefix:()=>Ko,sanitizeBytes:()=>gA,sanitizeHex:()=>uK,stringToArrayBuffer:()=>fK,utf8ToArray:()=>eu});var fA=typeof window<"u",f3="0";function dA(e){return new Uint8Array(e).reduce((t,r)=>t+String.fromCharCode(r),"")}function eu(e){return new TextEncoder().encode(e)}function fK(e){return eu(e)}function uA(e){return pu.decode(e)}function lA(e){return pu.encode(new Uint8Array(e))}function hA(e){return e.reduce((t,r)=>t+r.toString(16).padStart(2,"0"),"")}function Ko(e){return e.replace(/^0x/i,"")}function Ha(e){return`0x${Ko(e)}`}function dK(e,t,r,n=f3){const a=t-e.length;let i=e;if(a>0){const s=n.repeat(a);i=r?s+e:e+s}return i}function pA(e,t,r=f3){return dK(e,t,!0,r)}function bA(e,t=8){const{length:r}=e,n=r%t;return n?(r-n)/t*t+t:r}function gA(e,t=8,r=f3){return pA(e,bA(e,t),r)}function uK(e){return e=Ko(e),e=gA(e,2),e&&(e=Ha(e)),e}var lK=e=>/[a-z]/.test(e)?e.split(/(?=[A-Z])/).join("_").toUpperCase():e,d3=31,mA="0x1",yA="0x2",u3=1n,l3=2n,_A=2n**128n+u3,vA=2n**128n+l3,si=0n,wA=2n**250n-1n,EA=si,xA=256n,h3=2n**251n-xA,AA=(e=>(e.SN_MAIN="https://alpha-mainnet.starknet.io",e.SN_GOERLI="https://alpha4.starknet.io",e.SN_SEPOLIA="https://alpha-sepolia.starknet.io",e))(AA||{}),p3=(e=>(e.SN_MAIN="SN_MAIN",e.SN_GOERLI="SN_GOERLI",e.SN_SEPOLIA="SN_SEPOLIA",e))(p3||{}),TA=(e=>(e.SN_MAIN="0x534e5f4d41494e",e.SN_GOERLI="0x534e5f474f45524c49",e.SN_SEPOLIA="0x534e5f5345504f4c4941",e))(TA||{}),SA=(e=>(e.DECLARE="0x6465636c617265",e.DEPLOY="0x6465706c6f79",e.DEPLOY_ACCOUNT="0x6465706c6f795f6163636f756e74",e.INVOKE="0x696e766f6b65",e.L1_HANDLER="0x6c315f68616e646c6572",e))(SA||{}),Zf={ADDRESS:"0x041a78e741e5af2fec34b695679bc6891742439f7afb8484ecd7766661ad02bf",ENTRYPOINT:"deployContract"},kA="v0_5",IA={SN_GOERLI:["https://starknet-testnet.public.blastapi.io/rpc/","https://free-rpc.nethermind.io/goerli-juno/"],SN_MAIN:["https://starknet-mainnet.public.blastapi.io/rpc/","https://free-rpc.nethermind.io/mainnet-juno/"],SN_SEPOLIA:["https://starknet-sepolia.public.blastapi.io/rpc/","https://free-rpc.nethermind.io/sepolia-juno/"]},hK={};ka(hK,{BlockStatus:()=>DA,BlockTag:()=>m3,EntryPointType:()=>NA,Literal:()=>g3,RPC:()=>Ei,SIMULATION_FLAG:()=>CA,Sequencer:()=>mK,TransactionExecutionStatus:()=>PA,TransactionFinalityStatus:()=>BA,TransactionStatus:()=>MA,TransactionType:()=>RA,TypedDataRevision:()=>y3,Uint:()=>b3,ValidateType:()=>OA});var CA=(e=>(e.SKIP_VALIDATE="SKIP_VALIDATE",e.SKIP_EXECUTE="SKIP_EXECUTE",e))(CA||{}),OA=(e=>(e.DEPLOY="DEPLOY",e.CALL="CALL",e.INVOKE="INVOKE",e))(OA||{}),b3=(e=>(e.u8="core::integer::u8",e.u16="core::integer::u16",e.u32="core::integer::u32",e.u64="core::integer::u64",e.u128="core::integer::u128",e.u256="core::integer::u256",e))(b3||{}),g3=(e=>(e.ClassHash="core::starknet::class_hash::ClassHash",e.ContractAddress="core::starknet::contract_address::ContractAddress",e))(g3||{}),NA=(e=>(e.EXTERNAL="EXTERNAL",e.L1_HANDLER="L1_HANDLER",e.CONSTRUCTOR="CONSTRUCTOR",e))(NA||{}),RA=(e=>(e.DECLARE="DECLARE",e.DEPLOY="DEPLOY",e.DEPLOY_ACCOUNT="DEPLOY_ACCOUNT",e.INVOKE="INVOKE_FUNCTION",e))(RA||{}),MA=(e=>(e.NOT_RECEIVED="NOT_RECEIVED",e.RECEIVED="RECEIVED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e.REJECTED="REJECTED",e.REVERTED="REVERTED",e))(MA||{}),BA=(e=>(e.NOT_RECEIVED="NOT_RECEIVED",e.RECEIVED="RECEIVED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(BA||{}),PA=(e=>(e.REJECTED="REJECTED",e.REVERTED="REVERTED",e.SUCCEEDED="SUCCEEDED",e))(PA||{}),DA=(e=>(e.PENDING="PENDING",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.REJECTED="REJECTED",e))(DA||{}),m3=(e=>(e.pending="pending",e.latest="latest",e))(m3||{}),y3=(e=>(e.Active="1",e.Legacy="0",e))(y3||{}),Ei={};ka(Ei,{EBlockTag:()=>$A,EDataAvailabilityMode:()=>VA,ESimulationFlag:()=>UA,ETransactionExecutionStatus:()=>jA,ETransactionFinalityStatus:()=>HA,ETransactionStatus:()=>FA,ETransactionType:()=>LA,Errors:()=>bK,JRPC:()=>pK,SPEC:()=>gK});var pK={},bK={},gK={},LA=(e=>(e.DECLARE="DECLARE",e.DEPLOY="DEPLOY",e.DEPLOY_ACCOUNT="DEPLOY_ACCOUNT",e.INVOKE="INVOKE",e.L1_HANDLER="L1_HANDLER",e))(LA||{}),UA=(e=>(e.SKIP_VALIDATE="SKIP_VALIDATE",e.SKIP_FEE_CHARGE="SKIP_FEE_CHARGE",e))(UA||{}),FA=(e=>(e.RECEIVED="RECEIVED",e.REJECTED="REJECTED",e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(FA||{}),HA=(e=>(e.ACCEPTED_ON_L2="ACCEPTED_ON_L2",e.ACCEPTED_ON_L1="ACCEPTED_ON_L1",e))(HA||{}),jA=(e=>(e.SUCCEEDED="SUCCEEDED",e.REVERTED="REVERTED",e))(jA||{}),$A=(e=>(e.LATEST="latest",e.PENDING="pending",e))($A||{}),VA=(e=>(e.L1="L1",e.L2="L2",e))(VA||{}),mK={};function ra(e,t){if(!e)throw new Error(t||"Assertion failure")}var yK={};ka(yK,{assertInRange:()=>ZA,bigNumberishArrayToDecimalStringArray:()=>KA,bigNumberishArrayToHexadecimalStringArray:()=>GA,cleanHex:()=>M0,getDecimalString:()=>WA,getHexString:()=>v3,getHexStringArray:()=>w3,hexToBytes:()=>YA,hexToDecimalString:()=>qA,isBigInt:()=>A1,isHex:()=>Ts,isStringWholeNumber:()=>tu,toBigInt:()=>Ar,toCairoBool:()=>E3,toHex:()=>Zt,toHexString:()=>_3,toStorageKey:()=>zA});function Ts(e){return/^0x[0-9a-f]*$/i.test(e)}function Ar(e){return BigInt(e)}function A1(e){return typeof e=="bigint"}function Zt(e){return Ha(Ar(e).toString(16))}var _3=Zt;function zA(e){return Ha(Ar(e).toString(16).padStart(64,"0"))}function qA(e){return BigInt(Ha(e)).toString(10)}var M0=e=>e.toLowerCase().replace(/^(0x)0+/,"$1");function ZA(e,t,r,n=""){const a=n===""?"invalid length":`invalid ${n} length`,i=BigInt(e),s=BigInt(t),o=BigInt(r);ra(i>=s&&i<=o,`Message not signable, ${a}.`)}function KA(e){return e.map(t=>Ar(t).toString(10))}function GA(e){return e.map(t=>Zt(t))}var tu=e=>/^\d+$/.test(e);function WA(e){if(Ts(e))return qA(e);if(tu(e))return e;throw new Error(`${e} need to be hex-string or whole-number-string`)}function v3(e){if(Ts(e))return e;if(tu(e))return _3(e);throw new Error(`${e} need to be hex-string or whole-number-string`)}function w3(e){return e.map(t=>v3(t))}var E3=e=>(+e).toString();function YA(e){if(!Ts(e))throw new Error(`${e} need to be a hex-string`);let t=Ko(e);return t.length%2!==0&&(t=`0${t}`),nc(t)}var _K={};ka(_K,{getSelector:()=>T1,getSelectorFromName:()=>Ss,keccakBn:()=>x3,starknetKeccak:()=>A3});function x3(e){const t=Ko(Zt(BigInt(e))),r=t.length%2===0?t:`0${t}`;return Ha(fi(YA(Ha(r))).toString(16))}function vK(e){return Ha(fi(eu(e)).toString(16))}function A3(e){return BigInt(vK(e))&wA}function Ss(e){return Zt(A3(e))}function T1(e){return Ts(e)?e:tu(e)?_3(e):Ss(e)}var wK={};ka(wK,{decodeShortString:()=>k3,encodeShortString:()=>Go,isASCII:()=>T3,isDecimalString:()=>JA,isLongText:()=>S3,isShortString:()=>B0,isShortText:()=>EK,isText:()=>P0,splitLongString:()=>S1});function T3(e){return/^[\x00-\x7F]*$/.test(e)}function B0(e){return e.length<=d3}function JA(e){return/^[0-9]*$/i.test(e)}function P0(e){return typeof e=="string"&&!Ts(e)&&!tu(e)}var EK=e=>P0(e)&&B0(e),S3=e=>P0(e)&&!B0(e);function S1(e){const t=RegExp(`[^]{1,${d3}}`,"g");return e.match(t)||[]}function Go(e){if(!T3(e))throw new Error(`${e} is not an ASCII string`);if(!B0(e))throw new Error(`${e} is too long`);return Ha(e.replace(/./g,t=>t.charCodeAt(0).toString(16)))}function k3(e){if(!T3(e))throw new Error(`${e} is not an ASCII string`);if(Ts(e))return Ko(e).replace(/.{2}/g,t=>String.fromCharCode(parseInt(t,16)));if(JA(e))return k3("0X".concat(BigInt(e).toString(16)));throw new Error(`${e} is not Hex or decimal`)}var XA={};ka(XA,{felt:()=>oi,getAbiContractVersion:()=>R1,getArrayType:()=>ru,isCairo1Abi:()=>rT,isCairo1Type:()=>Kc,isLen:()=>Kf,isTypeArray:()=>zc,isTypeBool:()=>N1,isTypeContractAddress:()=>TK,isTypeEnum:()=>Gf,isTypeEthAddress:()=>tT,isTypeFelt:()=>I1,isTypeLiteral:()=>N3,isTypeNamedTuple:()=>eT,isTypeOption:()=>C1,isTypeResult:()=>O1,isTypeStruct:()=>D0,isTypeTuple:()=>qc,isTypeUint:()=>O3,isTypeUint256:()=>Zc,tuple:()=>SK,uint256:()=>R3});var xK={};ka(xK,{UINT_128_MAX:()=>I3,UINT_256_MAX:()=>QA,bnToUint256:()=>AK,isUint256:()=>C3,uint256ToBN:()=>k1});var I3=(1n<<128n)-1n,QA=(1n<<256n)-1n;function k1(e){return(Ar(e.high)<<128n)+Ar(e.low)}function C3(e){return Ar(e)<=QA}function AK(e){const t=Ar(e);if(!C3(t))throw new Error("Number is too large");return{low:Ha((t&I3).toString(16)),high:Ha((t>>128n).toString(16))}}var Kf=e=>/_len$/.test(e),I1=e=>e==="felt"||e==="core::felt252",zc=e=>/\*/.test(e)||e.startsWith("core::array::Array::")||e.startsWith("core::array::Span::"),qc=e=>/^\(.*\)$/i.test(e),eT=e=>/\(.*\)/i.test(e)&&e.includes(":"),D0=(e,t)=>e in t,Gf=(e,t)=>e in t,C1=e=>e.startsWith("core::option::Option::"),O1=e=>e.startsWith("core::result::Result::"),O3=e=>Object.values(b3).includes(e),N3=e=>Object.values(g3).includes(e),Zc=e=>e==="core::integer::u256",N1=e=>e==="core::bool",TK=e=>e==="core::starknet::contract_address::ContractAddress",tT=e=>e==="core::starknet::eth_address::EthAddress",Kc=e=>e.includes("::"),ru=e=>Kc(e)?e.substring(e.indexOf("<")+1,e.lastIndexOf(">")):e.replace("*","");function rT(e){const{cairo:t}=R1(e);if(t===void 0)throw Error("Unable to determine Cairo version");return t==="1"}function R1(e){if(e.find(n=>n.type==="interface"))return{cairo:"1",compiler:"2"};const t=e.find(n=>n.type==="function"&&(n.inputs.length||n.outputs.length));if(!t)return{cairo:void 0,compiler:void 0};const r=t.inputs.length?t.inputs:t.outputs;return Kc(r[0].type)?{cairo:"1",compiler:"1"}:{cairo:"0",compiler:"0"}}var R3=e=>{const t=BigInt(e);if(!C3(t))throw new Error("Number is too large");return{low:(t&I3).toString(10),high:(t>>128n).toString(10)}},SK=(...e)=>({...e});function oi(e){if(A1(e)||typeof e=="number"&&Number.isInteger(e))return e.toString();if(P0(e)){if(!B0(e))throw new Error(`${e} is a long string > 31 chars, felt can store short strings, split it to array of short strings`);const t=Go(e);return BigInt(t).toString()}if(typeof e=="string"&&Ts(e))return BigInt(e).toString();if(typeof e=="string"&&tu(e))return e;if(typeof e=="boolean")return`${+e}`;throw new Error(`${e} can't be computed by felt()`)}var nT=class{constructor(e){yt(this,"variant");const t=Object.values(e);if(t.length===0)throw new Error("This Enum must have at least 1 variant");if(t.filter(n=>typeof n<"u").length!==1)throw new Error("This Enum must have exactly one active variant");this.variant=e}unwrap(){const t=Object.entries(this.variant).find(r=>typeof r[1]<"u");if(!(typeof t>"u"))return t[1]}activeVariant(){const t=Object.entries(this.variant).find(r=>typeof r[1]<"u");return typeof t>"u"?"":t[0]}},aT=(e=>(e[e.Some=0]="Some",e[e.None=1]="None",e))(aT||{}),M3=class{constructor(e,t){yt(this,"Some");yt(this,"None");if(!(e in aT))throw new Error("Wrong variant : should be CairoOptionVariant.Some or .None.");if(e===0){if(typeof t>"u")throw new Error('The creation of a Cairo Option with "Some" variant needs a content as input.');this.Some=t,this.None=void 0}else this.Some=void 0,this.None=!0}unwrap(){if(!this.None)return this.Some}isSome(){return!(typeof this.Some>"u")}isNone(){return this.None===!0}},iT=(e=>(e[e.Ok=0]="Ok",e[e.Err=1]="Err",e))(iT||{}),B3=class{constructor(e,t){yt(this,"Ok");yt(this,"Err");if(!(e in iT))throw new Error("Wrong variant : should be CairoResultVariant.Ok or .Err.");e===0?(this.Ok=t,this.Err=void 0):(this.Ok=void 0,this.Err=t)}unwrap(){if(typeof this.Ok<"u")return this.Ok;if(typeof this.Err<"u")return this.Err;throw new Error("Both Result.Ok and .Err are undefined. Not authorized.")}isOk(){return!(typeof this.Ok>"u")}isErr(){return!(typeof this.Err>"u")}},P3={isBN:(e,t,r)=>{if(!A1(e[r]))throw new Error(`Data and formatter mismatch on ${r}:${t[r]}, expected response data ${r}:${e[r]} to be BN instead it is ${typeof e[r]}`)},unknown:(e,t,r)=>{throw new Error(`Unhandled formatter type on ${r}:${t[r]} for data ${r}:${e[r]}`)}};function M1(e,t,r){return Object.entries(e).reduce((n,[a,i])=>{const s=r??t[a];if(!(a in t)&&!r)return n[a]=i,n;if(s==="string"){if(Array.isArray(e[a])){const o=M1(e[a],e[a].map(c=>s));return n[a]=Object.values(o).join(""),n}return P3.isBN(e,t,a),n[a]=k3(i),n}if(s==="number")return P3.isBN(e,t,a),n[a]=Number(i),n;if(typeof s=="function")return n[a]=s(i),n;if(Array.isArray(s)){const o=M1(e[a],s,s[0]);return n[a]=Object.values(o),n}return typeof s=="object"?(n[a]=M1(e[a],s),n):(P3.unknown(e,t,a),n)},{})}var kK=class{constructor(e){yt(this,"abi");this.abi=e}methodInputsLength(e){return e.inputs.reduce((t,r)=>Kf(r.name)?t:t+1,0)}getMethod(e){return this.abi.find(t=>t.name===e)}getLegacyFormat(){return this.abi}},IK=class{constructor(e){yt(this,"abi");this.abi=e}methodInputsLength(e){return e.inputs.length}getMethod(e){return this.abi.find(r=>r.type==="interface").items.find(r=>r.name===e)}getLegacyFormat(){return this.abi.flatMap(e=>e.type==="interface"?e.items:e)}};function sT(e){const t=CK(e);if(t===0||t===1)return new kK(e);if(t===2)return new IK(e);throw Error(`Unsupported ABI version ${t}`)}function CK(e){return e.find(t=>t.type==="interface")?2:rT(e)?1:0}function oT(e,t,r){return e==="constructor"&&!r&&!t.length}function OK(e){const t=e.substring(0,e.indexOf(":")),r=e.substring(t.length+1);return{name:t,type:r}}function cT(e){if(!e.includes("("))return{subTuple:[],result:e};const t=[];let r="",n=0;for(;nr.length?i.replace(" ",r.shift()):i);return eT(e)&&(a=a.reduce((i,s)=>i.concat(OK(s)),[])),a}function RK(e){const t=e.replace(/\s/g,"").slice(1,-1),{subTuple:r,result:n}=cT(t);return n.split(",").map(i=>r.length?i.replace(" ",r.shift()):i)}function D3(e){return Kc(e)?RK(e):NK(e)}function MK(e){return Error(`Your object includes the property : ${e}, containing an Uint256 object without the 'low' and 'high' keys.`)}function BK(e,t,r,n){const a=(l,y)=>{if(zc(y))return s(l,y);if(Gf(y,n)){const M=n[y];return c(l,M)}if(qc(y))return o(l,y);if(tT(y))return l;if(Zc(y)){const M=l;if(typeof M!="object")return M;if(!("low"in M&&"high"in M))throw MK(y);return{low:M.low,high:M.high}}if(D0(y,r)){const M=r[y].members;return i(l,M)}return l},i=(l,y)=>y.reduce((j,G)=>{const $=fe=>Object.defineProperty(j,G.name,{enumerable:!0,value:fe??l[G.name]});if(l[G.name]==="undefined"&&(Kc(G.type)||!Kf(G.name)))throw Error(`Your object needs a property with key : ${G.name} .`);return $(a(l[G.name],G.type)),j},{});function s(l,y){const M=ru(y);return typeof l=="string"?l:l.map(j=>a(j,M))}function o(l,y){return D3(y).reduce((G,$,fe)=>{const he=Object.keys(l),Oe=et=>Object.defineProperty(G,fe.toString(),{enumerable:!0,value:et??l[he[fe]]}),We=$?.type?$.type:$;return Oe(a(l[he[fe]],We)),G},{})}const c=(l,y)=>{if(O1(y.name)){const $=l,fe=y.name.substring(y.name.indexOf("<")+1,y.name.lastIndexOf(",")),he=y.name.substring(y.name.indexOf(",")+1,y.name.lastIndexOf(">"));return $.isOk()?new B3(0,a(l.unwrap(),fe)):new B3(1,a(l.unwrap(),he))}if(C1(y.name)){const $=l,fe=y.name.substring(y.name.indexOf("<")+1,y.name.lastIndexOf(">"));return $.isSome()?new M3(0,a($.unwrap(),fe)):new M3(1,{})}const M=l,G=Object.entries(M.variant).map($=>{if(typeof $[1]>"u")return $;const fe=y.type.substring(y.type.lastIndexOf("<")+1,y.type.lastIndexOf(">"));return fe==="()"?$:[$[0],a(M.unwrap(),fe)]});return new nT(Object.fromEntries(G))};return t.reduce((l,y)=>{const M=j=>Object.defineProperty(l,y.name,{enumerable:!0,value:j});return Kf(y.name)&&!Kc(y.type)||M(a(e[y.name],y.type)),l},{})}function B1(e,t){switch(!0){case Zc(e):const r=R3(t);return[oi(r.low),oi(r.high)];default:return oi(t)}}function PK(e,t){const r=D3(t),n=Object.values(e);if(n.length!==r.length)throw Error(`ParseTuple: provided and expected abi tuple size do not match. + provided: ${n} + expected: ${r}`);return r.map((a,i)=>({element:n[i],type:a.type??a}))}function fT(e){if(typeof e=="object"){const{low:r,high:n}=e;return[oi(r),oi(n)]}const t=R3(e);return[oi(t.low),oi(t.high)]}function io(e,t,r,n){if(e===void 0)throw Error(`Missing parameter for type ${t}`);if(Array.isArray(e)){const a=[];a.push(oi(e.length));const i=ru(t);return e.reduce((s,o)=>s.concat(io(o,i,r,n)),a)}if(r[t]&&r[t].members.length){if(Zc(t))return fT(e);if(t==="core::starknet::eth_address::EthAddress")return B1(t,e);const{members:a}=r[t],i=e;return a.reduce((s,o)=>s.concat(io(i[o.name],o.type,r,n)),[])}if(qc(t))return PK(e,t).reduce((i,s)=>{const o=io(s.element,s.type,r,n);return i.concat(o)},[]);if(Zc(t))return fT(e);if(Gf(t,n)){const{variants:a}=n[t];if(C1(t)){const y=e;if(y.isSome()){const M=a.find($=>$.name==="Some");if(typeof M>"u")throw Error("Error in abi : Option has no 'Some' variant.");const j=M.type;if(j==="()")return"0";const G=io(y.unwrap(),j,r,n);return Array.isArray(G)?["0",...G]:["0",G]}return"1"}if(O1(t)){const y=e;if(y.isOk()){const $=a.find(Oe=>Oe.name==="Ok");if(typeof $>"u")throw Error("Error in abi : Result has no 'Ok' variant.");const fe=$.type;if(fe==="()")return"0";const he=io(y.unwrap(),fe,r,n);return Array.isArray(he)?["0",...he]:["0",he]}const M=a.find($=>$.name==="Err");if(typeof M>"u")throw Error("Error in abi : Result has no 'Err' variant.");const j=M.type;if(j==="()")return"1";const G=io(y.unwrap(),j,r,n);return Array.isArray(G)?["1",...G]:["1",G]}const i=e,s=i.activeVariant(),o=a.find(y=>y.name===s);if(typeof o>"u")throw Error(`Not find in abi : Enum has no '${s}' variant.`);const c=o.type,d=a.findIndex(y=>y.name===s);if(c==="()")return d.toString();const l=io(i.unwrap(),c,r,n);return Array.isArray(l)?[d.toString(),...l]:[d.toString(),l]}if(typeof e=="object")throw Error(`Parameter ${e} do not align with abi parameter ${t}`);return B1(t,e)}function DK(e,t,r,n){const{name:a,type:i}=t;let{value:s}=e.next();switch(!0){case zc(i):if(!Array.isArray(s)&&!P0(s))throw Error(`ABI expected parameter ${a} to be array or long string, got ${s}`);return typeof s=="string"&&(s=S1(s)),io(s,t.type,r,n);case i==="core::starknet::eth_address::EthAddress":return B1(i,s);case(D0(i,r)||qc(i)||Zc(i)):return io(s,i,r,n);case Gf(i,n):return io(s,i,r,n);default:return B1(i,s)}}function L3(e,t){let r;switch(!0){case N1(e):return r=t.next().value,!!BigInt(r);case Zc(e):const n=t.next().value,a=t.next().value;return k1({low:n,high:a});case e==="core::starknet::eth_address::EthAddress":return r=t.next().value,BigInt(r);default:return r=t.next().value,BigInt(r)}}function Wo(e,t,r,n){if(t.type==="()")return{};if(Zc(t.type)){const a=e.next().value,i=e.next().value;return k1({low:a,high:i})}if(zc(t.type)){const a=[],i={name:"",type:ru(t.type)},s=BigInt(e.next().value);for(;a.length(a[i.name]=Wo(e,i,r,n),a),{});if(n&&t.type in n&&n[t.type]){const a=Number(e.next().value),i=n[t.type].variants.reduce((o,c,d)=>d===a?(o[c.name]=Wo(e,{name:"",type:c.type},r,n),o):(o[c.name]=void 0,o),{});if(t.type.startsWith("core::option::Option")){const o=a===0?i.Some:void 0;return new M3(a,o)}if(t.type.startsWith("core::result::Result")){let o;return a===0?o=i.Ok:o=i.Err,new B3(a,o)}return new nT(i)}if(qc(t.type))return D3(t.type).reduce((i,s,o)=>{const c=s?.name?s.name:o,d=s?.type?s.type:s,l={name:c,type:d};return i[c]=Wo(e,l,r,n),i},{});if(zc(t.type)){const a=[],i={name:"",type:ru(t.type)},s=BigInt(e.next().value);for(;a.length{if(ra(typeof e=="string"||typeof e=="number"||typeof e=="bigint",`Validate: arg ${t.name} should be a felt typed as (String, Number or BigInt)`),typeof e=="string"&&!Ts(e))return;const r=BigInt(e.toString(10));ra(r>=0n&&r<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`)},U3=(e,t)=>{typeof e=="number"&&ra(e<=Number.MAX_SAFE_INTEGER,"Validation: Parameter is to large to be typed as Number use (BigInt or String)"),ra(typeof e=="string"||typeof e=="number"||typeof e=="bigint"||typeof e=="object"&&"low"in e&&"high"in e,`Validate: arg ${t.name} of cairo type ${t.type} should be type (String, Number or BigInt), but is ${typeof e} ${e}.`);const r=typeof e=="object"?k1(e):Ar(e);switch(t.type){case"core::integer::u8":ra(r>=0n&&r<=255n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0 - 255]`);break;case"core::integer::u16":ra(r>=0n&&r<=65535n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 65535]`);break;case"core::integer::u32":ra(r>=0n&&r<=4294967295n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 4294967295]`);break;case"core::integer::u64":ra(r>=0n&&r<=2n**64n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^64-1]`);break;case"core::integer::u128":ra(r>=0n&&r<=2n**128n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^128-1]`);break;case"core::integer::u256":ra(r>=0n&&r<=2n**256n-1n,`Validate: arg ${t.name} is ${t.type} 0 - 2^256-1`);break;case"core::starknet::class_hash::ClassHash":ra(r>=0n&&r<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`);break;case"core::starknet::contract_address::ContractAddress":ra(r>=0n&&r<=2n**252n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^252-1]`);break;default:break}},uT=(e,t)=>{ra(typeof e=="boolean",`Validate: arg ${t.name} of cairo type ${t.type} should be type (Boolean)`)},lT=(e,t,r)=>{if(t.type==="core::integer::u256"){U3(e,t);return}if(t.type==="core::starknet::eth_address::EthAddress"){ra(typeof e!="object",`EthAddress type is waiting a BigNumberish. Got ${e}`);const n=BigInt(e.toString(10));ra(n>=0n&&n<=2n**160n-1n,`Validate: arg ${t.name} cairo typed ${t.type} should be in range [0, 2^160-1]`);return}ra(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} is cairo type struct (${t.type}), and should be defined as js object (not array)`),r[t.type].members.forEach(({name:n})=>{ra(Object.keys(e).includes(n),`Validate: arg ${t.name} should have a property ${n}`)})},hT=(e,t)=>{ra(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} is cairo type Enum (${t.type}), and should be defined as js object (not array)`);const r=Object.getOwnPropertyNames(Object.getPrototypeOf(e)),n=[...Object.getOwnPropertyNames(e),...r];if(!(C1(t.type)&&n.includes("isSome")&&n.includes("isNone"))&&!(O1(t.type)&&n.includes("isOk")&&n.includes("isErr"))&&!(n.includes("variant")&&n.includes("activeVariant")))throw new Error(`Validate Enum: argument ${t.name}, type ${t.type}, value received ${e}, is not an Enum.`)},pT=(e,t)=>{ra(typeof e=="object"&&!Array.isArray(e),`Validate: arg ${t.name} should be a tuple (defined as object)`)},bT=(e,t,r,n)=>{const a=ru(t.type);if(!(I1(a)&&S3(e)))switch(ra(Array.isArray(e),`Validate: arg ${t.name} should be an Array`),!0){case I1(a):e.forEach(i=>dT(i,t));break;case qc(a):e.forEach(i=>pT(i,{name:t.name,type:a}));break;case zc(a):e.forEach(i=>bT(i,{name:"",type:a},r,n));break;case D0(a,r):e.forEach(i=>lT(i,{name:t.name,type:a},r));break;case Gf(a,n):e.forEach(i=>hT(i,{name:t.name,type:a}));break;case(O3(a)||N3(a)):e.forEach(i=>U3(i,t));break;case N1(a):e.forEach(i=>uT(i,t));break;default:throw new Error(`Validate Unhandled: argument ${t.name}, type ${t.type}, value ${e}`)}};function gT(e,t,r,n){e.inputs.reduce((a,i)=>{const s=t[a];switch(!0){case Kf(i.name):return a;case I1(i.type):dT(s,i);break;case(O3(i.type)||N3(i.type)):U3(s,i);break;case N1(i.type):uT(s,i);break;case zc(i.type):bT(s,i,r,n);break;case D0(i.type,r):lT(s,i,r);break;case Gf(i.type,n):hT(s,i);break;case qc(i.type):pT(s,i);break;default:throw new Error(`Validate Unhandled: argument ${i.name}, type ${i.type}, value ${s}`)}return a+1},0)}var On=class{constructor(e){yt(this,"abi");yt(this,"parser");yt(this,"structs");yt(this,"enums");this.structs=On.getAbiStruct(e),this.enums=On.getAbiEnum(e),this.parser=sT(e),this.abi=this.parser.getLegacyFormat()}validate(e,t,r=[]){if(e!=="DEPLOY"){const i=this.abi.filter(s=>{if(s.type!=="function")return!1;const o=s.stateMutability==="view"||s.state_mutability==="view";return e==="INVOKE"?!o:o}).map(s=>s.name);ra(i.includes(t),`${e==="INVOKE"?"invocable":"viewable"} method not found in abi`)}const n=this.abi.find(i=>e==="DEPLOY"?i.name===t&&i.type==="constructor":i.name===t&&i.type==="function");if(oT(t,r,n))return;const a=this.parser.methodInputsLength(n);if(r.length!==a)throw Error(`Invalid number of arguments, expected ${a} arguments, but got ${r.length}`);gT(n,r,this.structs,this.enums)}compile(e,t){const r=this.abi.find(s=>s.name===e);if(oT(e,t,r))return[];let n;if(Array.isArray(t))n=t;else{const s=BK(t,r.inputs,this.structs,this.enums);n=Object.values(s),gT(r,n,this.structs,this.enums)}const a=n[Symbol.iterator](),i=r.inputs.reduce((s,o)=>Kf(o.name)&&!Kc(o.type)?s:s.concat(DK(a,o,this.structs,this.enums)),[]);return Object.defineProperty(i,"__compiled__",{enumerable:!1,writable:!1,value:!0}),i}static compile(e){const t=n=>{const a=(s,o=".")=>{const c=Array.isArray(s)?[s.length.toString(),...s]:s;return Object.entries(c).flatMap(([d,l])=>{let y=l;d==="entrypoint"?y=Ss(y):S3(y)&&(y=S1(y));const M=Array.isArray(c)&&d==="0"?"$$len":d;if(A1(y))return[[`${o}${M}`,oi(y)]];if(Object(y)===y){const j=Object.getOwnPropertyNames(Object.getPrototypeOf(y)),G=[...Object.getOwnPropertyNames(y),...j];if(G.includes("isSome")&&G.includes("isNone")){const $=y,fe=$.isSome()?0:1;return $.isSome()?a({0:fe,1:$.unwrap()},`${o}${M}.`):[[`${o}${M}`,oi(fe)]]}if(G.includes("isOk")&&G.includes("isErr")){const $=y,fe=$.isOk()?0:1;return a({0:fe,1:$.unwrap()},`${o}${M}.`)}if(G.includes("variant")&&G.includes("activeVariant")){const $=y,fe=$.activeVariant(),Oe=Object.keys($.variant).findIndex(We=>We===fe);return typeof $.unwrap()=="object"&&Object.keys($.unwrap()).length===0?[[`${o}${M}`,oi(Oe)]]:a({0:Oe,1:$.unwrap()},`${o}${M}.`)}return a(y,`${o}${M}.`)}return[[`${o}${M}`,oi(y)]]})};return Object.fromEntries(a(n))};let r;if(Array.isArray(e)){const n={...e},a=t(n);r=Object.values(a)}else{const n=t(e);r=Object.values(n)}return Object.defineProperty(r,"__compiled__",{enumerable:!1,writable:!1,value:!0}),r}parse(e,t){const{outputs:r}=this.abi.find(i=>i.name===e),n=t.flat()[Symbol.iterator](),a=r.flat().reduce((i,s,o)=>{const c=s.name??o;return i[c]=P1(n,s,this.structs,this.enums,i),i[c]&&i[`${c}_len`]&&delete i[`${c}_len`],i},{});return Object.keys(a).length===1&&0 in a?a[0]:a}format(e,t,r){const n=this.parse(e,t);return M1(n,r)}static getAbiStruct(e){return e.filter(t=>t.type==="struct").reduce((t,r)=>({...t,[r.name]:r}),{})}static getAbiEnum(e){const t=e.filter(r=>r.type==="enum").reduce((r,n)=>({...r,[n.name]:n}),{});return delete t["core::bool"],t}static toCalldata(e=[]){return On.compile(e)}static toHex(e=[]){return On.compile(e).map(r=>Zt(r))}decodeParameters(e,t){const r=Array.isArray(e)?e:[e],n=t.flat()[Symbol.iterator](),a=r.map(i=>P1(n,{name:"",type:i},this.structs,this.enums));return a.length===1?a[0]:a}},LK={};ka(LK,{calculateContractAddressFromHash:()=>L1,calculateDeclareTransactionHash:()=>xT,calculateDeployAccountTransactionHash:()=>AT,calculateDeployTransactionHash:()=>HK,calculateTransactionHash:()=>TT,calculateTransactionHashCommon:()=>F0,computeCompiledClassHash:()=>IT,computeContractClassHash:()=>OT,computeHashOnElements:()=>Hi,computeLegacyContractClassHash:()=>kT,computePedersenHash:()=>U0,computePedersenHashOnElements:()=>wT,computePoseidonHash:()=>vT,computePoseidonHashOnElements:()=>ET,computeSierraContractClassHash:()=>CT,default:()=>ST,feeTransactionVersion:()=>nu,feeTransactionVersion_2:()=>D1,formatSpaces:()=>H0,getSelector:()=>T1,getSelectorFromName:()=>Ss,getVersionsByType:()=>F3,keccakBn:()=>x3,poseidon:()=>w,starknetKeccak:()=>A3,transactionVersion:()=>Wf,transactionVersion_2:()=>L0});var mT={};ka(mT,{starkCurve:()=>z,weierstrass:()=>ce});var yT={};ka(yT,{parse:()=>Gc,parseAlwaysAsBig:()=>_T,stringify:()=>ks,stringifyAlwaysAsBig:()=>FK});var UK=e=>{if(!R0(e))return parseFloat(e);const t=parseInt(e,10);return Number.isSafeInteger(t)?t:BigInt(e)},Gc=e=>nA(String(e),void 0,UK),_T=e=>nA(String(e),void 0,CZ),ks=(e,t,r,n)=>cA(e,t,r,n),FK=ks,Wf=u3,L0=l3,nu=_A,D1=vA;function F3(e){return e==="fee"?{v1:nu,v2:D1}:{v1:Wf,v2:L0}}function U0(e,t){return No(BigInt(e),BigInt(t))}function vT(e,t){return Zt(bh(BigInt(e),BigInt(t)))}function Hi(e){return[...e,e.length].reduce((t,r)=>No(BigInt(t),BigInt(r)),0).toString()}var wT=Hi;function ET(e){return Zt(ta(e.map(t=>BigInt(t))))}function F0(e,t,r,n,a,i,s,o=[]){const c=Hi(a),d=[e,t,r,n,c,i,s,...o];return Hi(d)}function HK(e,t,r,n,a="constructor"){return F0("0x6465706c6f79",r,e,Ss(a),t,0,n)}function xT(e,t,r,n,a,i,s){return F0("0x6465636c617265",r,t,0,[e],n,a,[i,...s?[s]:[]])}function AT(e,t,r,n,a,i,s,o){const c=[t,n,...r];return F0("0x6465706c6f795f6163636f756e74",a,e,0,c,i,s,[o])}function TT(e,t,r,n,a,i){return F0("0x696e766f6b65",t,e,0,r,n,a,[i])}function L1(e,t,r,n){const a=On.compile(r),i=Hi(a),s=oi("0x535441524b4e45545f434f4e54524143545f41444452455353"),o=Hi([s,n,e,t,i]);return Zt(BigInt(o)%h3)}function jK(e,t){return e==="attributes"||e==="accessible_scopes"?Array.isArray(t)&&t.length===0?void 0:t:e==="debug_info"?null:t===null?void 0:t}function H0(e){let t=!1;const r=[];for(const n of e)n==='"'&&!(r.length>0&&r.slice(-1)[0]==="\\")&&(t=!t),t?r.push(n):r.push(n===":"?": ":n===","?", ":n);return r.join("")}function ST(e){const{abi:t,program:r}=e,a=H0(ks({abi:t,program:r},jK));return Ha(fi(eu(a)).toString(16))}function kT(e){const t=typeof e=="string"?Gc(e):e,r=Zt(EA),n=Hi(t.entry_points_by_type.EXTERNAL.flatMap(d=>[d.selector,d.offset])),a=Hi(t.entry_points_by_type.L1_HANDLER.flatMap(d=>[d.selector,d.offset])),i=Hi(t.entry_points_by_type.CONSTRUCTOR.flatMap(d=>[d.selector,d.offset])),s=Hi(t.program.builtins.map(d=>Go(d))),o=ST(t),c=Hi(t.program.data);return Hi([r,n,a,i,s,o,c])}function $K(e){return ta(e.flatMap(t=>BigInt(Go(t))))}function H3(e){const t=e.flatMap(r=>[BigInt(r.selector),BigInt(r.offset),$K(r.builtins)]);return ta(t)}function IT(e){const r=BigInt(Go("COMPILED_CLASS_V1")),n=H3(e.entry_points_by_type.EXTERNAL),a=H3(e.entry_points_by_type.L1_HANDLER),i=H3(e.entry_points_by_type.CONSTRUCTOR),s=ta(e.bytecode.map(o=>BigInt(o)));return Zt(ta([r,n,a,i,s]))}function j3(e){const t=e.flatMap(r=>[BigInt(r.selector),BigInt(r.function_idx)]);return ta(t)}function VK(e){const t=H0(ks(e.abi,null));return BigInt(Ha(fi(eu(t)).toString(16)))}function CT(e){const r=BigInt(Go("CONTRACT_CLASS_V0.1.0")),n=j3(e.entry_points_by_type.EXTERNAL),a=j3(e.entry_points_by_type.L1_HANDLER),i=j3(e.entry_points_by_type.CONSTRUCTOR),s=VK(e),o=ta(e.sierra_program.map(c=>BigInt(c)));return Zt(ta([r,n,a,i,s,o]))}function OT(e){const t=typeof e=="string"?Gc(e):e;return"sierra_program"in t?CT(t):kT(t)}var zK={};ka(zK,{compressProgram:()=>$3,decompressProgram:()=>U1,estimatedFeeToMaxFee:()=>Yf,formatSignature:()=>F1,makeAddress:()=>qK,randomAddress:()=>V3,signatureToDecimalArray:()=>au,signatureToHexArray:()=>iu});function $3(e){const t=typeof e=="string"?e:ks(e),r=Rh(t);return lA(r)}function U1(e){if(Array.isArray(e))return e;const t=dA(b2(uA(e)));return Gc(t)}function V3(){const e=Su.randomPrivateKey();return ku(e)}function qK(e){return Ha(e).toLowerCase()}function F1(e){if(!e)throw Error("formatSignature: provided signature is undefined");if(Array.isArray(e))return e.map(t=>Zt(t));try{const{r:t,s:r}=e;return[Zt(t),Zt(r)]}catch{throw new Error("Signature need to be weierstrass.SignatureType or an array for custom")}}function au(e){return KA(F1(e))}function iu(e){return GA(F1(e))}function Yf(e,t=.5){const r=Math.round((1+t)*100);return Ar(e)*Ar(r)/100n}function xi(e){return"sierra_program"in(typeof e=="string"?Gc(e):e)}function z3(e){const t={...e};if(xi(e.contract)&&(!e.compiledClassHash&&e.casm&&(t.compiledClassHash=IT(e.casm)),!t.compiledClassHash))throw new Error("Extract compiledClassHash failed, provide (CairoAssembly).casm file or compiledClassHash");if(t.classHash=e.classHash??OT(e.contract),!t.classHash)throw new Error("Extract classHash failed, provide (CompiledContract).json file or classHash");return t}function Fae(e){if(xi(e))throw Error("ContractClassResponse need to be LegacyContractClass (cairo0 response class)");const t=e;return{...t,program:U1(t.program)}}var NT=typeof window<"u"&&window.fetch||typeof global<"u"&&global.fetch||x2,ZK={};ka(ZK,{createSierraContractClass:()=>RT,parseContract:()=>q3,wait:()=>H1});function H1(e){return new Promise(t=>{setTimeout(t,e)})}function RT(e){const t={...e};return delete t.sierra_program_debug_info,t.abi=H0(ks(e.abi)),t.sierra_program=H0(ks(e.sierra_program)),t.sierra_program=$3(t.sierra_program),t}function q3(e){const t=typeof e=="string"?Gc(e):e;return xi(e)?RT(t):{...t,..."program"in t&&{program:$3(t.program)}}}var KK=class{parseGetBlockResponse(e){return{timestamp:e.timestamp,block_hash:"block_hash"in e?e.block_hash:"",block_number:"block_number"in e?e.block_number:-1,new_root:"new_root"in e?e.new_root:"",parent_hash:e.parent_hash,status:"status"in e?e.status:"PENDING",transactions:e.transactions}}parseGetTransactionResponse(e){return{calldata:"calldata"in e?e.calldata:[],contract_address:"contract_address"in e?e.contract_address:"",sender_address:"sender_address"in e?e.sender_address:"",max_fee:"max_fee"in e?e.max_fee:"",nonce:"nonce"in e?e.nonce:"",signature:"signature"in e?e.signature:[],transaction_hash:e.transaction_hash,version:e.version}}parseFeeEstimateResponse(e){return{overall_fee:Ar(e[0].overall_fee),gas_consumed:Ar(e[0].gas_consumed),gas_price:Ar(e[0].gas_price)}}parseFeeEstimateBulkResponse(e){return e.map(t=>({overall_fee:Ar(t.overall_fee),gas_consumed:Ar(t.gas_consumed),gas_price:Ar(t.gas_price)}))}parseCallContractResponse(e){return{result:e}}parseSimulateTransactionResponse(e){return e.map(t=>({...t,suggestedMaxFee:Yf(BigInt(t.fee_estimation.overall_fee))}))}parseContractClassResponse(e){return{...e,abi:typeof e.abi=="string"?JSON.parse(e.abi):e.abi}}};function GK(e,t=e.constructor){const{captureStackTrace:r}=Error;r&&r(e,t)}function WK(e,t){const{setPrototypeOf:r}=Object;r?r(e,t):e.__proto__=t}var YK=class extends Error{constructor(t){super(t);yt(this,"name");Object.defineProperty(this,"name",{value:new.target.name,enumerable:!1,configurable:!0}),WK(this,new.target.prototype),GK(this)}},Jf=class extends YK{},JK=class extends Jf{constructor(e,t){super(e),this.errorCode=t}},XK=class extends Jf{constructor(e,t){super(e),this.errorCode=t}},QK={};ka(QK,{StarknetIdContract:()=>LT,getStarknetIdContract:()=>G3,useDecoded:()=>PT,useEncoded:()=>DT});var so="abcdefghijklmnopqrstuvwxyz0123456789-",su=BigInt(so.length+1),Ba="\u8FD9\u6765",MT=BigInt(so.length),Z3=BigInt(Ba.length),BT=BigInt(Ba.length+1);function K3(e){let t=0;for(;e.endsWith(Ba[Ba.length-1]);)e=e.substring(0,e.length-1),t+=1;return[e,t]}function PT(e){let t="";return e.forEach(r=>{for(;r!==si;){const i=r%su;if(r/=su,i===BigInt(so.length)){const s=r/BT;if(s===si){const o=r%BT;r=s,o===si?t+=so[0]:t+=Ba[Number(o)-1]}else{const o=r%Z3;t+=Ba[Number(o)],r/=Z3}}else t+=so[Number(i)]}const[n,a]=K3(t);a&&(t=n+(a%2===0?Ba[Ba.length-1].repeat(a/2-1)+Ba[0]+so[1]:Ba[Ba.length-1].repeat((a-1)/2+1))),t+="."}),t&&t.concat("stark")}function DT(e){let t=BigInt(0),r=BigInt(1);if(e.endsWith(Ba[0]+so[1])){const[n,a]=K3(e.substring(0,e.length-2));e=n+Ba[Ba.length-1].repeat(2*(a+1))}else{const[n,a]=K3(e);a&&(e=n+Ba[Ba.length-1].repeat(1+2*(a-1)))}for(let n=0;n(e.MAINNET="0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678",e.TESTNET="0x3bab268e932d2cecd1946f100ae67ce3dff9fd234119ea2f6da57d16d29fce",e))(LT||{});function G3(e){switch(e){case"0x534e5f4d41494e":return"0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678";case"0x534e5f474f45524c49":return"0x3bab268e932d2cecd1946f100ae67ce3dff9fd234119ea2f6da57d16d29fce";default:throw new Error("Starknet.id is not yet deployed on this network")}}async function W3(e,t,r){const n=await e.getChainId(),a=r??G3(n);try{const s=(await e.callContract({contractAddress:a,entrypoint:"address_to_domain",calldata:On.compile({address:t})})).result.map(c=>BigInt(c)).slice(1),o=PT(s);if(!o)throw Error("Starkname not found");return o}catch(i){throw i instanceof Error&&i.message==="Starkname not found"?i:Error("Could not get stark name")}}async function Y3(e,t,r){const n=await e.getChainId(),a=r??G3(n);try{return(await e.callContract({contractAddress:a,entrypoint:"domain_to_address",calldata:On.compile({domain:[DT(t.replace(".stark","")).toString(10)]})})).result[0]}catch{throw Error("Could not get address from stark name")}}var eG=Object.values(m3),ma=class{constructor(e){yt(this,"hash",null);yt(this,"number",null);yt(this,"tag",null);yt(this,"valueOf",()=>this.number);yt(this,"toString",()=>this.hash);this.setIdentifier(e)}setIdentifier(e){typeof e=="string"&&Ts(e)?this.hash=e:typeof e=="bigint"?this.hash=Zt(e):typeof e=="number"?this.number=e:typeof e=="string"&&eG.includes(e)?this.tag=e:this.tag="pending"}get queryIdentifier(){return this.number!==null?`blockNumber=${this.number}`:this.hash!==null?`blockHash=${this.hash}`:`blockNumber=${this.tag}`}get identifier(){return this.number!==null?{block_number:this.number}:this.hash!==null?{block_hash:this.hash}:this.tag}set identifier(e){this.setIdentifier(e)}get sequencerIdentifier(){return this.hash!==null?{blockHash:this.hash}:{blockNumber:this.number??this.tag}}},UT=(e,t=!1,r=kA)=>{t||console.warn("Using default public node url, please provide nodeUrl in provider options!");const n=IA[e??"SN_GOERLI"],a=Math.floor(Math.random()*n.length);return`${n[a]}${r}`},J3={headers:{"Content-Type":"application/json"},blockIdentifier:"pending",retries:200},j0=class{constructor(e){yt(this,"nodeUrl");yt(this,"headers");yt(this,"responseParser",new KK);yt(this,"retries");yt(this,"blockIdentifier");yt(this,"chainId");yt(this,"getBlockHashAndNumber",this.getBlockLatestAccepted);yt(this,"getStateUpdate",this.getBlockStateUpdate);yt(this,"traceBlockTransactions",this.getBlockTransactionsTraces);yt(this,"getTransactionCount",this.getBlockTransactionCount);yt(this,"traceTransaction",this.getTransactionTrace);yt(this,"getSimulateTransaction",this.simulateTransaction);const{nodeUrl:t,retries:r,headers:n,blockIdentifier:a,chainId:i,rpcVersion:s}=e||{};Object.values(p3).includes(t)?this.nodeUrl=UT(t,e?.default,s):t?this.nodeUrl=t:this.nodeUrl=UT(void 0,e?.default,s),this.retries=r||J3.retries,this.headers={...J3.headers,...n},this.blockIdentifier=a||J3.blockIdentifier,this.chainId=i}fetch(e,t,r=0){const n={id:r,jsonrpc:"2.0",method:e,...t&&{params:t}};return NT(this.nodeUrl,{method:"POST",body:ks(n),headers:this.headers})}errorHandler(e,t,r,n){if(r){const{code:a,message:i,data:s}=r;throw new Jf(`RPC: ${e} with params ${ks(t)} + ${a}: ${i}: ${ks(s)}`)}if(n instanceof Jf)throw n;if(n)throw Error(n.message)}async fetchEndpoint(e,t){try{const r=await this.fetch(e,t),{error:n,result:a}=await r.json();return this.errorHandler(e,t,n),a}catch(r){throw this.errorHandler(e,t,r?.response?.data,r),r}}async getChainId(){return this.chainId??(this.chainId=await this.fetchEndpoint("starknet_chainId")),this.chainId}async getSpecVersion(){return this.fetchEndpoint("starknet_specVersion")}async getNonceForAddress(e,t=this.blockIdentifier){const r=Zt(e),n=new ma(t).identifier;return this.fetchEndpoint("starknet_getNonce",{contract_address:r,block_id:n})}async getBlock(e=this.blockIdentifier){return this.getBlockWithTxHashes(e).then(this.responseParser.parseGetBlockResponse)}async getBlockLatestAccepted(){return this.fetchEndpoint("starknet_blockHashAndNumber")}async getBlockNumber(){return this.fetchEndpoint("starknet_blockNumber")}async getBlockWithTxHashes(e=this.blockIdentifier){const t=new ma(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxHashes",{block_id:t})}async getBlockWithTxs(e=this.blockIdentifier){const t=new ma(e).identifier;return this.fetchEndpoint("starknet_getBlockWithTxs",{block_id:t})}async getBlockStateUpdate(e=this.blockIdentifier){const t=new ma(e).identifier;return this.fetchEndpoint("starknet_getStateUpdate",{block_id:t})}async getBlockTransactionsTraces(e=this.blockIdentifier){const t=new ma(e).identifier;return this.fetchEndpoint("starknet_traceBlockTransactions",{block_id:t})}async getBlockTransactionCount(e=this.blockIdentifier){const t=new ma(e).identifier;return this.fetchEndpoint("starknet_getBlockTransactionCount",{block_id:t})}async getPendingTransactions(){const{transactions:e}=await this.getBlock("pending");return Promise.all(e.map(t=>this.getTransactionByHash(t)))}async getTransaction(e){return this.getTransactionByHash(e).then(this.responseParser.parseGetTransactionResponse)}async getTransactionByHash(e){const t=Zt(e);return this.fetchEndpoint("starknet_getTransactionByHash",{transaction_hash:t})}async getTransactionByBlockIdAndIndex(e,t){const r=new ma(e).identifier;return this.fetchEndpoint("starknet_getTransactionByBlockIdAndIndex",{block_id:r,index:t})}async getTransactionReceipt(e){const t=Zt(e);return this.fetchEndpoint("starknet_getTransactionReceipt",{transaction_hash:t})}async getTransactionTrace(e){const t=Zt(e);return this.fetchEndpoint("starknet_traceTransaction",{transaction_hash:t})}async getTransactionStatus(e){const t=Zt(e);return this.fetchEndpoint("starknet_getTransactionStatus",{transaction_hash:t})}async simulateTransaction(e,{blockIdentifier:t=this.blockIdentifier,skipValidate:r=!1,skipFeeCharge:n=!0}){const a=new ma(t).identifier,i=[];return r&&i.push(Ei.ESimulationFlag.SKIP_VALIDATE),n&&i.push(Ei.ESimulationFlag.SKIP_FEE_CHARGE),this.fetchEndpoint("starknet_simulateTransactions",{block_id:a,transactions:e.map(s=>this.buildTransaction(s)),simulation_flags:i}).then(this.responseParser.parseSimulateTransactionResponse)}async waitForTransaction(e,t){const r=Zt(e);let{retries:n}=this,a=!1,i=!1;const s=t?.retryInterval??5e3,o=t?.errorStates??[Ei.ETransactionStatus.REJECTED],c=t?.successStates??[Ei.ETransactionExecutionStatus.SUCCEEDED,Ei.ETransactionStatus.ACCEPTED_ON_L2,Ei.ETransactionStatus.ACCEPTED_ON_L1];let d;for(;!a;){await H1(s);try{d=await this.getTransactionStatus(r);const y=d.execution_status,M=d.finality_status;if(!M)throw new Error("waiting for transaction status");if(o.includes(y)||o.includes(M)){const j=`${y}: ${M}`,G=new Error(j);throw G.response=d,i=!0,G}else(c.includes(y)||c.includes(M))&&(a=!0)}catch(y){if(y instanceof Error&&i)throw y;if(n<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}n-=1}let l=null;for(;l===null;){try{l=await this.getTransactionReceipt(r)}catch{if(n<=0)throw new Error(`waitForTransaction timed-out with retries ${this.retries}`)}n-=1,await H1(s)}return l}async getStorageAt(e,t,r=this.blockIdentifier){const n=Zt(e),a=zA(t),i=new ma(r).identifier;return this.fetchEndpoint("starknet_getStorageAt",{contract_address:n,key:a,block_id:i})}async getClassHashAt(e,t=this.blockIdentifier){const r=Zt(e),n=new ma(t).identifier;return this.fetchEndpoint("starknet_getClassHashAt",{block_id:n,contract_address:r})}async getClassByHash(e){return this.getClass(e)}async getClass(e,t=this.blockIdentifier){const r=Zt(e),n=new ma(t).identifier;return this.fetchEndpoint("starknet_getClass",{class_hash:r,block_id:n}).then(this.responseParser.parseContractClassResponse)}async getClassAt(e,t=this.blockIdentifier){const r=Zt(e),n=new ma(t).identifier;return this.fetchEndpoint("starknet_getClassAt",{block_id:n,contract_address:r}).then(this.responseParser.parseContractClassResponse)}async getCode(e,t){throw new Error("RPC does not implement getCode function")}async getContractVersion(e,t,{blockIdentifier:r=this.blockIdentifier,compiler:n=!0}={}){let a;if(e)a=await this.getClassAt(e,r);else if(t)a=await this.getClass(t,r);else throw Error("getContractVersion require contractAddress or classHash");return xi(a)?n?{cairo:"1",compiler:R1(a.abi).compiler}:{cairo:"1",compiler:void 0}:{cairo:"0",compiler:"0"}}async getEstimateFee(e,t,r=this.blockIdentifier){return this.getInvokeEstimateFee(e,t,r)}async getInvokeEstimateFee(e,t,r=this.blockIdentifier){const n=new ma(r).identifier,a=this.buildTransaction({type:"INVOKE_FUNCTION",...e,...t},"fee");return this.fetchEndpoint("starknet_estimateFee",{request:[a],block_id:n}).then(this.responseParser.parseFeeEstimateResponse)}async getDeclareEstimateFee(e,t,r=this.blockIdentifier){const n=new ma(r).identifier,a=this.buildTransaction({type:"DECLARE",...e,...t},"fee");return this.fetchEndpoint("starknet_estimateFee",{request:[a],block_id:n}).then(this.responseParser.parseFeeEstimateResponse)}async getDeployAccountEstimateFee(e,t,r=this.blockIdentifier){const n=new ma(r).identifier,a=this.buildTransaction({type:"DEPLOY_ACCOUNT",...e,...t},"fee");return this.fetchEndpoint("starknet_estimateFee",{request:[a],block_id:n}).then(this.responseParser.parseFeeEstimateResponse)}async getEstimateFeeBulk(e,{blockIdentifier:t=this.blockIdentifier,skipValidate:r=!1}){r&&console.warn("getEstimateFeeBulk RPC does not support skipValidate");const n=new ma(t).identifier;return this.fetchEndpoint("starknet_estimateFee",{request:e.map(a=>this.buildTransaction(a,"fee")),block_id:n}).then(this.responseParser.parseFeeEstimateBulkResponse)}async invokeFunction(e,t){return this.fetchEndpoint("starknet_addInvokeTransaction",{invoke_transaction:{sender_address:e.contractAddress,calldata:On.toHex(e.calldata),type:Ei.ETransactionType.INVOKE,max_fee:Zt(t.maxFee||0),version:"0x1",signature:iu(e.signature),nonce:Zt(t.nonce)}})}async declareContract({contract:e,signature:t,senderAddress:r,compiledClassHash:n},a){return xi(e)?this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:Ei.ETransactionType.DECLARE,contract_class:{sierra_program:U1(e.sierra_program),contract_class_version:e.contract_class_version,entry_points_by_type:e.entry_points_by_type,abi:e.abi},compiled_class_hash:n||"",version:yA,max_fee:Zt(a.maxFee||0),signature:iu(t),sender_address:r,nonce:Zt(a.nonce)}}):this.fetchEndpoint("starknet_addDeclareTransaction",{declare_transaction:{type:Ei.ETransactionType.DECLARE,contract_class:{program:e.program,entry_points_by_type:e.entry_points_by_type,abi:e.abi},version:mA,max_fee:Zt(a.maxFee||0),signature:iu(t),sender_address:r,nonce:Zt(a.nonce)}})}async deployAccountContract({classHash:e,constructorCalldata:t,addressSalt:r,signature:n},a){return this.fetchEndpoint("starknet_addDeployAccountTransaction",{deploy_account_transaction:{constructor_calldata:On.toHex(t||[]),class_hash:Zt(e),contract_address_salt:Zt(r||0),type:Ei.ETransactionType.DEPLOY_ACCOUNT,max_fee:Zt(a.maxFee||0),version:Zt(a.version||0),signature:iu(n),nonce:Zt(a.nonce)}})}async callContract(e,t=this.blockIdentifier){const r=new ma(t).identifier,n=await this.fetchEndpoint("starknet_call",{request:{contract_address:e.contractAddress,entry_point_selector:Ss(e.entrypoint),calldata:On.toHex(e.calldata)},block_id:r});return this.responseParser.parseCallContractResponse(n)}async estimateMessageFee(e,t=this.blockIdentifier){const{from_address:r,to_address:n,entry_point_selector:a,payload:i}=e,s={from_address:Zt(r),to_address:Zt(n),entry_point_selector:T1(a),payload:w3(i)},o=new ma(t).identifier;return this.fetchEndpoint("starknet_estimateMessageFee",{message:s,block_id:o})}async getSyncingStats(){return this.fetchEndpoint("starknet_syncing")}async getEvents(e){return this.fetchEndpoint("starknet_getEvents",{filter:e})}async getStarkName(e,t){return W3(this,e,t)}async getAddressFromStarkName(e,t){return Y3(this,e,t)}buildTransaction(e,t){const r=F3(t),n={signature:iu(e.signature),nonce:Zt(e.nonce),max_fee:Zt(e.maxFee||0)};if(e.type==="INVOKE_FUNCTION")return{type:Ei.ETransactionType.INVOKE,sender_address:e.contractAddress,calldata:On.toHex(e.calldata),version:Zt(e.version||r.v1),...n};if(e.type==="DECLARE")return xi(e.contract)?{type:e.type,contract_class:{...e.contract,sierra_program:U1(e.contract.sierra_program)},compiled_class_hash:e.compiledClassHash||"",sender_address:e.senderAddress,version:Zt(e.version||r.v2),...n}:{type:e.type,contract_class:e.contract,sender_address:e.senderAddress,version:Zt(e.version||r.v1),...n};if(e.type==="DEPLOY_ACCOUNT")return{type:e.type,constructor_calldata:On.toHex(e.constructorCalldata||[]),class_hash:Zt(e.classHash),contract_address_salt:Zt(e.addressSalt||0),version:Zt(e.version||r.v1),...n};throw Error("RPC buildTransaction received unknown TransactionType")}},tG=class{},rG=class extends tG{parseGetBlockResponse(e){return{...e,new_root:e.state_root,parent_hash:e.parent_block_hash,transactions:Object.values(e.transactions).map(t=>"transaction_hash"in t&&t.transaction_hash).filter(Boolean)}}parseGetTransactionResponse(e){if(e.status==="NOT_RECEIVED"&&e.finality_status==="NOT_RECEIVED")throw new Jf;return{...e,calldata:"calldata"in e.transaction?e.transaction.calldata:[],contract_class:"contract_class"in e.transaction?e.transaction.contract_class:void 0,entry_point_selector:"entry_point_selector"in e.transaction?e.transaction.entry_point_selector:void 0,max_fee:"max_fee"in e.transaction?e.transaction.max_fee:void 0,nonce:e.transaction.nonce,sender_address:"sender_address"in e.transaction?e.transaction.sender_address:void 0,signature:"signature"in e.transaction?e.transaction.signature:void 0,transaction_hash:"transaction_hash"in e.transaction?e.transaction.transaction_hash:void 0,version:"version"in e.transaction?e.transaction.version:void 0}}parseGetTransactionReceiptResponse(e){return{...e,messages_sent:e.l2_to_l1_messages,..."revert_error"in e&&{revert_reason:e.revert_error}}}parseFeeEstimateResponse(e){if("overall_fee"in e){let t={};try{t={gas_consumed:Ar(e.gas_usage),gas_price:Ar(e.gas_price)}}catch{}return{overall_fee:Ar(e.overall_fee),...t}}return{overall_fee:Ar(e.amount)}}parseFeeEstimateBulkResponse(e){return[].concat(e).map(t=>{if("overall_fee"in t){let r={};try{r={gas_consumed:Ar(t.gas_usage),gas_price:Ar(t.gas_price)}}catch{}return{overall_fee:Ar(t.overall_fee),...r}}return{overall_fee:Ar(t.amount)}})}parseSimulateTransactionResponse(e){const t="overall_fee"in e.fee_estimation?e.fee_estimation.overall_fee:e.fee_estimation.amount;return[{transaction_trace:e.trace,fee_estimation:e.fee_estimation,suggestedMaxFee:Yf(BigInt(t))}]}parseCallContractResponse(e){return{result:e.result}}parseInvokeFunctionResponse(e){return{transaction_hash:e.transaction_hash}}parseDeployContractResponse(e){return{transaction_hash:e.transaction_hash,contract_address:e.address}}parseDeclareContractResponse(e){return{transaction_hash:e.transaction_hash,class_hash:e.class_hash}}parseGetStateUpdateResponse(e){const t=Object.entries(e.state_diff.nonces).map(([n,a])=>({contract_address:n,nonce:a})),r=Object.entries(e.state_diff.storage_diffs).map(([n,a])=>({address:n,storage_entries:a}));return{...e,state_diff:{...e.state_diff,storage_diffs:r,nonces:t}}}parseContractClassResponse(e){const t=xi(e)?e:q3(e);return{...t,abi:typeof t.abi=="string"?JSON.parse(t.abi):t.abi}}},nG=/^(?:\w+:)?\/\/(\S+)$/,aG=/^localhost[:?\d]*(?:[^:?\d]\S*)?$/,iG=/^[^\s.]+\.\S{2,}$/;function sG(e){if(!e||typeof e!="string")return!1;const t=e.match(nG);if(!t)return!1;const r=t[1];return r?!!(aG.test(r)||iG.test(r)):!1}function $0(e,t,r){return sG(r)?r:Uh(e,r??t)}function oG(e){return e===void 0||Object.keys(e).length===0||Object.keys(e).length===1&&Object.entries(e).every(([t,r])=>t==="blockIdentifier"&&r===null)}var FT={network:"SN_GOERLI",blockIdentifier:"pending"},j1=class{constructor(e=FT){yt(this,"baseUrl");yt(this,"feederGatewayUrl");yt(this,"gatewayUrl");yt(this,"headers");yt(this,"blockIdentifier");yt(this,"chainId");yt(this,"responseParser",new rG);"network"in e?(this.baseUrl=j1.getNetworkFromName(e.network),this.feederGatewayUrl=$0(this.baseUrl,"feeder_gateway"),this.gatewayUrl=$0(this.baseUrl,"gateway")):(this.baseUrl=e.baseUrl,this.feederGatewayUrl=$0(this.baseUrl,"feeder_gateway",e.feederGatewayUrl),this.gatewayUrl=$0(this.baseUrl,"gateway",e.gatewayUrl)),this.chainId=e?.chainId??j1.getChainIdFromBaseUrl(this.baseUrl),this.headers=e.headers,this.blockIdentifier=e?.blockIdentifier||FT.blockIdentifier}static getNetworkFromName(e){switch(e){case"SN_MAIN":case"0x534e5f4d41494e":return"https://alpha-mainnet.starknet.io";case"SN_GOERLI":case"0x534e5f474f45524c49":return"https://alpha4.starknet.io";default:throw new Error("Could not detect base url from NetworkName")}}static getChainIdFromBaseUrl(e){try{return new URL(e).host.includes("mainnet.starknet.io")?"0x534e5f4d41494e":"0x534e5f474f45524c49"}catch{return console.error(`Could not parse baseUrl: ${e}`),"0x534e5f474f45524c49"}}getFetchUrl(e){return["add_transaction"].includes(e)?this.gatewayUrl:this.feederGatewayUrl}getFetchMethod(e){return["add_transaction","call_contract","estimate_fee","estimate_message_fee","estimate_fee_bulk","simulate_transaction"].includes(e)?"POST":"GET"}getQueryString(e){return oG(e)?"":`?${Object.entries(e).map(([r,n])=>r==="blockIdentifier"?`${new ma(n).queryIdentifier}`:`${r}=${n}`).join("&")}`}getHeaders(e){return e==="POST"?{"Content-Type":"application/json",...this.headers}:this.headers}async fetchEndpoint(e,...[t,r]){const n=this.getFetchUrl(e),a=this.getFetchMethod(e),i=this.getQueryString(t),s=Uh(n,e,i);return this.fetch(s,{method:a,body:r})}async fetch(e,t){const r=$0(this.baseUrl,"",e),n=t?.method??"GET",a=this.getHeaders(n),i=ks(t?.body);try{const s=await NT(r,{method:n,body:i,headers:a}),o=await s.text();if(!s.ok){let d;try{d=Gc(o)}catch{throw new XK(s.statusText,s.status)}throw new JK(d.message,d.code)}return(t?.parseAlwaysAsBigInt?_T:Gc)(o)}catch(s){throw s instanceof Error&&!(s instanceof Jf)?Error(`Could not ${n} from endpoint \`${r}\`: ${s.message}`):s}}async getChainId(){return Promise.resolve(this.chainId)}async callContract({contractAddress:e,entrypoint:t,calldata:r=[]},n=this.blockIdentifier){return this.fetchEndpoint("call_contract",{blockIdentifier:n},{contract_address:e,entry_point_selector:Ss(t),calldata:On.compile(r)}).then(this.responseParser.parseCallContractResponse)}async getBlock(e=this.blockIdentifier){return this.fetchEndpoint("get_block",{blockIdentifier:e}).then(this.responseParser.parseGetBlockResponse)}async getNonceForAddress(e,t=this.blockIdentifier){return this.fetchEndpoint("get_nonce",{contractAddress:e,blockIdentifier:t})}async getStorageAt(e,t,r=this.blockIdentifier){const n=Ar(t).toString(10);return this.fetchEndpoint("get_storage_at",{blockIdentifier:r,contractAddress:e,key:n})}async getTransaction(e){const t=Zt(e);return this.fetchEndpoint("get_transaction",{transactionHash:t}).then(r=>{if(Object.values(r).length===1)throw new Jf(r.status);return this.responseParser.parseGetTransactionResponse(r)})}async getTransactionReceipt(e){const t=Zt(e);return this.fetchEndpoint("get_transaction_receipt",{transactionHash:t}).then(this.responseParser.parseGetTransactionReceiptResponse)}async getClassAt(e,t=this.blockIdentifier){return this.fetchEndpoint("get_full_contract",{blockIdentifier:t,contractAddress:e}).then(this.responseParser.parseContractClassResponse)}async getClassHashAt(e,t=this.blockIdentifier){return this.fetchEndpoint("get_class_hash_at",{blockIdentifier:t,contractAddress:e})}async getClassByHash(e,t=this.blockIdentifier){return this.fetchEndpoint("get_class_by_hash",{classHash:e,blockIdentifier:t}).then(this.responseParser.parseContractClassResponse)}async getCompiledClassByClassHash(e,t=this.blockIdentifier){return this.fetchEndpoint("get_compiled_class_by_class_hash",{classHash:e,blockIdentifier:t})}async getContractVersion(e,t,{blockIdentifier:r=this.blockIdentifier,compiler:n=!0}={}){let a;if(e)a=await this.getClassAt(e,r);else if(t)a=await this.getClassByHash(t,r);else throw Error("getContractVersion requires contractAddress or classHash");return xi(a)?n?{cairo:"1",compiler:R1(a.abi).compiler}:{cairo:"1",compiler:void 0}:{cairo:"0",compiler:"0"}}async invokeFunction(e,t){return this.fetchEndpoint("add_transaction",void 0,{type:"INVOKE_FUNCTION",sender_address:e.contractAddress,calldata:On.compile(e.calldata??[]),signature:au(e.signature),nonce:Zt(t.nonce),max_fee:Zt(t.maxFee||0),version:"0x1"}).then(this.responseParser.parseInvokeFunctionResponse)}async deployAccountContract({classHash:e,constructorCalldata:t,addressSalt:r,signature:n},a){return this.fetchEndpoint("add_transaction",void 0,{type:"DEPLOY_ACCOUNT",contract_address_salt:r??V3(),constructor_calldata:On.compile(t??[]),class_hash:Zt(e),max_fee:Zt(a.maxFee||0),version:Zt(a.version||0),nonce:Zt(a.nonce),signature:au(n)}).then(this.responseParser.parseDeployContractResponse)}async declareContract({senderAddress:e,contract:t,signature:r,compiledClassHash:n},a){return xi(t)?this.fetchEndpoint("add_transaction",void 0,{type:"DECLARE",sender_address:e,compiled_class_hash:n,contract_class:t,nonce:Zt(a.nonce),signature:au(r),max_fee:Zt(a.maxFee||0),version:Zt(L0)}).then(this.responseParser.parseDeclareContractResponse):this.fetchEndpoint("add_transaction",void 0,{type:"DECLARE",contract_class:t,nonce:Zt(a.nonce),signature:au(r),sender_address:e,max_fee:Zt(a.maxFee||0),version:Zt(Wf)}).then(this.responseParser.parseDeclareContractResponse)}async getEstimateFee(e,t,r=this.blockIdentifier,n=!1){return this.getInvokeEstimateFee(e,t,r,n)}async getInvokeEstimateFee(e,t,r=this.blockIdentifier,n=!1){const a=this.buildTransaction({type:"INVOKE_FUNCTION",...e,...t},"fee");return this.fetchEndpoint("estimate_fee",{blockIdentifier:r,skipValidate:n},a).then(this.responseParser.parseFeeEstimateResponse)}async getDeclareEstimateFee(e,t,r=this.blockIdentifier,n=!1){const a=this.buildTransaction({type:"DECLARE",...e,...t},"fee");return this.fetchEndpoint("estimate_fee",{blockIdentifier:r,skipValidate:n},a).then(this.responseParser.parseFeeEstimateResponse)}async getDeployAccountEstimateFee(e,t,r=this.blockIdentifier,n=!1){const a=this.buildTransaction({type:"DEPLOY_ACCOUNT",...e,...t},"fee");return this.fetchEndpoint("estimate_fee",{blockIdentifier:r,skipValidate:n},a).then(this.responseParser.parseFeeEstimateResponse)}async getEstimateFeeBulk(e,{blockIdentifier:t=this.blockIdentifier,skipValidate:r=!1}){const n=e.map(a=>this.buildTransaction(a,"fee"));return this.fetchEndpoint("estimate_fee_bulk",{blockIdentifier:t,skipValidate:r},n).then(this.responseParser.parseFeeEstimateBulkResponse)}async getCode(e,t=this.blockIdentifier){return this.fetchEndpoint("get_code",{contractAddress:e,blockIdentifier:t})}async waitForTransaction(e,t){let r,n=!1,a=0;const i=t?.retryInterval??5e3,s=t?.errorStates??["REJECTED","NOT_RECEIVED","REVERTED"],o=t?.successStates??["SUCCEEDED","ACCEPTED_ON_L1","ACCEPTED_ON_L2"];for(;!n;)if(await H1(i),r=await this.getTransactionStatus(e),r.finality_status==="NOT_RECEIVED"&&a<3)a+=1;else if(o.includes(r.finality_status)||o.includes(r.execution_status))n=!0;else if(s.includes(r.finality_status)||s.includes(r.execution_status)){let d;r.tx_failure_reason?d=`${r.tx_status}: ${r.tx_failure_reason.code} +${r.tx_failure_reason.error_message}`:r.tx_revert_reason?d=`${r.tx_status}: ${r.tx_revert_reason}`:d=r.tx_status;const l=new Error(d);throw l.response=r,l}return await this.getTransactionReceipt(e)}async getTransactionStatus(e){const t=Zt(e);return this.fetchEndpoint("get_transaction_status",{transactionHash:t})}async getContractAddresses(){return this.fetchEndpoint("get_contract_addresses")}async getTransactionTrace(e){const t=Zt(e);return this.fetchEndpoint("get_transaction_trace",{transactionHash:t})}async estimateMessageFee({from_address:e,to_address:t,entry_point_selector:r,payload:n},a=this.blockIdentifier){const i={from_address:WA(e),to_address:v3(t),entry_point_selector:T1(r),payload:w3(n)};return this.fetchEndpoint("estimate_message_fee",{blockIdentifier:a},i)}async getSimulateTransaction(e,{blockIdentifier:t=this.blockIdentifier,skipValidate:r=!1,skipExecute:n=!1}){e.length>1&&console.warn("Sequencer simulate process only first element from invocations list"),n&&console.warn("Sequencer can't skip account __execute__");const a=this.buildTransaction(e[0]);return this.fetchEndpoint("simulate_transaction",{blockIdentifier:t,skipValidate:r??!1},a).then(this.responseParser.parseSimulateTransactionResponse)}async getStateUpdate(e=this.blockIdentifier){const t=new ma(e).sequencerIdentifier;return this.fetchEndpoint("get_state_update",{...t}).then(this.responseParser.parseGetStateUpdateResponse)}async getBlockTraces(e=this.blockIdentifier){const t=new ma(e).sequencerIdentifier;return this.fetchEndpoint("get_block_traces",{...t})}async getStarkName(e,t){return W3(this,e,t)}async getAddressFromStarkName(e,t){return Y3(this,e,t)}buildTransaction(e,t){const r=F3(t),n={signature:au(e.signature),nonce:Zt(e.nonce)};if(e.type==="INVOKE_FUNCTION")return{type:e.type,sender_address:e.contractAddress,calldata:On.compile(e.calldata??[]),version:Zt(e.version||r.v1),...n};if(e.type==="DECLARE")return xi(e.contract)?{type:e.type,contract_class:e.contract,compiled_class_hash:e.compiledClassHash,sender_address:e.senderAddress,version:Zt(e.version||r.v2),...n}:{type:e.type,contract_class:e.contract,sender_address:e.senderAddress,version:Zt(e.version||r.v1),...n};if(e.type==="DEPLOY_ACCOUNT")return{type:e.type,constructor_calldata:On.compile(e.constructorCalldata||[]),class_hash:Zt(e.classHash),contract_address_salt:Zt(e.addressSalt||0),version:Zt(e.version||r.v1),...n};throw Error("Sequencer buildTransaction received unknown TransactionType")}},$1=class{constructor(e){yt(this,"provider");e instanceof $1?this.provider=e.provider:e instanceof j0||e instanceof j1?this.provider=e:e&&"rpc"in e?this.provider=new j0(e.rpc):e&&"sequencer"in e?this.provider=new j1(e.sequencer):this.provider=new j0}async getChainId(){return this.provider.getChainId()}async getBlock(e){return this.provider.getBlock(e)}async getClassAt(e,t){return this.provider.getClassAt(e,t)}async getClassHashAt(e,t){return this.provider.getClassHashAt(e,t)}getClassByHash(e){return this.provider.getClassByHash(e)}async getEstimateFee(e,t,r){return this.provider.getEstimateFee(e,t,r)}async getInvokeEstimateFee(e,t,r,n){return this.provider.getInvokeEstimateFee(e,t,r,n)}async getEstimateFeeBulk(e,t){return this.provider.getEstimateFeeBulk(e,t)}async getNonceForAddress(e,t){return this.provider.getNonceForAddress(e,t)}async getStorageAt(e,t,r){return this.provider.getStorageAt(e,t,r)}async getTransaction(e){return this.provider.getTransaction(e)}async getTransactionReceipt(e){return this.provider.getTransactionReceipt(e)}async callContract(e,t){return this.provider.callContract(e,t)}async invokeFunction(e,t){return this.provider.invokeFunction(e,t)}async deployAccountContract(e,t){return this.provider.deployAccountContract(e,t)}async declareContract(e,t){return this.provider.declareContract(e,t)}async getDeclareEstimateFee(e,t,r,n){return this.provider.getDeclareEstimateFee(e,t,r,n)}getDeployAccountEstimateFee(e,t,r,n){return this.provider.getDeployAccountEstimateFee(e,t,r,n)}async getCode(e,t){return this.provider.getCode(e,t)}async waitForTransaction(e,t){return this.provider.waitForTransaction(e,t)}async getSimulateTransaction(e,t){return this.provider.getSimulateTransaction(e,t)}async getStateUpdate(e){return this.provider.getStateUpdate(e)}async getStarkName(e,t){return W3(this,e,t)}async getAddressFromStarkName(e,t){return Y3(this,e,t)}async getContractVersion(e,t,r){return this.provider.getContractVersion(e,t,r)}},Hae=class{},cG={};ka(cG,{fromCallsToExecuteCalldata:()=>X3,fromCallsToExecuteCalldataWithNonce:()=>fG,fromCallsToExecuteCalldata_cairo1:()=>jT,getExecuteCalldata:()=>V1,transformCallsToMulticallArrays:()=>HT,transformCallsToMulticallArrays_cairo1:()=>dG});var HT=e=>{const t=[],r=[];return e.forEach(n=>{const a=On.compile(n.calldata||[]);t.push({to:Ar(n.contractAddress).toString(10),selector:Ar(Ss(n.entrypoint)).toString(10),data_offset:r.length.toString(),data_len:a.length.toString()}),r.push(...a)}),{callArray:t,calldata:On.compile({calldata:r})}},X3=e=>{const{callArray:t,calldata:r}=HT(e);return[...On.compile({callArray:t}),...r]},fG=(e,t)=>[...X3(e),Ar(t).toString()],dG=e=>e.map(r=>({to:Ar(r.contractAddress).toString(10),selector:Ar(Ss(r.entrypoint)).toString(10),calldata:On.compile(r.calldata||[])})),jT=e=>{const t=e.map(r=>({contractAddress:r.contractAddress,entrypoint:r.entrypoint,calldata:Array.isArray(r.calldata)&&"__compiled__"in r.calldata?r.calldata:On.compile(r.calldata)}));return On.compile({orderCalls:t})},V1=(e,t="0")=>t==="1"?jT(e):X3(e),uG={};ka(uG,{TypedDataRevision:()=>y3,byteArrayFromString:()=>VT,encodeData:()=>WT,encodeType:()=>KT,encodeValue:()=>V0,getDependencies:()=>Q3,getMessageHash:()=>e6,getStructHash:()=>z0,getTypeHash:()=>GT,isMerkleTreeType:()=>ZT,prepareSelector:()=>qT});var lG={};ka(lG,{MerkleTree:()=>ou,proofMerklePath:()=>$T});var ou=class{constructor(e,t=U0){yt(this,"leaves");yt(this,"branches",[]);yt(this,"root");yt(this,"hashMethod");this.hashMethod=t,this.leaves=e,this.root=this.build(e)}build(e){if(e.length===1)return e[0];e.length!==this.leaves.length&&this.branches.push(e);const t=[];for(let r=0;ri>=s?1:-1);return r(n,a)}getProof(e,t=this.leaves,r=[]){const n=t.indexOf(e);if(n===-1)throw new Error("leaf not found");if(t.length===1)return r;const a=n%2===0,i=(a?t[n+1]:t[n-1])??"0x0",s=[...r,i],o=this.leaves.length===t.length?-1:this.branches.findIndex(d=>d.length===t.length),c=this.branches[o+1]??[this.root];return this.getProof(ou.hash(a?e:i,a?i:e,this.hashMethod),c,s)}};function $T(e,t,r,n=U0){if(r.length===0)return e===t;const[a,...i]=r;return $T(e,ou.hash(t,a,n),i,n)}var hG={u256:JSON.parse('[{ "name": "low", "type": "u128" }, { "name": "high", "type": "u128" }]'),TokenAmount:JSON.parse('[{ "name": "token_address", "type": "ContractAddress" }, { "name": "amount", "type": "u256" }]'),NftId:JSON.parse('[{ "name": "collection_address", "type": "ContractAddress" }, { "name": "token_id", "type": "u256" }]')},ji={1:{domain:"StarknetDomain",hashMethod:ET,hashMerkleMethod:vT,escapeTypeString:e=>`"${e}"`,presetTypes:hG},0:{domain:"StarkNetDomain",hashMethod:wT,hashMerkleMethod:U0,escapeTypeString:e=>e,presetTypes:{}}};function VT(e){const t=S1(e),r=t[t.length-1],n=t.map(Go),[a,i]=r===void 0||r.length===31?["0x00",0]:[n.pop(),r.length];return{data:n.length===0?["0x00"]:n,pending_word:a,pending_word_len:i}}function zT({types:e,domain:t}){if(ji[1].domain in e&&t.revision==="1")return"1";if(ji[0].domain in e&&(t.revision??"0")==="0")return"0"}function z1(e){try{return Zt(e)}catch{if(typeof e=="string")return Zt(Go(e));throw new Error(`Invalid BigNumberish: ${e}`)}}function pG(e){const t=e;return!!(t.message&&t.primaryType&&t.types&&zT(t))}function qT(e){return Ts(e)?e:Ss(e)}function ZT(e){return e.type==="merkletree"}function Q3(e,t,r=[],n="",a="0"){return t[t.length-1]==="*"?t=t.slice(0,-1):a==="1"&&(t==="enum"?t=n:t.match(/^\(.*\)$/)&&(t=t.slice(1,-1))),r.includes(t)||!e[t]?r:[t,...e[t].reduce((i,s)=>[...i,...Q3(e,s.type,i,s.contains,a).filter(o=>!i.includes(o))],[])]}function bG(e,t){if(t.parent&&t.key){const n=e[t.parent].find(i=>i.name===t.key);if(!ZT(n))throw new Error(`${t.key} is not a merkle tree`);if(n.contains.endsWith("*"))throw new Error(`Merkle tree contain property must not be an array but was given ${t.key}`);return n.contains}return"raw"}function KT(e,t,r="0"){const[n,...a]=Q3(e,t,void 0,void 0,r),i=n?[n,...a.sort()]:[],s=ji[r].escapeTypeString;return i.map(o=>{const c=e[o].map(d=>{const l=d.type==="enum"&&r==="1"?d.contains:d.type,y=l.match(/^\(.*\)$/)?`(${l.slice(1,-1).split(",").map(M=>M&&s(M)).join(",")})`:s(l);return`${s(d.name)}:${y}`});return`${s(o)}(${c})`}).join("")}function GT(e,t,r="0"){return Ss(KT(e,t,r))}function V0(e,t,r,n={},a="0"){if(e[t])return[t,z0(e,t,r,a)];if(ji[a].presetTypes[t])return[t,z0(ji[a].presetTypes,t,r,a)];if(t.endsWith("*")){const i=r.map(s=>V0(e,t.slice(0,-1),s,void 0,a)[1]);return[t,ji[a].hashMethod(i)]}switch(t){case"enum":{if(a==="1"){const[i,s]=Object.entries(r)[0],o=e[n.parent][0],c=e[o.contains],d=c.find(M=>M.name===i),l=c.indexOf(d),y=d.type.slice(1,-1).split(",").map((M,j)=>{if(!M)return M;const G=s[j];return V0(e,M,G,void 0,a)[1]});return[t,ji[a].hashMethod([l,...y])]}return[t,z1(r)]}case"merkletree":{const i=bG(e,n),s=r.map(c=>V0(e,i,c,void 0,a)[1]),{root:o}=new ou(s,ji[a].hashMerkleMethod);return["felt",o]}case"selector":return["felt",qT(r)];case"string":{if(a==="1"){const i=VT(r),s=[i.data.length,...i.data,i.pending_word,i.pending_word_len];return[t,ji[a].hashMethod(s)]}return[t,z1(r)]}case"felt":case"bool":case"u128":case"i128":case"ContractAddress":case"ClassHash":case"timestamp":case"shortstring":return[t,z1(r)];default:{if(a==="1")throw new Error(`Unsupported type: ${t}`);return[t,z1(r)]}}}function WT(e,t,r,n="0"){const a=e[t]??ji[n].presetTypes[t],[i,s]=a.reduce(([o,c],d)=>{if(r[d.name]===void 0||r[d.name]===null&&d.type!=="enum")throw new Error(`Cannot encode data: missing data for '${d.name}'`);const l=r[d.name],y={parent:t,key:d.name},[M,j]=V0(e,d.type,l,y,n);return[[...o,M],[...c,j]]},[["felt"],[GT(e,t,n)]]);return[i,s]}function z0(e,t,r,n="0"){return ji[n].hashMethod(WT(e,t,r,n)[1])}function e6(e,t){if(!pG(e))throw new Error("Typed data does not match JSON schema");const r=zT(e),{domain:n,hashMethod:a}=ji[r],i=[Go("StarkNet Message"),z0(e.types,n,e.domain,r),t,z0(e.types,e.primaryType,e.message,r)];return a(i)}var gG=class{constructor(e=Su.randomPrivateKey()){yt(this,"pk");this.pk=e instanceof Uint8Array?hA(e):Zt(e)}async getPubKey(){return ku(this.pk)}async signMessage(e,t){const r=e6(e,t);return od(r,this.pk)}async signTransaction(e,t,r){if(r&&r.length!==e.length)throw new Error("ABI must be provided for each transaction or no transaction");const n=V1(e,t.cairoVersion),a=TT(t.walletAddress,t.version,n,t.maxFee,t.chainId,t.nonce);return od(a,this.pk)}async signDeployAccountTransaction({classHash:e,contractAddress:t,constructorCalldata:r,addressSalt:n,maxFee:a,version:i,chainId:s,nonce:o}){const c=AT(t,e,On.compile(r),n,i,a,s,o);return od(c,this.pk)}async signDeclareTransaction({classHash:e,senderAddress:t,chainId:r,maxFee:n,version:a,nonce:i,compiledClassHash:s}){const o=xT(e,t,a,n,r,i,s);return od(o,this.pk)}};function mG(e){if(!e.events)throw new Error("UDC emitted event is empty");const t=e.events.find(r=>M0(r.from_address)===M0(Zf.ADDRESS))||{data:[]};return{transaction_hash:e.transaction_hash,contract_address:t.data[0],address:t.data[0],deployer:t.data[1],unique:t.data[2],classHash:t.data[3],calldata_len:t.data[4],calldata:t.data.slice(5,5+parseInt(t.data[4],16)),salt:t.data[t.data.length-1]}}var yG=class extends $1{constructor(t,r,n,a){super(t);yt(this,"signer");yt(this,"address");yt(this,"cairoVersion");yt(this,"deploySelf",this.deployAccount);this.address=r.toLowerCase(),this.signer=typeof n=="string"||n instanceof Uint8Array?new gG(n):n,a&&(this.cairoVersion=a.toString())}async getNonce(t){return super.getNonceForAddress(this.address,t)}async getNonceSafe(t){try{return Ar(t??await this.getNonce())}catch{return 0n}}async getCairoVersion(t){if(!this.cairoVersion){const{cairo:r}=t?await super.getContractVersion(void 0,t):await super.getContractVersion(this.address);this.cairoVersion=r}return this.cairoVersion}async estimateFee(t,r){return this.estimateInvokeFee(t,r)}async estimateInvokeFee(t,{nonce:r,blockIdentifier:n,skipValidate:a}={}){const i=Array.isArray(t)?t:[t],s=Ar(r??await this.getNonce()),o=Ar(nu),c=await this.getChainId(),d={walletAddress:this.address,nonce:s,maxFee:si,version:o,chainId:c,cairoVersion:await this.getCairoVersion()},l=await this.buildInvocation(i,d),y=await super.getInvokeEstimateFee({...l},{version:o,nonce:s},n,a),M=Yf(y.overall_fee);return{...y,suggestedMaxFee:M}}async estimateDeclareFee({contract:t,classHash:r,casm:n,compiledClassHash:a},{blockIdentifier:i,nonce:s,skipValidate:o}={}){const c=Ar(s??await this.getNonce()),d=xi(t)?D1:nu,l=await this.getChainId(),y=await this.buildDeclarePayload({classHash:r,contract:t,casm:n,compiledClassHash:a},{nonce:c,chainId:l,version:d,walletAddress:this.address,maxFee:si,cairoVersion:void 0}),M=await super.getDeclareEstimateFee(y,{version:d,nonce:c},i,o),j=Yf(M.overall_fee);return{...M,suggestedMaxFee:j}}async estimateAccountDeployFee({classHash:t,addressSalt:r=0,constructorCalldata:n=[],contractAddress:a},{blockIdentifier:i,skipValidate:s}={}){const o=Ar(nu),c=si,d=await this.getChainId(),l=await this.buildAccountDeployPayload({classHash:t,addressSalt:r,constructorCalldata:n,contractAddress:a},{nonce:c,chainId:d,version:o,walletAddress:this.address,maxFee:si,cairoVersion:void 0}),y=await super.getDeployAccountEstimateFee({...l},{version:o,nonce:c},i,s),M=Yf(y.overall_fee);return{...y,suggestedMaxFee:M}}async estimateDeployFee(t,r){const n=this.buildUDCContractPayload(t);return this.estimateInvokeFee(n,r)}async estimateFeeBulk(t,{nonce:r,blockIdentifier:n,skipValidate:a}={}){const i=await this.accountInvocationsFactory(t,{versions:[nu,D1],nonce:r,blockIdentifier:n}),s=await super.getEstimateFeeBulk(i,{blockIdentifier:n,skipValidate:a});return[].concat(s).map(o=>{const c=Yf(o.overall_fee);return{...o,suggestedMaxFee:c}})}async buildInvocation(t,r){const n=V1(t,await this.getCairoVersion()),a=await this.signer.signTransaction(t,r);return{contractAddress:this.address,calldata:n,signature:a}}async execute(t,r=void 0,n={}){const a=Array.isArray(t)?t:[t],i=Ar(n.nonce??await this.getNonce()),s=n.maxFee??await this.getSuggestedMaxFee({type:"INVOKE_FUNCTION",payload:t},n),o=Ar(Wf),c=await this.getChainId(),d={walletAddress:this.address,nonce:i,maxFee:s,version:o,chainId:c,cairoVersion:await this.getCairoVersion()},l=await this.signer.signTransaction(a,d,r),y=V1(a,await this.getCairoVersion());return this.invokeFunction({contractAddress:this.address,calldata:y,signature:l},{nonce:i,maxFee:s,version:o})}async declareIfNot(t,r={}){const n=z3(t);try{await this.getClassByHash(n.classHash)}catch{return this.declare(t,r)}return{transaction_hash:"",class_hash:n.classHash}}async declare(t,r={}){const n=z3(t),a={};a.nonce=Ar(r.nonce??await this.getNonce()),a.maxFee=r.maxFee??await this.getSuggestedMaxFee({type:"DECLARE",payload:n},r),a.version=xi(t.contract)?L0:Wf,a.chainId=await this.getChainId();const i=await this.buildDeclarePayload(n,{...a,walletAddress:this.address,cairoVersion:void 0});return this.declareContract(i,a)}async deploy(t,r){const n=[].concat(t).map(o=>{const{classHash:c,salt:d,unique:l=!0,constructorCalldata:y=[]}=o,M=On.compile(y),j=d??V3();return{call:{contractAddress:Zf.ADDRESS,entrypoint:Zf.ENTRYPOINT,calldata:[c,j,E3(l),M.length,...M]},address:L1(l?No(this.address,j):j,c,M,l?Zf.ADDRESS:0)}}),a=n.map(o=>o.call),i=n.map(o=>o.address);return{...await this.execute(a,void 0,r),contract_address:i}}async deployContract(t,r){const n=await this.deploy(t,r),a=await this.waitForTransaction(n.transaction_hash);return mG(a)}async declareAndDeploy(t,r){const{constructorCalldata:n,salt:a,unique:i}=t;let s=await this.declareIfNot(t,r);if(s.transaction_hash!==""){const c=await this.waitForTransaction(s.transaction_hash);s={...s,...c}}const o=await this.deployContract({classHash:s.class_hash,salt:a,unique:i,constructorCalldata:n},r);return{declare:{...s},deploy:o}}async deployAccount({classHash:t,constructorCalldata:r=[],addressSalt:n=0,contractAddress:a},i={}){const s=Ar(Wf),o=si,c=await this.getChainId(),d=On.compile(r),l=a??L1(n,t,d,0),y=i.maxFee??await this.getSuggestedMaxFee({type:"DEPLOY_ACCOUNT",payload:{classHash:t,constructorCalldata:d,addressSalt:n,contractAddress:l}},i),M=await this.signer.signDeployAccountTransaction({classHash:t,constructorCalldata:d,contractAddress:l,addressSalt:n,chainId:c,maxFee:y,version:s,nonce:o});return this.deployAccountContract({classHash:t,addressSalt:n,constructorCalldata:r,signature:M},{nonce:o,maxFee:y,version:s})}async signMessage(t){return this.signer.signMessage(t,this.address)}async hashMessage(t){return e6(t,this.address)}async verifyMessageHash(t,r){try{return await this.callContract({contractAddress:this.address,entrypoint:"isValidSignature",calldata:On.compile({hash:Ar(t).toString(),signature:F1(r)})}),!0}catch{return!1}}async verifyMessage(t,r){const n=await this.hashMessage(t);return this.verifyMessageHash(n,r)}async getSuggestedMaxFee({type:t,payload:r},n){let a;switch(t){case"INVOKE_FUNCTION":a=await this.estimateInvokeFee(r,n);break;case"DECLARE":a=await this.estimateDeclareFee(r,n);break;case"DEPLOY_ACCOUNT":a=await this.estimateAccountDeployFee(r,n);break;case"DEPLOY":a=await this.estimateDeployFee(r,n);break;default:a={suggestedMaxFee:si,overall_fee:si};break}return a.suggestedMaxFee}async buildDeclarePayload(t,{nonce:r,chainId:n,version:a,walletAddress:i,maxFee:s}){const{classHash:o,contract:c,compiledClassHash:d}=z3(t),l=q3(c),y=await this.signer.signDeclareTransaction({classHash:o,compiledClassHash:d,senderAddress:i,chainId:n,maxFee:s,version:a,nonce:r});return{senderAddress:i,signature:y,contract:l,compiledClassHash:d}}async buildAccountDeployPayload({classHash:t,addressSalt:r=0,constructorCalldata:n=[],contractAddress:a},{nonce:i,chainId:s,version:o,maxFee:c}){const d=On.compile(n),l=a??L1(r,t,d,0),y=await this.signer.signDeployAccountTransaction({classHash:t,contractAddress:l,chainId:s,maxFee:c,version:o,nonce:i,addressSalt:r,constructorCalldata:d});return{classHash:t,addressSalt:r,constructorCalldata:d,signature:y}}buildUDCContractPayload(t){return[].concat(t).map(n=>{const{classHash:a,salt:i="0",unique:s=!0,constructorCalldata:o=[]}=n,c=On.compile(o);return{contractAddress:Zf.ADDRESS,entrypoint:Zf.ENTRYPOINT,calldata:[a,i,E3(s),c.length,...c]}})}async simulateTransaction(t,{nonce:r,blockIdentifier:n,skipValidate:a,skipExecute:i}={}){const s=await this.accountInvocationsFactory(t,{versions:[Wf,L0],nonce:r,blockIdentifier:n});return super.getSimulateTransaction(s,{blockIdentifier:n,skipValidate:a,skipExecute:i})}async accountInvocationsFactory(t,{versions:r,nonce:n,blockIdentifier:a}){const i=r[0],s=await this.getNonceSafe(n),o=await this.getChainId(),c="payload"in t[0]?t[0].payload:t[0],d=t[0].type==="DEPLOY_ACCOUNT"?await this.getCairoVersion(c.classHash):await this.getCairoVersion();return Promise.all([].concat(t).map(async(l,y)=>{const M="payload"in l?l.payload:l,j={walletAddress:this.address,nonce:Ar(Number(s)+y),maxFee:si,version:i,chainId:o,cairoVersion:d},G={type:l.type,version:i,nonce:Ar(Number(s)+y),blockIdentifier:a};if(l.type==="INVOKE_FUNCTION"){const $=await this.buildInvocation([].concat(M),j);return{...G,...$}}if(l.type==="DECLARE"){j.version=xi(M.contract)?Ar(r[1]):Ar(r[0]);const $=await this.buildDeclarePayload(M,j);return{...G,...$,version:j.version}}if(l.type==="DEPLOY_ACCOUNT"){const $=await this.buildAccountDeployPayload(M,j);return{...G,...$}}if(l.type==="DEPLOY"){const $=this.buildUDCContractPayload(M),fe=await this.buildInvocation($,j);return{...G,...fe,type:"INVOKE_FUNCTION"}}throw Error(`accountInvocationsFactory: unsupported transaction type: ${l}`)}))}async getStarkName(t=this.address,r){return super.getStarkName(t,r)}},jae=class{},YT=new $1({rpc:{default:!0}}),$ae=class extends null{},_G={};ka(_G,{getAbiEvents:()=>JT,parseEvents:()=>XT});function JT(e){return e.filter(t=>t.type==="event"&&(t.size||t.kind!=="enum")).reduce((t,r)=>{const n=r.name.slice(r.name.lastIndexOf(":")+1),a={...r};return a.name=n,{...t,[Ha(fi(eu(n)).toString(16))]:a}},{})}function XT(e,t,r,n){return e.flat().reduce((i,s)=>{const o=t[s.keys[0]];if(!o)return i;const c={};c[o.name]={},s.keys.shift();const d=s.keys[Symbol.iterator](),l=s.data[Symbol.iterator](),y=o.members?.filter(j=>j.kind==="key")||o.keys,M=o.members?.filter(j=>j.kind==="data")||o.data;return y.forEach(j=>{c[o.name][j.name]=P1(d,j,r,n,c[o.name])}),M.forEach(j=>{c[o.name][j.name]=P1(l,j,r,n,c[o.name])}),i.push(c),i},[])}var t6=e=>{const t=["blockIdentifier","parseRequest","parseResponse","formatResponse","maxFee","nonce","signature","addressSalt"],r=e[e.length-1];return typeof r=="object"&&t.some(n=>n in r)?{args:e,options:e.pop()}:{args:e}};function QT(e,t){return async function(...r){const n=t6(r);return e.call(t.name,n.args,{parseRequest:!0,parseResponse:!0,...n.options})}}function vG(e,t){return async function(...r){const n=t6(r);return e.invoke(t.name,n.args,{parseRequest:!0,...n.options})}}function eS(e,t){return t.stateMutability==="view"||t.state_mutability==="view"?QT(e,t):vG(e,t)}function wG(e,t){return function(...r){return e.populate(t.name,r)}}function EG(e,t){return function(...r){return e.estimate(t.name,r)}}function q0(e,t){return Array.isArray(e)&&"__compiled__"in e?e:Array.isArray(e)&&Array.isArray(e[0])&&"__compiled__"in e[0]?e[0]:t()}var tS=class{constructor(e,t,r=YT){yt(this,"abi");yt(this,"address");yt(this,"providerOrAccount");yt(this,"deployTransactionHash");yt(this,"structs");yt(this,"events");yt(this,"functions");yt(this,"callStatic");yt(this,"populateTransaction");yt(this,"estimateFee");yt(this,"callData");this.address=t&&t.toLowerCase(),this.providerOrAccount=r,this.callData=new On(e),this.structs=On.getAbiStruct(e),this.events=JT(e);const n=sT(e);this.abi=n.getLegacyFormat();const a={enumerable:!0,value:{},writable:!1};Object.defineProperties(this,{functions:{enumerable:!0,value:{},writable:!1},callStatic:{enumerable:!0,value:{},writable:!1},populateTransaction:{enumerable:!0,value:{},writable:!1},estimateFee:{enumerable:!0,value:{},writable:!1}}),this.abi.forEach(i=>{if(i.type!=="function")return;const s=i.name;this[s]||Object.defineProperty(this,s,{...a,value:eS(this,i)}),this.functions[s]||Object.defineProperty(this.functions,s,{...a,value:eS(this,i)}),this.callStatic[s]||Object.defineProperty(this.callStatic,s,{...a,value:QT(this,i)}),this.populateTransaction[s]||Object.defineProperty(this.populateTransaction,s,{...a,value:wG(this,i)}),this.estimateFee[s]||Object.defineProperty(this.estimateFee,s,{...a,value:EG(this,i)})})}attach(e){this.address=e}connect(e){this.providerOrAccount=e}async deployed(){return this.deployTransactionHash&&(await this.providerOrAccount.waitForTransaction(this.deployTransactionHash),this.deployTransactionHash=void 0),this}async call(e,t=[],{parseRequest:r=!0,parseResponse:n=!0,formatResponse:a=void 0,blockIdentifier:i=void 0}={}){ra(this.address!==null,"contract is not connected to an address");const s=q0(t,()=>r?(this.callData.validate("CALL",e,t),this.callData.compile(e,t)):(console.warn("Call skipped parsing but provided rawArgs, possible malfunction request"),t));return this.providerOrAccount.callContract({contractAddress:this.address,calldata:s,entrypoint:e},i).then(o=>n?a?this.callData.format(e,o.result,a):this.callData.parse(e,o.result):o.result)}invoke(e,t=[],{parseRequest:r=!0,maxFee:n,nonce:a,signature:i}={}){ra(this.address!==null,"contract is not connected to an address");const s=q0(t,()=>r?(this.callData.validate("INVOKE",e,t),this.callData.compile(e,t)):(console.warn("Invoke skipped parsing but provided rawArgs, possible malfunction request"),t)),o={contractAddress:this.address,calldata:s,entrypoint:e};if("execute"in this.providerOrAccount)return this.providerOrAccount.execute(o,void 0,{maxFee:n,nonce:a});if(!a)throw new Error("Nonce is required when invoking a function without an account");return console.warn(`Invoking ${e} without an account. This will not work on a public node.`),this.providerOrAccount.invokeFunction({...o,signature:i},{nonce:a})}async estimate(e,t=[]){ra(this.address!==null,"contract is not connected to an address"),q0(t,()=>!1)||this.callData.validate("INVOKE",e,t);const r=this.populate(e,t);if("estimateInvokeFee"in this.providerOrAccount)return this.providerOrAccount.estimateInvokeFee(r);throw Error("Contract must be connected to the account contract to estimate")}populate(e,t=[]){const r=q0(t,()=>this.callData.compile(e,t));return{contractAddress:this.address,entrypoint:e,calldata:r}}parseEvents(e){return XT(e.events?.filter(t=>M0(t.from_address)===M0(this.address),[])||[],this.events,this.structs,On.getAbiEnum(this.abi))}isCairo1(){return XA.isCairo1Abi(this.abi)}async getVersion(){return this.providerOrAccount.getContractVersion(this.address)}typedv1(e){return this}typedv2(e){return this}},Vae=class{constructor(){yt(this,"functions");yt(this,"callStatic");yt(this,"populateTransaction");yt(this,"estimateFee")}},zae=class{constructor(e){yt(this,"compiledContract");yt(this,"account");yt(this,"abi");yt(this,"classHash");yt(this,"casm");yt(this,"compiledClassHash");yt(this,"CallData");this.compiledContract=e.compiledContract,this.account=e.account,this.casm=e.casm,this.abi=e.abi??e.compiledContract.abi,this.classHash=e.classHash,this.compiledClassHash=e.compiledClassHash,this.CallData=new On(this.abi)}async deploy(...e){const{args:t,options:r={parseRequest:!0}}=t6(e),n=q0(t,()=>r.parseRequest?(this.CallData.validate("DEPLOY","constructor",t),this.CallData.compile("constructor",t)):(console.warn("Call skipped parsing but provided rawArgs, possible malfunction request"),t)),{deploy:{contract_address:a,transaction_hash:i}}=await this.account.declareAndDeploy({contract:this.compiledContract,casm:this.casm,classHash:this.classHash,compiledClassHash:this.compiledClassHash,constructorCalldata:n,salt:r.addressSalt});ra(!!a,"Deployment of the contract failed");const s=new tS(this.compiledContract.abi,a,this.account);return s.deployTransactionHash=i,s}connect(e){return this.account=e,this}attach(e){return new tS(this.abi,e,this.account)}};function xG(e){return Ha(Ko(Zt(e)).padStart(64,"0"))}function AG(e){ZA(e,si,h3-1n,"Starknet Address");const t=xG(e);if(!t.match(/^(0x)?[0-9a-fA-F]{64}$/))throw new Error("Invalid Address Format");return t}function TG(e){const t=Ko(AG(e)).toLowerCase().split(""),r=Ko(x3(e)),n=hexToBytes2(r.padStart(64,"0"));for(let a=0;a>1]>>4>=8&&(t[a]=t[a].toUpperCase()),(n[a>>1]&15)>=8&&(t[a+1]=t[a+1].toUpperCase());return Ha(t.join(""))}function qae(e){return TG(e)===e}var Zae=null;class SG extends yG{constructor(t,r){const n=mT.starkCurve.utils.randomPrivateKey();super(r||YT,t,n)}async execute(t,r,n){const[a,i]=await Hg.execute.parseAsync([t,n]);An({type:"EXECUTE_TRANSACTION",data:{transactions:a,transactionsDetail:i}});const{actionHash:s}=await hn("EXECUTE_TRANSACTION_RES",1e3);An({type:"OPEN_UI"});const o=await Promise.race([hn("TRANSACTION_SUBMITTED",11*60*1e3,c=>c.data.actionHash===s),hn("TRANSACTION_FAILED",10*60*1e3,c=>c.data.actionHash===s).then(()=>"error").catch(()=>(An({type:"TRANSACTION_FAILED",data:{actionHash:s}}),"timeout"))]);if(o==="error")throw Error("User abort");if(o==="timeout")throw Error("User action timed out");return{transaction_hash:o.txHash}}async declare({contract:t,classHash:r,casm:n,compiledClassHash:a},i){An({type:"REQUEST_DECLARE_CONTRACT",data:{payload:{contract:t,classHash:r,casm:n,compiledClassHash:a}}});const{actionHash:s}=await hn("REQUEST_DECLARE_CONTRACT_RES",1e3);An({type:"OPEN_UI"});const o=await Promise.race([hn("DECLARE_CONTRACT_ACTION_SUBMITTED",11*60*1e3,c=>c.data.actionHash===s),hn("DECLARE_CONTRACT_ACTION_FAILED",10*60*1e3,c=>c.data.actionHash===s).then(()=>"error").catch(()=>"timeout")]);if(o==="error")throw Error("User abort");if(o==="timeout")throw Error("User action timed out");return{transaction_hash:o.txHash,class_hash:o.classHash}}async signMessage(t,r={skipDeploy:!1}){return d1({...t,skipDeploy:r.skipDeploy})}}const kG=Y0((e,t)=>new j0({nodeUrl:e,chainId:t,headers:Og}),(e,t="")=>`${e}::${t}`);function IG(e){const t=rl.encodeShortString(e.chainId);return kG(e.rpcUrl,t)}function CG(e){return new Gy({nodeUrl:e.rpcUrl,headers:Og})}class OG extends _1{constructor(t){const r=Ng(t.id);if(r){const a=qz(t)[r];super({rpc:{nodeUrl:a}})}else super(CG(t))}async callContract(t,r){return super.callContract(t,r)}}const NG=e=>new Promise(t=>setTimeout(t,e)),RG=e=>{const t=(Math.pow(2,e)-1)*1e3,r=.9+Math.random()*.2;return t*r};function MG(e,t){var r=-1,n=e.length;for(t||(t=Array(n));++r-1&&e%1==0&&e-1&&e%1==0&&e<=lW}const fS=hW;var pW="[object Arguments]",bW="[object Array]",gW="[object Boolean]",mW="[object Date]",yW="[object Error]",_W="[object Function]",vW="[object Map]",wW="[object Number]",EW="[object Object]",xW="[object RegExp]",AW="[object Set]",TW="[object String]",SW="[object WeakMap]",kW="[object ArrayBuffer]",IW="[object DataView]",CW="[object Float32Array]",OW="[object Float64Array]",NW="[object Int8Array]",RW="[object Int16Array]",MW="[object Int32Array]",BW="[object Uint8Array]",PW="[object Uint8ClampedArray]",DW="[object Uint16Array]",LW="[object Uint32Array]",na={};na[CW]=na[OW]=na[NW]=na[RW]=na[MW]=na[BW]=na[PW]=na[DW]=na[LW]=!0,na[pW]=na[bW]=na[kW]=na[gW]=na[IW]=na[mW]=na[yW]=na[_W]=na[vW]=na[wW]=na[EW]=na[xW]=na[AW]=na[TW]=na[SW]=!1;function UW(e){return r6(e)&&fS(e.length)&&!!na[h(e)]}const FW=UW;function HW(e){return function(t){return e(t)}}const jW=HW;var dS=typeof Yo=="object"&&Yo&&!Yo.nodeType&&Yo,Z0=dS&&typeof Jo=="object"&&Jo&&!Jo.nodeType&&Jo,$W=Z0&&Z0.exports===dS,n6=$W&&B.process,VW=function(){try{var e=Z0&&Z0.require&&Z0.require("util").types;return e||n6&&n6.binding&&n6.binding("util")}catch{}}();const uS=VW;var lS=uS&&uS.isTypedArray,zW=lS?jW(lS):FW;const qW=zW;var ZW=Object.prototype,KW=ZW.hasOwnProperty;function GW(e,t){var r=iS(e),n=!r&&eW(e),a=!r&&!n&&oW(e),i=!r&&!n&&!a&&qW(e),s=r||n||a||i,o=s?KG(e.length,String):[],c=o.length;for(var d in e)(t||KW.call(e,d))&&!(s&&(d=="length"||a&&(d=="offset"||d=="parent")||i&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||uW(d,c)))&&o.push(d);return o}const WW=GW;var YW=Object.prototype;function JW(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||YW;return e===r}const XW=JW;function QW(e,t){return function(r){return e(t(r))}}var eY=QW(Object.keys,Object);const tY=eY;var rY=Object.prototype,nY=rY.hasOwnProperty;function aY(e){if(!XW(e))return tY(e);var t=[];for(var r in Object(e))nY.call(e,r)&&r!="constructor"&&t.push(r);return t}const iY=aY;function sY(e){return e!=null&&fS(e.length)&&!ge(e)}const oY=sY;function cY(e){return oY(e)?WW(e):iY(e)}const fY=cY;function dY(e){return e==null?[]:qG(e,fY(e))}const uY=dY;function lY(e){return rS(uY(e))}const hY=lY;function pY(e){var t=iS(e)?jG:hY;return t(e)}const bY=pY;class gY extends j0{constructor(t){const{nodeUrls:r,randomise:n=!0,maxRetryCount:a=5,fetchImplementation:i,backoffImplementation:s=RG,...o}=t;if(!r.length)throw new Error("nodeUrls must contain at least one element");super({...o,nodeUrl:r[0]}),this.nodeUrls=n?bY(r):r,this.nodeIndex=n?Math.floor(Math.random()*r.length):0,this.maxRetryCount=a,this.fetchImplementation=i,this.backoffImplementation=s,this.getChainId()}async getChainId(){if(this.nodeUrls)return super.getChainId()}fetch(t,r){const n={jsonrpc:"2.0",method:t,...r&&{params:r},id:0};return this.fetchWithRetry({method:"POST",body:yT.stringify(n),headers:this.headers})}async fetchWithRetry(t,r=0){const n=this.nodeUrls?this.nodeUrls[this.nodeIndex]:this.nodeUrl;try{const a=this.fetchImplementation??fetch,i=this.nodeIndex,s=await a(n,t);if(!s.ok){if(i===this.nodeIndex&&(this.nodeIndex=(this.nodeIndex+1)%this.nodeUrls.length),s.status<500&&s.status!==429)return s;if(r++,r{const t=Promise.race([hn("CONNECT_DAPP_RES",6e5),hn("REJECT_PREAUTHORIZATION",6e5).then(()=>"USER_ABORTED")]);An({type:"CONNECT_DAPP"});const r=await t;if(!r)throw Error("No wallet account (should not be possible)");if(r==="USER_ABORTED")throw Error("User aborted");if(!window.starknet)throw Error("No starknet object detected");const n=window.starknet,{address:a,network:i}=r;if(e==="v5"){n.starknetJsVersion="v5";const s=new mY(i);n.provider=s,n.account=new SG(a,s)}else if(e==="v4"){n.starknetJsVersion="v4";const s=new OG(i);n.provider=s,n.account=new bZ(a,s)}else throw new Error(`Unsupported starknet.js version: ${e}`);return n.selectedAddress=a,n.chainId=i.chainId,n.isConnected=!0,[a]},isPreauthorized:async()=>Ey(),on:(e,t)=>{if(e==="accountsChanged")cu.push({type:e,handler:t});else if(e==="networkChanged")cu.push({type:e,handler:t});else throw A(e),new Error(`Unknwown event: ${e}`)},off:(e,t)=>{if(e!=="accountsChanged"&&e!=="networkChanged")throw A(e),new Error(`Unknwown event: ${e}`);const r=cu.findIndex(n=>n.type===e&&n.handler===t);r>=0&&cu.splice(r,1)}},_Y=["starknet","starknet_argentX"];function pS(){_Y.forEach(e=>{try{delete window[e]}catch{}try{Object.defineProperty(window,e,{value:hS,writable:!1})}catch{}try{window[e]=hS}catch{}})}function q1(){pS(),setTimeout(pS,100)}q1(),window.addEventListener("load",()=>q1()),document.addEventListener("DOMContentLoaded",()=>q1()),document.addEventListener("readystatechange",()=>q1());const vY=async(e,t)=>{const r=window.starknet;if(!await rm.dappMessaging.connectDapp.mutate({origin:window.location.origin,silent:t}))return EB();const{address:a,network:i}=e,s=hw(i);r.selectedAddress=a,r.chainId=i.chainId,r.provider=s,r.account=new Bz(a,s);for(const o of cu)if(o.type==="accountsChanged")o.handler([a]);else if(o.type==="networkChanged"){const c=u1(i)?rl.encodeShortString(i.chainId):i.chainId;o.handler(c,[a])}else A(o)};window.addEventListener("message",async({data:e})=>{if(!window.starknet)return;const t=window.starknet;if(e.type==="CONNECT_ACCOUNT_RES"||e.type==="APPROVE_REQUEST_SWITCH_CUSTOM_NETWORK"){const r=e.type==="CONNECT_ACCOUNT_RES"?e.data:e.data.selectedAccount;r&&(r.address!==t.selectedAddress||r.network.chainId!==t.chainId)&&vY(r,!1)}else if(e.type==="DISCONNECT_ACCOUNT"){t.selectedAddress=void 0,t.account=void 0,t.isConnected=!1;for(const r of cu)r.type==="accountsChanged"?r.handler([]):r.type==="networkChanged"?r.handler(void 0):A(r)}})})()})()});DY();})(); + +//# sourceMappingURL=inpage.js.map \ No newline at end of file diff --git a/e2e/mig/6.19.5/main.js b/e2e/mig/6.19.5/main.js new file mode 100644 index 0000000..8f860a6 --- /dev/null +++ b/e2e/mig/6.19.5/main.js @@ -0,0 +1,4 @@ +(()=>{(function(){try{var h=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},v=new Error().stack;v&&(h._sentryDebugIds=h._sentryDebugIds||{},h._sentryDebugIds[v]="e935b483-22bd-4166-8e1d-e7580fd4adc7",h._sentryDebugIdIdentifier="sentry-dbid-e935b483-22bd-4166-8e1d-e7580fd4adc7")}catch{}})();var G=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};G.SENTRY_RELEASE={id:"6.19.5"};(()=>{"use strict";var h={18279:(e,i,t)=>{t.d(i,{BA:()=>n,CY:()=>D,Et:()=>A,JO:()=>U,Kz:()=>S,O_:()=>L,UU:()=>C,Vl:()=>M,W_:()=>d,Wo:()=>g,ZZ:()=>I,tT:()=>r,tc:()=>N,uX:()=>y,wx:()=>m});var s=t(28159),o=t(78990);function c(b){return(0,s.A)(b)&&b.length>0}const r="https://api.hydrogen.argent47.net/v1",n=c(r),_=n?(0,o.A)(r,"tokens/prices?chain=starknet"):void 0,f=n?(0,o.A)(r,"tokens/info?chain=starknet"):void 0,l=n?(0,o.A)(r,"reviewer"):void 0,E=c(l)?(0,o.A)(l,"transactions/v2/review/starknet"):void 0,g="https://healthcheck.hydrogen.argent47.net/argentx.status.json",A=c(g),p=null,d=n?(0,o.A)(r,"explorer/starknet"):void 0,R=c(d),T=n?(0,o.A)(r,"multisig/starknet/"):void 0,w=c(T)?T:void 0,B=n?(0,o.A)(r,"tokens/dapps"):void 0,W=n?(0,o.A)(r,"account"):void 0,x=n?(0,o.A)(r,"explorer/discover/starknet"):void 0,K=n?(0,o.A)(r,"explorer/discover/starknet/2fa"):void 0,j=w?(0,o.A)(w):void 0,k=n?(0,o.A)(r,"tokens/swap"):void 0,I="https://www.argent.xyz/legal/privacy/argent-x/",N="https://www.argent.xyz/legal/argent-extension-terms-of-service/",L=!1,V=n?(0,o.A)(r,"status/starknet"):void 0,U=!0,S="https://portfolio.argent.xyz/overview/",m="https://portfolio.hydrogen.argent47.net/overview/",F=n?(0,o.A)(r,"affiliate/referral"):void 0,y="MISSING_ENV_VAR".ARGENT_OPTIMIZER_URL??"https://content.argent.net/image",C=n?(0,o.A)(r,"accounts/starknet"):void 0,M=n?(0,o.A)(r,"accounts"):void 0,D=n?(0,o.A)(r,"name-resolution","resolve"):void 0,X=null,Y=null,z=null,H=n?(0,o.A)(r,"/tokens/graph"):void 0,Z=n?(0,o.A)(r,"/tokens/info"):void 0},51653:(e,i,t)=>{t.d(i,{z:()=>s});function s(o){return o.runtime.getManifest().manifest_version===2?o.browserAction:o.action}},77097:(e,i,t)=>{t.d(i,{A:()=>c});var s=t(51653),o=t(21157);class c{constructor(n,_=o.o){this.browser=n,this.connectId=_}setDefaultPopup(n="index.html"){return(0,s.z)(this.browser).setPopup({popup:n})}unsetDefaultPopup(){return this.setDefaultPopup("")}async createTab(n="index.html"){const _=this.browser.runtime.getURL(n);return this.browser.tabs.create({url:_})}async getTab(){const[n]=await this.browser.tabs.query({url:[this.browser.runtime.getURL("/*")]});return n}async hasTab(){const n=await this.getTab();return!!(n&&n.id&&n.windowId)}async focusTab(){const n=await this.getTab();n&&n.id&&n.windowId&&(await this.browser.windows.update(n.windowId,{focused:!0}),await this.browser.tabs.update(n.id,{active:!0}))}async getFloatingWindow(){const[n]=await this.browser.windows.getAll({windowTypes:["popup"]});return n}async hasFloatingWindow(){return!!await this.getFloatingWindow()}async focusFloatingWindow(){const n=await this.getFloatingWindow();n&&n.id&&await this.browser.windows.update(n.id,{focused:!0})}async closeFloatingWindow(){const n=await this.getFloatingWindow();n?.id&&await this.browser.windows.remove(n.id)}}},21157:(e,i,t)=>{t.d(i,{b:()=>o,o:()=>s});const s="argent-x-ui-service-connect",o=!0},83016:(e,i,t)=>{t.d(i,{K:()=>r});var s=t(83346),o=t.n(s),c=t(77097);const r=new c.A(o())},68598:(e,i,t)=>{var s=t(65723),o=t(22155),c=t(58997),r=t(18279),n=t(64845);const _=(0,o.lazy)(()=>t.e(441).then(t.bind(t,93441)).then(E=>({default:E.App}))),f=document.getElementById("root");if(!f)throw new Error("No root element found");const l=!1;r.BA,n.V.registerUIProcess(),(0,c.H)(f).render((0,s.jsx)(o.StrictMode,{children:(0,s.jsx)(_,{})}))},94587:(e,i,t)=>{t.d(i,{V:()=>g});var s=t(35589),o=t(6201),c=t.n(o),r=t(69492),n=t(71197),_=t(83346),f=t.n(_);const l=f().runtime.connect();let u=(0,s.d)({transformer:n.Ay,links:[(0,o.chromeLink)({port:l})]});if(typeof window>"u")throw new Error("This file should only be imported in the UI");(0,r.l7)(l,()=>f().runtime.connect(),A=>{A.name,u=(0,s.d)({transformer:n.Ay,links:[(0,o.chromeLink)({port:A})]})});const E=(A=[])=>({get:function(p,d){const R=["mutate","query","subscription"].includes(d),T=typeof p[d]=="object"&&p[d]!==null||typeof p[d]=="function";return R||!T?[...A,d].reduce((O,w)=>O[w],u):new Proxy(p[d],E([...A,d]))}}),g=new Proxy(u,E())},20953:(e,i,t)=>{t.d(i,{C:()=>s,F:()=>o});const s=Symbol("Navigate"),o=Symbol("ShowNotification")},64845:(e,i,t)=>{t.d(i,{V:()=>A});var s=t(83346),o=t.n(s),c=t(11164),r=t(83016),n=t(69492);function _(p){const d=p.origin??p.url;if(!d)throw new Error("Message sender has no origin or url");const{origin:R}=new URL(d);return R}function f(p){const R=o().runtime.getURL("").replace(/\/$/,"");return _(p)===R}var l=t(20953),u=t(94587);class E{constructor(d,R,T){this.emitter=d,this.browser=R,this.uiService=T,this.initMessageListeners()}initMessageListeners(){this.browser.runtime.onMessage.addListener((d,R,T)=>{if(f(R))switch(d.type){case"HAS_POPUP":T(this.hasPopup());break;case"CLOSE_POPUP":this.closePopup();break;case"NAVIGATE":this.emitter.emit(l.C,d.payload);break;case"SHOW_NOTIFICATION":this.emitter.emit(l.F,d.payload);break;default:}})}registerUIProcess(){(0,n.um)(()=>this.browser.runtime.connect({name:this.uiService.connectId}),()=>{})}getPopup(){const[d]=this.browser.extension.getViews({type:"popup"});return d}hasPopup(){return!!this.getPopup()}closePopup(){const d=this.getPopup();d&&d.close()}async onNotificationClicked(d){await u.V.notifications.notificationClicked.mutate(d)}async openUiAsPopup(){await u.V.ui.openUiAsPopup.query()}}const g=new c.A,A=new E(g,o(),r.K)}},v={};function a(e){var i=v[e];if(i!==void 0)return i.exports;var t=v[e]={id:e,loaded:!1,exports:{}};return h[e].call(t.exports,t,t.exports,a),t.loaded=!0,t.exports}a.m=h,a.amdO={},(()=>{var e=[];a.O=(i,t,s,o)=>{if(t){o=o||0;for(var c=e.length;c>0&&e[c-1][2]>o;c--)e[c]=e[c-1];e[c]=[t,s,o];return}for(var r=1/0,c=0;c=o)&&Object.keys(a.O).every(A=>a.O[A](t[_]))?t.splice(_--,1):(n=!1,o{var i=e&&e.__esModule?()=>e.default:()=>e;return a.d(i,{a:i}),i},(()=>{var e=Object.getPrototypeOf?t=>Object.getPrototypeOf(t):t=>t.__proto__,i;a.t=function(t,s){if(s&1&&(t=this(t)),s&8||typeof t=="object"&&t&&(s&4&&t.__esModule||s&16&&typeof t.then=="function"))return t;var o=Object.create(null);a.r(o);var c={};i=i||[null,e({}),e([]),e(e)];for(var r=s&2&&t;typeof r=="object"&&!~i.indexOf(r);r=e(r))Object.getOwnPropertyNames(r).forEach(n=>c[n]=()=>t[n]);return c.default=()=>t,a.d(o,c),o}})(),a.d=(e,i)=>{for(var t in i)a.o(i,t)&&!a.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:i[t]})},a.f={},a.e=e=>Promise.all(Object.keys(a.f).reduce((i,t)=>(a.f[t](e,i),i),[])),a.u=e=>""+e+".js",a.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),a.o=(e,i)=>Object.prototype.hasOwnProperty.call(e,i),(()=>{var e={},i="@argent-x/extension:";a.l=(t,s,o,c)=>{if(e[t]){e[t].push(s);return}var r,n;if(o!==void 0)for(var _=document.getElementsByTagName("script"),f=0;f<_.length;f++){var l=_[f];if(l.getAttribute("src")==t||l.getAttribute("data-webpack")==i+o){r=l;break}}r||(n=!0,r=document.createElement("script"),r.charset="utf-8",r.timeout=120,a.nc&&r.setAttribute("nonce",a.nc),r.setAttribute("data-webpack",i+o),r.src=t),e[t]=[s];var u=(g,A)=>{r.onerror=r.onload=null,clearTimeout(E);var p=e[t];if(delete e[t],r.parentNode&&r.parentNode.removeChild(r),p&&p.forEach(d=>d(A)),g)return g(A)},E=setTimeout(u.bind(null,void 0,{type:"timeout",target:r}),12e4);r.onerror=u.bind(null,r.onerror),r.onload=u.bind(null,r.onload),n&&document.head.appendChild(r)}})(),a.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e;a.g.importScripts&&(e=a.g.location+"");var i=a.g.document;if(!e&&i&&(i.currentScript&&i.currentScript.tagName.toUpperCase()==="SCRIPT"&&(e=i.currentScript.src),!e)){var t=i.getElementsByTagName("script");if(t.length)for(var s=t.length-1;s>-1&&(!e||!/^http(s?):/.test(e));)e=t[s--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),a.p=e})(),(()=>{var e={792:0};a.f.j=(s,o)=>{var c=a.o(e,s)?e[s]:void 0;if(c!==0)if(c)o.push(c[2]);else{var r=new Promise((l,u)=>c=e[s]=[l,u]);o.push(c[2]=r);var n=a.p+a.u(s),_=new Error,f=l=>{if(a.o(e,s)&&(c=e[s],c!==0&&(e[s]=void 0),c)){var u=l&&(l.type==="load"?"missing":l.type),E=l&&l.target&&l.target.src;_.message="Loading chunk "+s+` failed. +(`+u+": "+E+")",_.name="ChunkLoadError",_.type=u,_.request=E,c[1](_)}};a.l(n,f,"chunk-"+s,s)}},a.O.j=s=>e[s]===0;var i=(s,o)=>{var[c,r,n]=o,_,f,l=0;if(c.some(E=>e[E]!==0)){for(_ in r)a.o(r,_)&&(a.m[_]=r[_]);if(n)var u=n(a)}for(s&&s(o);la(68598));P=a.O(P)})();})(); + +//# sourceMappingURL=main.js.map \ No newline at end of file diff --git a/e2e/mig/6.19.5/manifest.json b/e2e/mig/6.19.5/manifest.json new file mode 100644 index 0000000..4293a1b --- /dev/null +++ b/e2e/mig/6.19.5/manifest.json @@ -0,0 +1,69 @@ +{ + "$schema": "https://json.schemastore.org/chrome-manifest.json", + "name": "Argent X - Starknet Wallet", + "description": "7 out of 10 Starknet users choose Argent X as their Starknet wallet. Join 2m+ Argent users now.", + "version": "5.19.5", + "manifest_version": 3, + "action": { + "default_icon": { + "16": "assets/appicon.png", + "48": "assets/appicon.png", + "128": "assets/appicon.png" + }, + "default_title": "Argent X", + "default_popup": "index.html" + }, + "permissions": [ + "alarms", + "tabs", + "storage", + "unlimitedStorage", + "notifications", + "hid", + "webNavigation" + ], + "host_permissions": [ + "http://localhost/*" + ], + "icons": { + "16": "assets/appicon.png", + "48": "assets/appicon.png", + "128": "assets/appicon.png" + }, + "content_security_policy": { + "extension_pages": "script-src 'self' 'wasm-unsafe-eval'; object-src 'self'" + }, + "externally_connectable": { + "matches": [ + "https://localhost:3005/*" + ], + "ids": [ + "*" + ] + }, + "content_scripts": [ + { + "matches": [ + "" + ], + "js": [ + "inject.js" + ], + "run_at": "document_start", + "all_frames": true + } + ], + "background": { + "service_worker": "background.js" + }, + "web_accessible_resources": [ + { + "matches": [ + "" + ], + "resources": [ + "inpage.js" + ] + } + ] +} \ No newline at end of file diff --git a/e2e/node_modules/.bin/playwright b/e2e/node_modules/.bin/playwright new file mode 100755 index 0000000..6cf7ead --- /dev/null +++ b/e2e/node_modules/.bin/playwright @@ -0,0 +1,17 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -z "$NODE_PATH" ]; then + export NODE_PATH="/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/@playwright+test@1.48.2/node_modules/@playwright/test/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/@playwright+test@1.48.2/node_modules/@playwright/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/@playwright+test@1.48.2/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/node_modules" +else + export NODE_PATH="/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/@playwright+test@1.48.2/node_modules/@playwright/test/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/@playwright+test@1.48.2/node_modules/@playwright/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/@playwright+test@1.48.2/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/node_modules:$NODE_PATH" +fi +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../../../node_modules/.pnpm/@playwright+test@1.48.2/node_modules/@playwright/test/cli.js" "$@" +else + exec node "$basedir/../../../node_modules/.pnpm/@playwright+test@1.48.2/node_modules/@playwright/test/cli.js" "$@" +fi diff --git a/e2e/node_modules/.bin/uuid b/e2e/node_modules/.bin/uuid new file mode 100755 index 0000000..0f64cdc --- /dev/null +++ b/e2e/node_modules/.bin/uuid @@ -0,0 +1,17 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -z "$NODE_PATH" ]; then + export NODE_PATH="/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/esm/bin/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/esm/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/uuid@11.0.3/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/node_modules" +else + export NODE_PATH="/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/esm/bin/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/esm/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/uuid@11.0.3/node_modules:/Users/cesarlopes/Documents/git/demo-dapp-starknet/node_modules/.pnpm/node_modules:$NODE_PATH" +fi +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/esm/bin/uuid" "$@" +else + exec node "$basedir/../../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid/dist/esm/bin/uuid" "$@" +fi diff --git a/e2e/node_modules/@playwright/test b/e2e/node_modules/@playwright/test new file mode 120000 index 0000000..2f30a64 --- /dev/null +++ b/e2e/node_modules/@playwright/test @@ -0,0 +1 @@ +../../../node_modules/.pnpm/@playwright+test@1.48.2/node_modules/@playwright/test \ No newline at end of file diff --git a/e2e/node_modules/@scure/base b/e2e/node_modules/@scure/base new file mode 120000 index 0000000..ef854c2 --- /dev/null +++ b/e2e/node_modules/@scure/base @@ -0,0 +1 @@ +../../../node_modules/.pnpm/@scure+base@1.1.9/node_modules/@scure/base \ No newline at end of file diff --git a/e2e/node_modules/@scure/bip39 b/e2e/node_modules/@scure/bip39 new file mode 120000 index 0000000..09aafb6 --- /dev/null +++ b/e2e/node_modules/@scure/bip39 @@ -0,0 +1 @@ +../../../node_modules/.pnpm/@scure+bip39@1.4.0/node_modules/@scure/bip39 \ No newline at end of file diff --git a/e2e/node_modules/@types/axios b/e2e/node_modules/@types/axios new file mode 120000 index 0000000..7f9d7f1 --- /dev/null +++ b/e2e/node_modules/@types/axios @@ -0,0 +1 @@ +../../../node_modules/.pnpm/@types+axios@0.14.4/node_modules/@types/axios \ No newline at end of file diff --git a/e2e/node_modules/@types/node b/e2e/node_modules/@types/node new file mode 120000 index 0000000..c93d2e8 --- /dev/null +++ b/e2e/node_modules/@types/node @@ -0,0 +1 @@ +../../../node_modules/.pnpm/@types+node@22.9.0/node_modules/@types/node \ No newline at end of file diff --git a/e2e/node_modules/@types/uuid b/e2e/node_modules/@types/uuid new file mode 120000 index 0000000..d894318 --- /dev/null +++ b/e2e/node_modules/@types/uuid @@ -0,0 +1 @@ +../../../node_modules/.pnpm/@types+uuid@10.0.0/node_modules/@types/uuid \ No newline at end of file diff --git a/e2e/node_modules/dotenv b/e2e/node_modules/dotenv new file mode 120000 index 0000000..1a2a53f --- /dev/null +++ b/e2e/node_modules/dotenv @@ -0,0 +1 @@ +../../node_modules/.pnpm/dotenv@16.4.5/node_modules/dotenv \ No newline at end of file diff --git a/e2e/node_modules/lodash-es b/e2e/node_modules/lodash-es new file mode 120000 index 0000000..5ce944e --- /dev/null +++ b/e2e/node_modules/lodash-es @@ -0,0 +1 @@ +../../node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es \ No newline at end of file diff --git a/e2e/node_modules/object-hash b/e2e/node_modules/object-hash new file mode 120000 index 0000000..1f9b347 --- /dev/null +++ b/e2e/node_modules/object-hash @@ -0,0 +1 @@ +../../node_modules/.pnpm/object-hash@3.0.0/node_modules/object-hash \ No newline at end of file diff --git a/e2e/node_modules/react b/e2e/node_modules/react new file mode 120000 index 0000000..07440b0 --- /dev/null +++ b/e2e/node_modules/react @@ -0,0 +1 @@ +../../node_modules/.pnpm/react@18.3.1/node_modules/react \ No newline at end of file diff --git a/e2e/node_modules/react-dom b/e2e/node_modules/react-dom new file mode 120000 index 0000000..6edafc0 --- /dev/null +++ b/e2e/node_modules/react-dom @@ -0,0 +1 @@ +../../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom \ No newline at end of file diff --git a/e2e/node_modules/starknet b/e2e/node_modules/starknet new file mode 120000 index 0000000..ae5e190 --- /dev/null +++ b/e2e/node_modules/starknet @@ -0,0 +1 @@ +../../node_modules/.pnpm/starknet@6.11.0/node_modules/starknet \ No newline at end of file diff --git a/e2e/node_modules/swr b/e2e/node_modules/swr new file mode 120000 index 0000000..f2090af --- /dev/null +++ b/e2e/node_modules/swr @@ -0,0 +1 @@ +../../node_modules/.pnpm/swr@1.3.0_react@18.3.1/node_modules/swr \ No newline at end of file diff --git a/e2e/node_modules/uuid b/e2e/node_modules/uuid new file mode 120000 index 0000000..89859bd --- /dev/null +++ b/e2e/node_modules/uuid @@ -0,0 +1 @@ +../../node_modules/.pnpm/uuid@11.0.3/node_modules/uuid \ No newline at end of file diff --git a/e2e/node_modules/zod b/e2e/node_modules/zod new file mode 120000 index 0000000..1ed3376 --- /dev/null +++ b/e2e/node_modules/zod @@ -0,0 +1 @@ +../../node_modules/.pnpm/zod@3.23.8/node_modules/zod \ No newline at end of file diff --git a/e2e/package.json b/e2e/package.json new file mode 100644 index 0000000..ca6c0a0 --- /dev/null +++ b/e2e/package.json @@ -0,0 +1,29 @@ +{ + "name": "@demo-dapp-starket/e2e", + "private": true, + "version": "1.0.0", + "main": "index.js", + "license": "MIT", + "peerDependencies": { + "@scure/base": "^1.1.1", + "@scure/bip39": "^1.2.1", + "lodash-es": "^4.17.21", + "object-hash": "^3.0.0", + "react": "^18.0.0", + "react-dom": "^18.0.0", + "swr": "^1.3.0", + "zod": "^3.23.8" + }, + "devDependencies": { + "@types/axios": "^0.14.0", + "@playwright/test": "^1.48.1", + "@types/node": "^22.0.0", + "@types/uuid": "^10.0.0", + "dotenv": "^16.3.1", + "starknet": "6.11.0", + "uuid": "^11.0.0" + }, + "scripts": { + "test": "pnpm playwright test " + } +} \ No newline at end of file diff --git a/e2e/playwright.config.ts b/e2e/playwright.config.ts new file mode 100644 index 0000000..2565b9f --- /dev/null +++ b/e2e/playwright.config.ts @@ -0,0 +1,35 @@ +import type { PlaywrightTestConfig } from "@playwright/test" +import config from "./src/config" + +const playwrightConfig: PlaywrightTestConfig = { + projects: [ + { + name: "ArgentX", + use: { + trace: "retain-on-failure", + actionTimeout: 120 * 1000, // 2 minute + permissions: ["clipboard-read", "clipboard-write"], + screenshot: "only-on-failure", + }, + timeout: config.isCI ? 5 * 60e3 : 1 * 60e3, + expect: { timeout: 2 * 60e3 }, // 2 minute + testDir: "./src/specs", + testMatch: /\.spec.ts$/, + retries: config.isCI ? 1 : 0, + outputDir: config.artifactsDir, + }, + ], + workers: config.isCI ? 2 : 1, + fullyParallel: true, + reportSlowTests: { + threshold: 2 * 60e3, // 2 minutes + max: 5, + }, + reporter: config.isCI ? [["github"], ["blob"], ["list"]] : "list", + forbidOnly: config.isCI, + outputDir: config.artifactsDir, + preserveOutput: "failures-only", + globalTeardown: "./src/utils/global.teardown.ts", +} + +export default playwrightConfig diff --git a/e2e/src/config.ts b/e2e/src/config.ts new file mode 100644 index 0000000..c817176 --- /dev/null +++ b/e2e/src/config.ts @@ -0,0 +1,87 @@ +import path from "path" +import dotenv from "dotenv" +import fs from "fs" + +const envPath = path.resolve(__dirname || "", "../.env") +if (fs.existsSync(envPath)) { + dotenv.config({ path: envPath }) +} + +const commonConfig = { + isProdTesting: process.env.ARGENT_X_ENVIRONMENT === "prod" ? true : false || "", + password: "MyP@ss3!" || "", + //accounts used for setup + senderAddrs: process.env.E2E_SENDER_ADDRESSES?.split(",") || "", + senderKeys: process.env.E2E_SENDER_PRIVATEKEYS?.split(",") || "", + destinationAddress: process.env.E2E_SENDER_ADDRESSES?.split(",")[0] ||"", //used as transfers destination + // urls + rpcUrl: process.env.ARGENT_SEPOLIA_RPC_URL || "", + beAPIUrl: + process.env.ARGENT_X_ENVIRONMENT === "prod" + ? "" + : process.env.ARGENT_API_BASE_URL || "", + viewportSize: { width: 360 || "", height: 800 }, + artifactsDir: path.resolve(__dirname || "", "../artifacts/playwright"), + isCI: Boolean(process.env.CI), + migDir: path.join(__dirname || "", "../../e2e/mig/"), + distDir: path.join(__dirname || "", "../../extension/dist/"), + migVersionDir: path.join(__dirname || "", "../../e2e/mig/dist"), + migRepo: process.env.E2E_REPO || "", + migRepoToken: process.env.E2E_REPO_TOKEN || "", + migRepoOwner: process.env.E2E_REPO_OWNER || "", + migReleaseName: process.env.E2E_REPO_RELEASE_NAME || "", +} + +const extensionHydrogenConfig = { + ...commonConfig || "", + testSeed1: process.env.E2E_TESTNET_SEED1 || "", //wallet with 33 regular deployed accounts and 1 multisig deployed account + testSeed3: process.env.E2E_TESTNET_SEED3 || "", //wallet with 1 deployed account|| "", and multisig with removed user + testSeed4: process.env.E2E_TESTNET_SEED4 || "", //wallet with non deployed account but with funds + senderSeed: process.env.E2E_SENDER_SEED || "", + account1Seed2: process.env.E2E_ACCOUNT_1_SEED2 || "", + spokCampaignName: process.env.E2E_SPOK_CAMPAIGN_NAME || "", + spokCampaignUrl: process.env.E2E_SPOK_CAMPAIGN_URL || "", + guardianEmail: process.env.E2E_GUARDIAN_EMAIL || "", + useStrkAsFeeToken: process.env.E2E_USE_STRK_AS_FEE_TOKEN || "", + skipTXTests: process.env.E2E_SKIP_TX_TESTS || "", + accountsToImport: process.env.E2E_ACCOUNTS_TO_IMPORT || "", + accountToImportAndTx: process.env.E2E_ACCOUNT_TO_IMPORT_AND_TX?.split(",") || "", + qaUtilsURL: process.env.E2E_QA_UTILS_URL || "", + qaUtilsAuthToken: process.env.E2E_QA_UTILS_AUTH_TOKEN || "", + initialBalanceMultiplier: process.env.INITIAL_BALANCE_MULTIPLIER || 1 || "", + migAccountAddress: process.env.E2E_MIG_ACCOUNT_ADDRESS || "", +} + +const extensionProdConfig = { + ...commonConfig, + testSeed1: process.env.E2E_MAINNET_SEED1 || "", + testSeed3: "" || "", + testSeed4: "" || "", + senderSeed: process.env.E2E_SENDER_SEED || "", + account1Seed2: "" || "", + account1Seed3: "" || "", + spokCampaignName: "" || "", + spokCampaignUrl: "" || "", + guardianEmail: "" || "", + useStrkAsFeeToken: "false" || "", + skipTXTests: "true" || "", + accountsToImport: "" || "", + accountToImportAndTx: "" || "", + qaUtilsURL: "" || "", + qaUtilsAuthToken: "" || "", + initialBalanceMultiplier: 1 || "", + migAccountAddress: "" || "", + migVersions: "" || "", +} + +const config = commonConfig.isProdTesting + ? extensionProdConfig + : extensionHydrogenConfig +// check that no value of config is undefined|| "", otherwise throw error +Object.entries(config).forEach(([key, value]) => { + if (value === undefined) { + throw new Error(`Missing ${key} config variable; check .env file`) + } +}) + +export default config diff --git a/e2e/src/fixtures.ts b/e2e/src/fixtures.ts new file mode 100644 index 0000000..24e3870 --- /dev/null +++ b/e2e/src/fixtures.ts @@ -0,0 +1,11 @@ +import { ChromiumBrowserContext } from "@playwright/test" + +import type ExtensionPage from "./page-objects/ExtensionPage" + +export interface TestExtensions { + extension: ExtensionPage + secondExtension: ExtensionPage + thirdExtension: ExtensionPage + browserContext: ChromiumBrowserContext + upgradeExtension: ExtensionPage +} diff --git a/e2e/src/languages/ILanguage.ts b/e2e/src/languages/ILanguage.ts new file mode 100644 index 0000000..c96f1e4 --- /dev/null +++ b/e2e/src/languages/ILanguage.ts @@ -0,0 +1,3 @@ +import texts from "./en" + +export type ILanguage = typeof texts diff --git a/e2e/src/languages/en/index.ts b/e2e/src/languages/en/index.ts new file mode 100644 index 0000000..7737812 --- /dev/null +++ b/e2e/src/languages/en/index.ts @@ -0,0 +1,162 @@ +const texts = { + common: { + back: "Back", + close: "Close", + confirm: "Confirm", + done: "Done", + next: "Next", + continue: "Continue", + yes: "Yes", + no: "No", + unlock: "Unlock", + showSettings: "Show settings", + reset: "Reset", + confirmReset: "Reset", + save: "Save", + create: "Create", + cancel: "Cancel", + privacyStatement: + "GDPR statement for browser extension wallet: Argent takes the privacy and security of individuals very seriously and takes every reasonable measure and precaution to protect and secure the personal data that we process. The browser extension wallet does not collect any personal information nor does it correlate any of your personal information with anonymous data processed as part of its services. On top of this Argent has robust information security policies and procedures in place to make sure any processing complies with applicable laws. If you would like to know more or have any questions then please visit our website at https://www.argent.xyz/", + approve: "Approve", + addArgentShield: "Add Argent Shield", + changeAccountType: "Change", + accountUpgraded: "Account upgraded", + changedToStandardAccount: "Changed to Standard Account", + dismiss: "Dismiss", + reviewSend: "Review send", + hide: "Hide account", + copy: "Copy", + beforeYouContinue: "Before you continue...", + seedWarning: + "Please save your recovery phrase. This is the only way you will be able to recover your Argent X accounts", + revealSeedPhrase: "Click to reveal recovery phrase", + copied: "Copied", + confirmRecovery: + "I have saved my recovery phrase and understand I should never share it with anyone else", + remove: "Remove", + upgrade: "Upgrade", + }, + account: { + noAccounts: "You have no accounts on", + createAccount: "Create account", + fund: "Fund", + fundsFromStarkNet: "From another Starknet wallet", + fullAccountAddress: "Full account address", + send: "Send", + export: "Export", + accountRecovery: "Save your recovery phrase", + showAccountRecovery: "Show recovery phrase", + saveTheRecoveryPhrase: "Save the recovery phrase", + confirmTheSeedPhrase: + "I have saved my recovery phrase and understand I should never share it with anyone else", + pendingTransactions: "Pending", + recipientAddress: "Recipient's address", + saveAddress: "Save address", + deployFirst: + "You must deploy this account before upgrading to a Smart Account", + wrongPassword: "Incorrect password", + invalidStarkIdError: " not found", + shortAddressError: "Address must be 66 characters long", + invalidCheckSumError: "Invalid address (checksum error)", + invalidAddress: "Invalid address", + createMultisig: "Create multisig", + activateAccount: "Activate Account", + notEnoughFoundsFee: "Insufficient funds to pay fee", + newToken: "New token", + argentShield: { + wrongCode: "Looks like the wrong code. Please try again.", + failedCode: + "You have reached the maximum number of attempts. Please wait 30 minutes and request a new code.", + codeNotRequested: + "You have not requested a verification code. Please request a new one.", + emailInUse: + /This address is associated with accounts from another seedphrase[.,]?\s*Please enter another email address to continue[.,]?/, + }, + removedFromMultisig: "You were removed from this multisig", + copyAddress: "Copy address", + }, + wallet: { + //first screen + banner1: "Welcome to Argent X", + desc1: "Enjoy the security of Ethereum with the scale of Starknet", + createButton: "Create a new wallet", + restoreButton: "Restore an existing wallet", + //second screen + banner2: "Disclaimer", + desc2: + "Starknet is in Alpha and may experience technical issues or introduce breaking changes from time to time. Please accept this before continuing.", + lossOfFunds: + "I understand that Starknet will introduce changes (e.g. Cairo 1.0) that will affect my existing account(s) (e.g. rendering unusable) if I do not complete account upgrades.", + alphaVersion: + "I understand that Starknet may experience performance issues and my transactions may fail for various reasons.", + //third screen + banner3: "Create a password", + desc3: "This is used to protect and unlock your wallet", + password: "Password", + repeatPassword: "Repeat password", + createWallet: "Create wallet", + //fourth screen + banner4: /Your (smart )?account is ready!/, + download: "Download the mobile app", + twitter: "Follow us on X", + dapps: "Explore Starknet apps", + finish: "Finish", + }, + settings: { + account: { + manageOwners: { + manageOwners: "Manage owners", + removeOwner: "Remove owner", + replaceOwner: "Replace owner", + }, + setConfirmations: "Set confirmations", + viewOnStarkScan: "View on StarkScan", + viewOnVoyager: "View on Voyager", + hideAccount: "Hide account", + deployAccount: "Deploy account", + authorisedDapps: { + authorisedDapps: "Authorised dapps", + connect: "Connect", + reject: "Reject", + disconnectAll: "Disconnect all", + noAuthorisedDapps: "No authorised dapps", + }, + exportPrivateKey: "Export private key", + }, + preferences: { + preferences: "Preferences", + hideTokens: "Hidden and spam tokens", + hiddenAccounts: "Hidden accounts", + defaultBlockExplorer: "Default block explorer", + defaultNFTMarket: "Default NFT marketplace", + emailNotifications: "Email notifications", + }, + securityPrivacy: { + securityPrivacy: "Security & privacy", + autoLockTimer: "Auto lock timer", + recoveryPhase: "Recovery phrase", + automaticErrorReporting: "Automatic Error Reporting", + shareAnonymousData: "Share anonymous data", + }, + addressBook: { + addressBook: "Address book", + nameRequired: "Contact Name is required", + addressRequired: "Address is required", + removeAddress: "Remove from address book", + delete: "Delete", + }, + advancedSettings: { + advancedSettings: "Advanced settings", + manageNetworks: { + manageNetworks: "Manage networks", + restoreDefaultNetworks: "Restore default networks", + }, + smartContractDevelopment: "Smart Contract Development", + experimental: "Experimental", + }, + extendedView: "Extended view", + lockWallet: "Lock wallet", + }, +} as const + +export default texts diff --git a/e2e/src/languages/index.ts b/e2e/src/languages/index.ts new file mode 100644 index 0000000..183e1b9 --- /dev/null +++ b/e2e/src/languages/index.ts @@ -0,0 +1,8 @@ +import path from "node:path" + +import type { ILanguage } from "./ILanguage" + +// eslint-disable-next-line @typescript-eslint/no-var-requires +export const lang: ILanguage = require( + path.join(__dirname, `${process.env.LANGUAGE ?? "en"}`), +).default diff --git a/e2e/src/page-objects/Account.ts b/e2e/src/page-objects/Account.ts new file mode 100644 index 0000000..88b2f56 --- /dev/null +++ b/e2e/src/page-objects/Account.ts @@ -0,0 +1,930 @@ +import { Page, expect } from "@playwright/test" + +import { lang } from "../languages" +import Activity from "./Activity" +import { FeeTokens, TokenSymbol, logInfo, sleep } from "../utils" +import config from "../config" + +export interface IAsset { + name: string + balance: number + unit: string +} + +export default class Account extends Activity { + upgradeTest: boolean + constructor(page: Page, upgradeTest: boolean = false) { + super(page) + this.upgradeTest = upgradeTest + } + accountName1 = "Account 1" + accountName2 = "Account 2" + accountName3 = "Account 3" + accountNameMulti1 = "Multisig 1" + accountNameMulti2 = "Multisig 2" + accountNameMulti3 = "Multisig 3" + accountNameMulti4 = "Multisig 4" + accountNameMulti5 = "Multisig 5" + accountNameMulti6 = "Multisig 6" + + importedAccountName1 = "Imported Account 1" + importedAccountName2 = "Imported Account 2" + get noAccountBanner() { + return this.page.locator(`div h4:has-text("${lang.account.noAccounts}")`) + } + + get createAccount() { + return this.page.locator('[data-testid="create-account-button"]') + } + + get fundMenu() { + return this.page.getByRole("button", { name: "Fund" }) + } + + get addFundsFromStartNet() { + return this.page.locator(`a :text-is("${lang.account.fundsFromStarkNet}")`) + } + + get accountAddress() { + return this.page.locator( + `[aria-label="${lang.account.fullAccountAddress}"]`, + ) + } + + get accountAddressFromAssetsView() { + return this.page.locator('[data-testid="address-copy-button"]').first() + } + + get send() { + return this.page.locator(`button:has-text("${lang.account.send}")`) + } + + get sendToHeader() { + return this.page.getByRole("heading", { name: "Send to" }) + } + + get deployAccount() { + return this.page.locator( + `button :text-is("${lang.settings.account.deployAccount}")`, + ) + } + + get selectTokenButton() { + return this.page.getByTestId("select-token-button") + } + + async accountNames() { + await expect( + this.page.locator('[data-testid="account-name"]').first(), + ).toBeVisible() + return await this.page + .locator('[data-testid="account-name"]') + .all() + .then( + async (els) => + await Promise.all(els.map(async (el) => await el.textContent())), + ) + } + + token(tkn: TokenSymbol) { + return this.page.locator(`[data-testid="${tkn}"]`) + } + + get accountListSelector() { + return this.page.locator(`[aria-label="Show account list"]`) + } + + get addANewAccountFromAccountList() { + return this.page.getByRole("button", { name: "Add account" }) + } + + get addStandardAccountFromNewAccountScreen() { + return this.page.locator('[aria-label="Standard Account"]') + } + + get importAccountFromNewAccountScreen() { + return this.page.locator('[aria-label="Import from private key"]') + } + + get importAccountAddressLoc() { + return this.page.locator('[name="address"]') + } + + get importPKLoc() { + return this.page.locator('[name="pk"]') + } + + get importSubmitLoc() { + return this.page.locator('button:text-is("Import")') + } + + get addMultisigAccountFromNewAccountScreen() { + return this.page.locator('[aria-label="Multisig Account"]') + } + + get createWithArgent() { + return this.page.locator('[aria-label="Create with Argent"]') + } + + get createNewMultisig() { + return this.page.locator('[aria-label="Create new multisig"]') + } + + get joinExistingMultisig() { + return this.page.locator('[aria-label="Join existing multisig"]') + } + + get joinWithArgent() { + return this.page.locator('[aria-label="Join with Argent"]') + } + + get assetsList() { + return this.page.locator('button[role="alert"] ~ button') + } + + get amount() { + return this.page.locator('[name="amount"]') + } + + get sendMax() { + return this.page.locator('button:text-is("Max")') + } + + get recipientAddressQuery() { + return this.page.locator('[data-testid="recipient-input"]') + } + + account(accountName: string) { + return this.page.locator(`button[aria-label^="Select ${accountName}"]`) + } + + accountNameBtnLoc(accountName: string) { + return this.page.locator(`button[aria-label="Select ${accountName}"]`) + } + + get balance() { + return this.page.locator('[data-testid="tokenBalance"]') + } + + currentBalance(tkn: TokenSymbol) { + return this.page.locator(`[data-testid="${tkn}-balance"]`) + } + + currentBalanceDevNet(tkn: "ETH") { + return this.page.locator(`//button//h6[contains(text(), '${tkn}')]`) + } + + get accountName() { + return this.page.locator('[data-testid="account-tokens"] h2') + } + + invalidStarkIdError(id: string) { + return this.page.locator( + `form label:has-text('${id}${lang.account.invalidStarkIdError}')`, + ) + } + + get shortAddressError() { + return this.page.locator( + `form label:has-text('${lang.account.shortAddressError}')`, + ) + } + + get invalidCheckSumError() { + return this.page.locator( + `form label:has-text('${lang.account.invalidCheckSumError}')`, + ) + } + + get invalidAddress() { + return this.page.locator( + `form label:has-text('${lang.account.invalidAddress}')`, + ) + } + + get failPredict() { + return this.page.locator('[data-testid="tx-error"]') + } + + accountGroup( + group: string = "my-accounts" || + "multisig - accounts" || + "imported-accounts", + ) { + return this.page.locator(`[data-testid="${group}"]`) + } + + async addAccountMainnet({ firstAccount = true }: { firstAccount?: boolean }) { + if (firstAccount) { + await this.createAccount.click() + } else { + await this.accountListSelector.click() + await this.addANewAccountFromAccountList.click() + } + await this.addStandardAccountFromNewAccountScreen.click() + await this.continueLocator.click() + await this.account("").last().click() + await expect(this.accountListSelector).toBeVisible() + } + + async dismissAccountRecoveryBanner() { + await this.showAccountRecovery.click() + await this.confirmTheSeedPhrase.click() + await this.doneLocator.click() + } + + async addAccount({ firstAccount = true }: { firstAccount?: boolean }) { + if (firstAccount) { + await this.createAccount.click() + } else { + await this.accountListSelector.click() + await this.page.getByRole("button", { name: "Add account" }).click() + } + await this.addStandardAccountFromNewAccountScreen.click() + await this.continueLocator.click() + await expect(this.account("").last()).toBeVisible() + const accountsName = await this.account("").allInnerTexts() + const accountLoc = this.page.locator( + `[data-testid="Account ${accountsName.length}"]`, + ) + await expect(accountLoc).toBeVisible() + await this.account(`Account ${accountsName.length}`).hover() + await expect( + accountLoc.locator('[data-testid="goto-settings"]'), + ).toBeVisible() + await accountLoc.click() + //todo check why this is needed, click twice + await sleep(1000) + if (await accountLoc.isVisible()) { + await accountLoc.click() + } + await expect(this.accountListSelector).toBeVisible() + await this.fundMenu.click() + await this.addFundsFromStartNet.click() + const accountAddress = await this.accountAddress + .textContent() + .then((v) => v?.replaceAll(" ", "")) + await this.closeLocator.last().click() + const accountName = await this.accountListSelector.textContent() + return { accountName, accountAddress } + } + + async selectAccount(accountName: string) { + await this.accountListSelector.click() + await this.account(accountName).click() + } + + async ensureSelectedAccount(accountName: string) { + const currentAccount = await this.accountListSelector.textContent() + if (currentAccount != accountName) { + await this.selectAccount(accountName) + } + await expect(this.accountListSelector).toContainText(accountName) + } + + async assets(accountName: string) { + await this.ensureSelectedAccount(accountName) + + const assetsList: IAsset[] = [] + for (const asset of await this.assetsList.all()) { + const row = (await asset.innerText()).split(/\r?\n| /) + assetsList.push({ + name: row[0], + balance: parseFloat(row[1]), + unit: row[2], + } as IAsset) + } + return assetsList + } + + async ensureAsset( + accountName: string, + name: TokenSymbol = "ETH", + value: string, + ) { + await this.ensureSelectedAccount(accountName) + await expect(this.currentBalance(name)).toContainText(value) + } + + async getTotalFeeValue() { + const fee = await this.page + .locator('[aria-label="Show Fee Estimate details"] p') + .first() + .textContent() + if (!fee) { + throw new Error("Error! Fee not available") + } + + return parseFloat(fee.split(" ")[0]) + } + async txValidations(feAmount: string) { + const trxAmountHeader = await this.page + .locator(`//*[starts-with(text(),'Send ')]`) + .textContent() + .then((v) => v?.split(" ")[1]) + + const sendAmountFEText = await this.page + .locator("[data-fe-value]") + .getAttribute("data-fe-value") + const sendAmountTXText = await this.page + .locator("[data-tx-value]") + .getAttribute("data-tx-value") + const sendAmountFE = sendAmountFEText!.split(" ")[0] + const sendAmountTX = parseInt(sendAmountTXText!) + logInfo({ sendAmountFE, sendAmountTX }) + expect(sendAmountFE).toBe(`${trxAmountHeader}`) + + if (feAmount != "MAX") { + expect(feAmount).toBe(trxAmountHeader) + } + return { sendAmountTX, sendAmountFE } + } + + async fillRecipientAddress({ + recipientAddress, + fillRecipientAddress = "paste", + validAddress = true, + }: { + recipientAddress: string + fillRecipientAddress?: "typing" | "paste" + validAddress?: boolean + }) { + if (fillRecipientAddress === "paste") { + await this.setClipboardText(recipientAddress) + await this.recipientAddressQuery.focus() + await this.paste() + } else { + await this.recipientAddressQuery.type(recipientAddress) + await this.page.keyboard.press("Enter") + } + if (validAddress) { + if (recipientAddress.endsWith("stark")) { + await this.page.click(`button:has-text("${recipientAddress}")`) + } + } + } + + async confirmTransaction() { + await Promise.race([ + expect(this.confirmLocator) + .toBeEnabled() + .then((_) => this.confirmLocator.click()), + expect(this.failPredict).toBeVisible(), + ]) + if (await this.failPredict.isVisible()) { + await this.failPredict.click() + console.error("failPredict", this.paste) + } + } + + async transfer({ + originAccountName, + recipientAddress, + token, + amount, + fillRecipientAddress = "paste", + submit = true, + feeToken = "ETH", + }: { + originAccountName: string + recipientAddress: string + token: TokenSymbol + amount: number | "MAX" + fillRecipientAddress?: "typing" | "paste" + submit?: boolean + feeToken?: FeeTokens + }) { + await this.ensureSelectedAccount(originAccountName) + await this.send.click() + await this.fillRecipientAddress({ recipientAddress, fillRecipientAddress }) + await this.selectTokenButton.click() + await this.token(token).click() + if (amount === "MAX") { + await expect(this.balance).toBeVisible() + await expect(this.sendMax).toBeVisible() + await this.sendMax.click() + } else { + await this.amount.fill(amount.toString()) + } + + await this.reviewSendLocator.click() + + if (submit) { + if (feeToken) { + await this.selectFeeToken(feeToken) + } + await this.confirmTransaction() + } + const { sendAmountFE, sendAmountTX } = await this.txValidations( + amount.toString(), + ) + try { + await expect(this.failPredict) + .toBeVisible({ timeout: 1000 * 3 }) + .then(async (_) => { + await this.failPredict.click() + await this.page.locator('[data-testid="copy-error"]').click() + await this.setClipboard() + console.error( + "Error message copied to clipboard", + await this.getClipboard(), + ) + throw new Error("Transaction failed") + }) + } catch { + /* empty */ + } + return { sendAmountTX, sendAmountFE } + } + + async ensureTokenBalance({ + accountName, + token, + balance, + }: { + accountName: string + token: TokenSymbol + balance: number + }) { + await this.ensureSelectedAccount(accountName) + await this.token(token).click() + await expect(this.page.locator('[data-testid="tokenBalance"]')).toHaveText( + balance.toString(), + ) + await this.backLocator.click() + } + + get password() { + return this.page.locator('input[name="password"]').first() + } + + get exportPrivateKey() { + return this.page.locator(`button:text-is("${lang.account.export}")`) + } + + get setUpAccountRecovery() { + return this.page.locator( + `button:text-is("${lang.account.accountRecovery}")`, + ) + } + + get showAccountRecovery() { + return this.page.locator( + `button:text-is("${lang.account.showAccountRecovery}")`, + ) + } + + get confirmTheSeedPhrase() { + return this.page.locator( + `p:text-is("${lang.account.confirmTheSeedPhrase}")`, + ) + } + + // account recovery modal + get saveTheRecoveryPhrase() { + return this.page.locator( + `//a//*[text()="${lang.account.saveTheRecoveryPhrase}"]`, + ) + } + + get recipientAddress() { + return this.page.locator('[data-testid="recipient-input"]') + } + + get saveAddress() { + return this.page.locator(`button:text-is("${lang.account.saveAddress}")`) + } + + get copyAddress() { + return this.page.locator('[data-testid="address-copy-button"]').first() + } + + get copyAddressFromFundMenu() { + return this.page.locator(`button:text-is("${lang.account.copyAddress}")`) + } + + contact(label: string) { + return this.page.locator(`div h5:text-is("${label}")`) + } + + get avnuBanner() { + return this.page.locator('p:text-is("Swap with AVNU")') + } + + get ekuboBanner() { + return this.page.locator('p:text-is("Provide liquidity on Ekubo")') + } + + get avnuBannerClose() { + return this.page.locator('[data-testid="close-banner"]') + } + + async saveRecoveryPhrase() { + const nextModal = await this.nextLocator.isVisible({ timeout: 60 }) + if (nextModal) { + await this.nextLocator.click() + } + await this.page + .locator(`span:has-text("${lang.common.revealSeedPhrase}")`) + .click() + const pos = Array.from({ length: 12 }, (_, i) => i + 1) + const seed = await Promise.all( + pos.map(async (index) => { + return this.page + .locator(`//*[normalize-space() = '${index}']/parent::*`) + .textContent() + .then((text) => text?.replace(/[0-9]/g, "")) + }), + ).then((result) => result.join(" ")) + + await Promise.all([ + this.page.locator(`button:has-text("${lang.common.copy}")`).click(), + expect( + this.page.locator(`button:has-text("${lang.common.copied}")`), + ).toBeVisible(), + ]) + await this.setClipboard() + const seedPhraseCopied = await this.getClipboard() + await expect(this.doneLocator).toBeDisabled() + await this.page + .locator(`p:has-text("${lang.common.confirmRecovery}")`) + .click() + await expect(this.page.getByTestId("recovery-phrase-checked")).toBeVisible() + await expect(this.doneLocator).toBeEnabled() + await this.doneLocator.click({ force: true }) + expect(seed).toBe(seedPhraseCopied) + return String(seedPhraseCopied) + } + + // Smart Account + get email() { + return this.page.locator('input[name="email"]') + } + + get pinLocator() { + return this.page.locator('[aria-label="Please enter your pin code"]') + } + + async fillPin(pin: string = "111111") { + //avoid BE error PIN not requested + await sleep(2000) + await expect(this.pinLocator).toHaveCount(6) + await this.pinLocator.first().click() + await this.pinLocator.first().fill(pin) + } + + async setupRecovery() { + //ensure modal is loaded + await expect( + this.page.locator('[data-testid="account-tokens"]'), + ).toBeVisible() + await expect( + this.page.locator('[data-testid="address-copy-button"]'), + ).toBeVisible() + if (config.isProdTesting) { + await this.showAccountRecovery.click() + } else { + await this.accountAddressFromAssetsView.click() + } + return this.saveRecoveryPhrase().then((adr) => String(adr)) + } + + get accountUpgraded() { + return this.page.getByRole("heading", { + name: lang.common.accountUpgraded, + }) + } + + get changedToStandardAccountLabel() { + return this.page.getByRole("heading", { + name: lang.common.changedToStandardAccount, + }) + } + + // Multisig + get deployNeededWarning() { + return this.page.locator(`p:has-text("${lang.account.deployFirst}")`) + } + + get increaseThreshold() { + return this.page.locator(`[data-testid="increase-threshold"]`) + } + + get decreaseThreshold() { + return this.page.locator(`[data-testid="decrease-threshold"]`) + } + + get setConfirmationsLocator() { + return this.page.locator(`button:has-text("Set confirmations")`) + } + + async addMultisigAccount({ + signers = [], + confirmations = 1, + }: { + signers?: string[] + confirmations?: number + }) { + await this.accountListSelector.click() + await this.addANewAccountFromAccountList.click() + await this.addMultisigAccountFromNewAccountScreen.click() + await this.continueLocator.click() + await this.createNewMultisig.click() + + const [pages] = await Promise.all([ + this.page.context().waitForEvent("page"), + this.createWithArgent.click(), + ]) + + const tabs = pages.context().pages() + await tabs[1].waitForLoadState("load") + await expect(tabs[1].locator('[name^="signerKeys.0.key"]')).toHaveCount(1) + + if (signers.length > 0) { + for (let index = 0; index < signers.length; index++) { + await tabs[1] + .locator(`[name="signerKeys\\.${index}\\.key"]`) + .isVisible() + .then(async (visible) => { + if (!visible) { + await tabs[1].locator('[data-testid="addOwnerButton"]').click() + } + }) + await tabs[1] + .locator(`[name="signerKeys.${index}.key"]`) + .fill(signers[index]) + } + } + //remove empty inputs + const locs = await tabs[1].locator('[data-testid^="signerContainer"]').all() + if (locs.length > signers.length) { + for (let index = locs.length; index > signers.length; index--) { + await tabs[1] + .locator(`[data-testid="closeButton.${index - 1}"]`) + .click() + } + } + + await tabs[1].locator('button:text-is("Next")').click() + const currentThreshold = await tabs[1] + .locator('[data-testid="threshold"]') + .innerText() + .then((v) => parseInt(v!)) + + //set confirmations + if (confirmations > currentThreshold) { + for (let i = currentThreshold; i < confirmations; i++) { + await tabs[1].locator('[data-testid="increase-threshold"]').click() + } + } + + await tabs[1] + .locator(`button:text-is("${lang.account.createMultisig}")`) + .click() + await tabs[1].locator(`button:text-is("${lang.wallet.finish}")`).click() + } + + async joinMultisig() { + await this.accountListSelector.click() + await this.addANewAccountFromAccountList.click() + await this.addMultisigAccountFromNewAccountScreen.click() + await this.continueLocator.click() + + await this.joinExistingMultisig.click() + await this.joinWithArgent.click() + await this.page.locator('[data-testid="copy-pubkey"]').click() + await this.setClipboard() + await this.page.locator('[data-testid="button-done"]').click() + return String(await this.getClipboard()) + } + + async addOwnerToMultisig({ + accountName, + pubKey, + confirmations = 1, + }: { + accountName: string + pubKey: string + confirmations?: number + }) { + await this.showSettingsLocator.click() + await this.account(accountName).click() + await this.manageOwners.click() + await this.page.locator('[data-testid="add-owners"]').click() + //hydrogen build will always have 2 inputs + const locs = await this.page.locator('[data-testid^="closeButton."]').all() + for (let index = 0; locs.length - 1 > index; index++) { + await this.page.locator(`[data-testid^="closeButton.${index}"]`).click() + } + await this.page.locator('[name^="signerKeys.0.key"]').fill(pubKey) + + await this.nextLocator.click() + + const currentThreshold = await this.page + .locator('[data-testid="threshold"]') + .innerText() + .then((v) => parseInt(v!)) + //set confirmations + if (confirmations > currentThreshold) { + for (let i = currentThreshold; i < confirmations; i++) { + await this.page.locator('[data-testid="increase-threshold"]').click() + } + } + await this.nextLocator.click() + await this.confirmLocator.click() + } + + ensureMultisigActivated() { + return Promise.all([ + expect(this.page.locator("label:has-text('Not activated')")).toBeHidden(), + expect( + this.page.locator('[data-testid="activating-multisig"]'), + ).toBeHidden(), + ]) + } + + accountListConfirmations(accountName: string) { + return this.page.locator( + `[aria-label="Select ${accountName}"] [data-testid="confirmations"]`, + ) + } + + get accountViewConfirmations() { + return this.page.locator('[data-testid="confirmations"]').first() + } + + async acceptTx(tx: string) { + await this.menuActivityLocator.click() + await this.page.locator(`[data-tx-hash="${tx}"]`).click() + await this.confirmTransaction() + } + + async setConfirmations(accountName: string, confirmations: number) { + await this.ensureSelectedAccount(accountName) + await this.showSettingsLocator.click() + await this.account(accountName).click() + await this.setConfirmationsLocator.click() + + const currentThreshold = await this.page + .locator('[data-testid="threshold"]') + .innerText() + .then((v) => parseInt(v!)) + if (confirmations > currentThreshold) { + for (let i = currentThreshold; i < confirmations; i++) { + await this.increaseThreshold.click() + } + } else if (confirmations < currentThreshold) { + for (let i = currentThreshold; i > confirmations; i--) { + await this.decreaseThreshold.click() + } + } + await this.page.locator('[data-testid="update-confirmations"]').click() + await this.confirmTransaction() + await Promise.all([ + expect(this.confirmLocator).toBeHidden(), + expect(this.menuActivityLocator).toBeVisible(), + ]) + } + + async ensureSmartAccountNotEnabled(accountName: string) { + await this.selectAccount(accountName) + await Promise.all([ + expect(this.menuPendingTransactionsIndicatorLocator).toBeHidden(), + expect( + this.page.locator('[data-testid="smart-account-on-account-view"]'), + ).toBeHidden(), + ]) + await this.showSettingsLocator.click() + await Promise.all([ + expect( + this.page.locator('[data-testid="smart-account-on-settings"]'), + ).toBeHidden(), + expect( + this.page.locator('[data-testid="smart-account-not-activated"]'), + ).toBeVisible(), + ]) + await this.account(accountName).click() + await expect( + this.page.locator( + '[data-testid="smart-account-button"]:has-text("Upgrade to Smart Account")', + ), + ).toBeVisible() + } + + editOwnerLocator(owner: string) { + return this.page.locator(`[data-testid="edit-${owner}"]`) + } + get manageOwners() { + return this.page.locator( + `//button//*[text()="${lang.settings.account.manageOwners.manageOwners}"]`, + ) + } + + get removeOwnerLocator() { + return this.page.locator( + `//button[text()="${lang.settings.account.manageOwners.removeOwner}"]`, + ) + } + + get removedFromMultisigLocator() { + return this.page.getByText(lang.account.removedFromMultisig) + } + + async removeMultiSigOwner(accountName: string, owner: string) { + await this.showSettingsLocator.click() + await this.account(accountName).click() + await this.manageOwners.click() + await this.editOwnerLocator(owner).click() + await this.removeOwnerLocator.click() + await this.removeLocator.click() + await this.nextLocator.click() + await this.confirmTransaction() + } + + //TX v3 + get feeTokenPickerLoc() { + return this.page.locator('[data-testid="fee-token-picker"]') + } + + feeTokenLoc(token: FeeTokens) { + return this.page.locator(`[data-testid="fee-token-${token}"]`) + } + + feeTokenBalanceLoc(token: FeeTokens) { + return this.page.locator(`[data-testid="fee-token-${token}-balance"]`) + } + + selectedFeeTokenLoc(token: FeeTokens) { + return this.feeTokenPickerLoc.locator(`img[alt=${token}]`) + } + + async selectFeeToken(token: FeeTokens) { + //wait for locator to be visible + await Promise.race([ + expect(this.selectedFeeTokenLoc("ETH")).toBeVisible(), + expect(this.selectedFeeTokenLoc("STRK")).toBeVisible(), + ]) + const tokenAlreadySelected = + await this.selectedFeeTokenLoc(token).isVisible() + if (!tokenAlreadySelected) { + await this.feeTokenPickerLoc.click() + await this.feeTokenLoc(token).click() + await expect(this.selectedFeeTokenLoc(token)).toBeVisible() + } + } + + async gotoSettingsFromAccountList(accountName: string) { + await expect(this.accountNameBtnLoc(accountName)).toBeVisible() + await this.accountNameBtnLoc(accountName).hover() + await expect( + this.accountNameBtnLoc(accountName).locator( + '[data-testid="token-value"]', + ), + ).toBeHidden() + await expect( + this.accountNameBtnLoc(accountName).locator( + '[data-testid="goto-settings"]', + ), + ).toBeVisible() + await expect( + this.accountNameBtnLoc(accountName).locator( + '[data-testid="goto-settings"]', + ), + ).toHaveCount(1) + //todo: remove sleep + await sleep(1000) + await this.accountNameBtnLoc(accountName) + .locator('[data-testid="goto-settings"]') + .click() + await expect( + this.page.locator( + `[data-testid="account-settings-${accountName.replaceAll(/ /g, "")}"]`, + ), + ).toBeVisible() + } + + async importAccount({ + address, + privateKey, + validPK = true, + }: { + address: string + privateKey: string + validPK?: boolean + }) { + await this.accountListSelector.click() + await this.addANewAccountFromAccountList.click() + await this.importAccountFromNewAccountScreen.click() + + await this.continueLocator.click() + await this.importAccountAddressLoc.fill(address) + await this.importPKLoc.fill(privateKey) + await this.importSubmitLoc.click() + if (!validPK) { + await Promise.all([ + expect(this.page.getByText("The private key is invalid")).toBeVisible(), + expect(this.page.getByRole("button", { name: "Ok" })).toBeVisible(), + ]) + } + } +} diff --git a/e2e/src/page-objects/Activity.ts b/e2e/src/page-objects/Activity.ts new file mode 100644 index 0000000..4ad4146 --- /dev/null +++ b/e2e/src/page-objects/Activity.ts @@ -0,0 +1,74 @@ +import { Page, expect } from "@playwright/test" + +import { lang } from "../languages" +import Navigation from "./Navigation" + +export default class Activity extends Navigation { + constructor(page: Page) { + super(page) + } + + ensurePendingTransactions(nbr: number) { + return expect( + this.page.locator( + `//p[contains(text(),'Pending')]/following-sibling::div[contains(text(),'${nbr}')]`, + ), + ).toBeVisible() + } + + ensureNoPendingTransactions() { + return expect( + this.page.locator( + `h6 div:text-is("${lang.account.pendingTransactions}") >> div`, + ), + ).not.toBeVisible() + } + + activityByDestination(destination: string) { + return this.page.locator( + `//button//p[contains(text()[1], 'To: ') and contains(text()[2], '${destination}')]`, + ) + } + + checkActivity(nbr: number) { + return Promise.all([ + this.menuPendingTransactionsIndicatorLocator.click(), + this.ensurePendingTransactions(nbr), + ]) + } + + async activityTxHashs() { + await expect( + this.page.locator("button[data-tx-hash]").first(), + ).toBeVisible() + const loc = await this.page.locator("button[data-tx-hash]").all() + return Promise.all(loc.map((el) => el.getAttribute("data-tx-hash"))) + } + + async getLastTxHash() { + await this.menuActivityActiveLocator.isVisible().then(async (visible) => { + if (!visible) { + await this.menuActivityLocator.click() + } + }) + expect(this.historyButton) + .toBeVisible({ timeout: 1000 }) + .then(async () => { + await this.historyButton.click() + }) + .catch(async () => { + null + }) + + const txHashs = await this.activityTxHashs() + return txHashs[0] + } + + get historyButton() { + return this.page.locator("button:text-is('History')") + } + + get queueButton() { + return this.page.locator("button:text-is('Queue')") + } +} diff --git a/e2e/src/page-objects/AddressBook.ts b/e2e/src/page-objects/AddressBook.ts new file mode 100644 index 0000000..e98c399 --- /dev/null +++ b/e2e/src/page-objects/AddressBook.ts @@ -0,0 +1,83 @@ +import type { Page } from "@playwright/test" + +import { lang } from "../languages" +import Navigation from "./Navigation" + +export default class AddressBook extends Navigation { + constructor(page: Page) { + super(page) + } + + get add() { + return this.page.locator('button[aria-label="add"]') + } + + get name() { + return this.page.locator('input[name="name"]') + } + + get address() { + return this.page.locator('textarea[name="address"]') + } + + get network() { + return this.page.locator('[aria-label="network-selector"]') + } + + get saveLocator() { + return this.page.locator(`button:text-is("${lang.common.save}")`) + } + + get cancelLocator() { + return this.page.locator(`button:text-is("${lang.common.cancel}")`) + } + + networkOption(name: "Localhost 5050" | "Sepolia" | "Mainnet") { + return this.page.locator(`button[role="menuitem"]:text-is("${name}")`) + } + + get nameRequired() { + return this.page.locator( + `//input[@name="name"]/following::label[contains(text(), '${lang.settings.addressBook.nameRequired}')]`, + ) + } + + get addressRequired() { + return this.page.locator( + `//textarea[@name="address"]/following::label[contains(text(), '${lang.settings.addressBook.addressRequired}')]`, + ) + } + + addressByName(name: string) { + return this.page.locator( + `//button/following::*[contains(text(),'${name}')]`, + ) + } + + get deleteAddress() { + return this.page.locator( + `button[aria-label="${lang.settings.addressBook.removeAddress}"]`, + ) + } + + get delete() { + return this.page.locator( + `button:text-is("${lang.settings.addressBook.delete}")`, + ) + } + + get addressBook() { + return this.page.locator( + `button:text-is("${lang.settings.addressBook.addressBook}")`, + ) + } + + async editAddress(name: string) { + await this.page.locator(`[data-testid="${name}"]`).first().click() + await this.page.locator(`[data-testid="${name}"]`).first().click() + await this.page.locator(`[data-testid="${name}"]`).first().hover() + await this.page + .locator(`[data-testid="${name}"] [data-testid^="edit-contact"]`) + .click() + } +} diff --git a/e2e/src/page-objects/Dapps.ts b/e2e/src/page-objects/Dapps.ts new file mode 100644 index 0000000..8a781da --- /dev/null +++ b/e2e/src/page-objects/Dapps.ts @@ -0,0 +1,147 @@ +import { ChromiumBrowserContext, Page, expect } from "@playwright/test" + +import { lang } from "../languages" +import Navigation from "./Navigation" +import config from "../config" + +const dappUrl = "http://localhost:3000" +const dappName = 'localhost' +export default class Dapps extends Navigation { + constructor(page: Page) { + super(page) + } + + account(accountName: string) { + return this.page.locator(`[data-testid="${accountName}"]`).first() + } + + connectedDapps(accountName: string, nbrConnectedDapps: number) { + return nbrConnectedDapps > 1 + ? this.page.locator( + `[data-testid="${accountName}"]:has-text("${nbrConnectedDapps} dapps connected")`, + ) + : this.page.locator( + `[data-testid="${accountName}"]:has-text("${nbrConnectedDapps} dapp connected")`, + ) + } + + get noConnectedDapps() { + return this.page.locator( + `text=${lang.settings.account.authorisedDapps.noAuthorisedDapps}`, + ) + } + + connected() { + return this.page.locator(`//div/*[contains(text(),'${dappName}')]`) + } + + disconnect() { + return this.page.locator( + `//div/*[contains(text(),'${dappName}')]/following::button[1]`, + ) + } + + disconnectAll() { + return this.page.locator( + `p:text-is("${lang.settings.account.authorisedDapps.disconnectAll}")`, + ) + } + + get accept() { + return this.page.locator( + `button:text-is("${lang.settings.account.authorisedDapps.connect}")`, + ) + } + + get reject() { + return this.page.locator( + `button:text-is("${lang.settings.account.authorisedDapps.reject}")`, + ) + } + + get knownDappButton() { + return this.page.locator('[data-testid="KnownDappButton"]') + } + + async ensureKnowDappText() { + return Promise.all([ + expect(this.page.locator('h4:text-is("Known Dapp")')).toBeVisible(), + expect( + this.page.locator('p:text-is("This dapp is listed on Dappland")'), + ).toBeVisible(), + ]) + } + async requestConnectionFromDapp( + browserContext: ChromiumBrowserContext, + ) { + //open dapp page + const dapp = await browserContext.newPage() + await dapp.setViewportSize({ width: 1080, height: 720 }) + await dapp.goto("chrome://inspect/#extensions") + await dapp.waitForTimeout(1000) + await dapp.goto(dappUrl) + + await dapp.getByRole('button', { name: 'Starknetkit Modal' }).click() + await expect(dapp.getByRole('button', { name: 'Argent X Argent X' })).toBeVisible() + await dapp.getByRole('button', { name: 'Argent X Argent X' }).click() + return dapp + } + + async claimSpok(browserContext: ChromiumBrowserContext) { + const spokCampaignUrl = config.spokCampaignUrl! || '' + //open dapp page + const dapp = await browserContext.newPage() + await dapp.setViewportSize({ width: 1080, height: 720 }) + await dapp.goto("chrome://inspect/#extensions") + await dapp.waitForTimeout(1000) + await dapp.goto(spokCampaignUrl) + await dapp.getByRole("button", { name: "Check eligibility" }).click() + await expect(dapp.locator("text=Argent X")).toBeVisible() + await dapp.locator("text=Argent X").click() + return dapp + } + + checkCriticalRiskConnectionScreen() { + return Promise.all([ + expect( + this.page.locator( + `//span[text()="Critical risk"]/following-sibling::label[text()="Use of a blacklisted domain"]`, + ), + ).toBeVisible(), + expect( + this.page.locator( + `//p[@data-testid="review-footer" and text()="Please review warnings before continuing"]`, + ), + ).toBeVisible(), + expect(this.page.getByRole("button", { name: "Connect" })).toBeDisabled(), + ]) + } + + async acceptCriticalRiskConnection() { + await this.page.getByRole("button", { name: "Review" }).click() + await Promise.all([ + expect( + this.page.locator(`//header[@title="1 risk identified"]`), + ).toBeVisible(), + expect( + this.page.locator( + '//label[text()="We strongly recommend you do not proceed with this transaction"]', + ), + ).toBeVisible(), + expect( + this.page.locator( + '//span[text()="Critical risk"]/following-sibling::span[text()="Use of a blacklisted domain"]/following-sibling::p[text()="You are currently on an unsafe domain. Be aware of the risks."]', + ), + ).toBeVisible(), + ]) + await this.page.getByRole("button", { name: "Accept risk" }).click() + } + + async connectedDappsTooltip(dappUrl: string) { + await this.showSettingsLocator.click() + await this.page.hover('[data-testid="connected-dapp"]') + await expect( + this.page.locator('[data-testid="connected-dapp"]'), + ).toHaveText(`Connected to ${dappUrl}`) + } +} diff --git a/e2e/src/page-objects/DeveloperSettings.ts b/e2e/src/page-objects/DeveloperSettings.ts new file mode 100644 index 0000000..3ca6937 --- /dev/null +++ b/e2e/src/page-objects/DeveloperSettings.ts @@ -0,0 +1,72 @@ +import type { Page } from "@playwright/test" + +import { lang } from "../languages" + +export default class DeveloperSettings { + constructor(private page: Page) {} + + get manageNetworks() { + return this.page.locator( + `//a//*[text()="${lang.settings.advancedSettings.manageNetworks.manageNetworks}"]`, + ) + } + + get blockExplorer() { + return this.page.locator( + `//a//*[text()="${lang.settings.preferences.defaultBlockExplorer}"]`, + ) + } + + get smartCOntractDevelopment() { + return this.page.locator( + `//a//*[text()="${lang.settings.advancedSettings.smartContractDevelopment}"]`, + ) + } + + get experimental() { + return this.page.locator( + `//a//*[text()="${lang.settings.advancedSettings.experimental}"]`, + ) + } + + // Manage networks + get addNetwork() { + return this.page.locator('button[aria-label="add"]') + } + + get networkName() { + return this.page.locator('[name="name"]') + } + + get chainId() { + return this.page.locator('[name="chainId"]') + } + + get sequencerUrl() { + return this.page.locator('[name="sequencerUrl"]') + } + + get rpcUrl() { + return this.page.locator('[name="rpcUrl"]') + } + + get create() { + return this.page.locator('button[type="submit"]') + } + + get restoreDefaultNetworks() { + return this.page.locator( + `button:has-text("${lang.settings.advancedSettings.manageNetworks.restoreDefaultNetworks}")`, + ) + } + + networkByName(name: string) { + return this.page.locator(`h5:has-text("${name}")`) + } + + deleteNetworkByName(name: string) { + return this.page.locator( + `//div/*[contains(text(),'${name}')]/following::button[1]`, + ) + } +} diff --git a/e2e/src/page-objects/ExtensionPage.ts b/e2e/src/page-objects/ExtensionPage.ts new file mode 100644 index 0000000..ef5ee2d --- /dev/null +++ b/e2e/src/page-objects/ExtensionPage.ts @@ -0,0 +1,486 @@ +import { expect, type Page } from "@playwright/test" +import fs from "fs-extra" + +import Messages from "./Messages" +import Account from "./Account" +import Activity from "./Activity" +import AddressBook from "./AddressBook" +import Dapps from "./Dapps" +import DeveloperSettings from "./DeveloperSettings" +import Navigation from "./Navigation" +import Network from "./Network" +import Settings from "./Settings" +import Wallet from "./Wallet" +import config from "../config" +import Nfts from "./Nfts" +import Preferences from "./Preferences" +import Swap from "./Swap" +import TokenDetails from "./TokenDetails" + +import { + transferTokens, + AccountsToSetup, + validateTx, + isScientific, + convertScientificToDecimal, + FeeTokens, + logInfo, + Clipboard, + unzip, +} from "../utils" + +export default class ExtensionPage { + page: Page + wallet: Wallet + network: Network + account: Account + messages: Messages + activity: Activity + settings: Settings + navigation: Navigation + developerSettings: DeveloperSettings + addressBook: AddressBook + dapps: Dapps + nfts: Nfts + preferences: Preferences + clipboard: Clipboard + swap: Swap + tokenDetails: TokenDetails + + upgradeTest: boolean = false + + constructor( + page: Page, + private extensionUrl: string, + upgradeTest: boolean = false, + ) { + this.page = page + this.wallet = new Wallet(page, upgradeTest) + this.network = new Network(page) + this.account = new Account(page, upgradeTest) + this.extensionUrl = extensionUrl + this.messages = new Messages(page) + this.activity = new Activity(page) + this.settings = new Settings(page) + this.navigation = new Navigation(page) + this.developerSettings = new DeveloperSettings(page) + this.addressBook = new AddressBook(page) + this.dapps = new Dapps(page) + this.nfts = new Nfts(page) + this.preferences = new Preferences(page) + this.clipboard = new Clipboard(page) + this.swap = new Swap(page) + this.tokenDetails = new TokenDetails(page) + this.upgradeTest = upgradeTest + } + + async open() { + await this.page.setViewportSize(config.viewportSize) + await this.page.goto(this.extensionUrl) + } + + async resetExtension() { + await this.navigation.showSettingsLocator.click() + await this.navigation.lockWalletLocator.click() + await this.navigation.resetLocator.click() + await this.page.locator('[name="validationString"]').fill("RESET WALLET") + await this.page.locator('label[type="checkbox"]').click({ force: true }) + await this.navigation.confirmResetLocator.click() + } + + async pasteSeed() { + await this.page.locator('[data-testid="seed-input-0"]').focus() + await this.clipboard.paste() + } + + async recoverWallet(seed: string, password?: string) { + await this.page.setViewportSize({ width: 1080, height: 720 }) + + await this.wallet.restoreExistingWallet.click() + await this.wallet.agreeLoc.click() + await this.clipboard.setClipboardText(seed) + await this.pasteSeed() + await this.navigation.continueLocator.click() + + await this.wallet.password.fill(password ?? config.password) + await this.wallet.repeatPassword.fill(password ?? config.password) + + await this.navigation.continueLocator.click() + await Promise.race([ + expect(this.wallet.finish).toBeVisible(), + expect(this.page.getByText("Your account is ready!")).toBeVisible(), + expect(this.page.getByText("Your smart account is ready!")).toBeVisible(), + ]) + + await this.open() + await expect(this.network.networkSelector).toBeVisible() + } + + async addAccount() { + await this.account.addAccount({ firstAccount: false }) + await this.account.copyAddress.click() + await this.clipboard.setClipboard() + const accountAddress = await this.clipboard.getClipboard() + expect(accountAddress).toMatch(/^0x0/) + return accountAddress + } + + async deployAccount(accountName: string, feeToken?: FeeTokens) { + if (accountName) { + await this.account.ensureSelectedAccount(accountName) + } + await this.navigation.showSettingsLocator.click() + await this.page.locator(`[data-testid="${accountName}"]`).click() + await this.settings.deployAccount.click() + if (feeToken) { + await this.account.selectFeeToken(feeToken) + } + await this.account.confirmTransaction() + await this.navigation.backLocator.click() + await this.navigation.closeLocator.click() + if (await this.page.getByRole("heading", { name: "Activity" }).isHidden()) { + await this.navigation.menuActivityLocator.click() + } + await expect( + this.page.getByText(/(Account created and transfer|Account activation)/), + ).toBeVisible() + + await this.navigation.showSettingsLocator.click() + await expect(this.page.getByText("Deploying")).toBeHidden() + await this.navigation.closeLocator.click() + await this.navigation.menuTokensLocator.click() + } + + async activateSmartAccount({ + accountName, + email, + pin = "111111", + validSession = false, + }: { + accountName: string + email?: string + pin?: string + validSession?: boolean + }) { + await this.account.ensureSelectedAccount(accountName) + await this.navigation.showSettingsLocator.click() + await this.settings.account(accountName).click() + await this.settings.smartAccountButton.click() + await this.navigation.nextLocator.click() + if (!validSession) { + await this.account.email.fill(email!) + await this.navigation.nextLocator.first().click() + await this.account.fillPin(pin) + } + await this.navigation.upgradeLocator.click() + await this.account.confirmTransaction() + await expect(this.account.accountUpgraded).toBeVisible() + await this.navigation.doneLocator.click() + await this.navigation.backLocator.click() + await this.navigation.closeLocator.click() + await Promise.all([ + expect( + this.activity.menuPendingTransactionsIndicatorLocator, + ).toBeHidden(), + expect( + this.page.locator('[data-testid="smart-account-on-account-view"]'), + ).toBeVisible(), + ]) + await this.navigation.showSettingsLocator.click() + await expect( + this.page.locator('[data-testid="smart-account-on-settings"]'), + ).toBeVisible() + await this.settings.account(accountName).click() + await expect( + this.page.locator( + '[data-testid="smart-account-button"]:has-text("Change to Standard Account")', + ), + ).toBeEnabled() + await this.navigation.backLocator.click() + await this.navigation.closeLocator.click() + } + + async changeToStandardAccount({ + accountName, + email, + pin = "111111", + validSession = false, + }: { + accountName: string + email: string + pin?: string + validSession?: boolean + }) { + await this.account.ensureSelectedAccount(accountName) + await this.navigation.showSettingsLocator.click() + await this.settings.account(accountName).click() + await this.settings.changeToStandardAccountButton.click() + //await this.navigation.nextLocator.click() + if (!validSession) { + await this.account.email.fill(email) + await this.navigation.nextLocator.first().click() + await this.account.fillPin(pin) + } + + await this.navigation.confirmChangeAccountTypeLocator.click() + await this.account.confirmTransaction() + await expect(this.account.changedToStandardAccountLabel).toBeVisible() + await this.navigation.doneLocator.click() + await this.navigation.backLocator.click() + await this.navigation.closeLocator.click() + await this.account.ensureSmartAccountNotEnabled(accountName) + } + + async fundAccount( + acc: AccountsToSetup, + accountAddress: string, + accIndex: number, + ) { + let expectedTokenValue + for (const [assetIndex, asset] of acc.assets.entries()) { + logInfo({ + op: "fundAccount", + assetIndex, + asset, + isProdTesting: config.isProdTesting, + }) + if (asset.balance > 0) { + await transferTokens( + asset.balance, + accountAddress, // receiver wallet address + asset.token, + ) + + if (isScientific(asset.balance)) { + expectedTokenValue = `${convertScientificToDecimal(asset.balance)}` + } else { + expectedTokenValue = `${asset.balance}` + } + if (!expectedTokenValue.includes(".")) { + expectedTokenValue += ".0" + } + expectedTokenValue += ` ${asset.token}` + await this.account.ensureAsset( + `Account ${accIndex + 1}`, + asset.token, + expectedTokenValue, + ) + } + } + + if (acc.deploy) { + await this.deployAccount(`Account ${accIndex + 1}`, acc.feeToken) + } + } + + async setupWallet({ + accountsToSetup, + email, + pin = "111111", + success = true, + }: { + accountsToSetup: AccountsToSetup[] + email?: string + success?: boolean + pin?: string + }) { + await this.wallet.newWalletOnboarding(email, pin, success) + if (!success) { + return { accountAddresses: [], seed: "" } + } + await this.open() + const seed = await this.account.setupRecovery() + //await this.network.selectDefaultNetwork() + const noAccount = await this.account.noAccountBanner.isVisible({ + timeout: 1000, + }) + const accountAddresses: string[] = [] + for (const [accIndex, acc] of accountsToSetup.entries()) { + if (noAccount) { + await this.account.addAccount({ firstAccount: true }) + } else if (accIndex !== 0) { + await this.account.addAccount({ firstAccount: false }) + } + await this.account.copyAddress.click() + await this.clipboard.setClipboard() + const accountAddress = await this.clipboard + .getClipboard() + .then((adr) => String(adr)) + expect(accountAddress).toMatch(/^0x0/) + accountAddresses.push(accountAddress) + if (acc.assets[0].balance > 0) { + await this.fundAccount(acc, accountAddress, accIndex) + } + } + logInfo({ + op: "setupWallet", + accountsNbr: accountAddresses.length, + accountAddresses, + seed, + }) + return { accountAddresses, seed } + } + + async validateTx({ + txHash, + receiver, + sendAmountFE, + sendAmountTX, + uniqLocator, + txType = "token", + }: { + txHash: string + receiver: string + sendAmountFE?: string + sendAmountTX?: number + uniqLocator?: boolean + txType?: "token" | "nft" + }) { + logInfo({ + op: "validateTx", + txHash, + receiver, + sendAmountFE, + sendAmountTX, + uniqLocator, + }) + await this.navigation.menuActivityActiveLocator + .isVisible() + .then(async (visible: boolean) => { + if (!visible) { + await this.navigation.menuActivityLocator.click() + } + }) + if (sendAmountFE) { + const activityAmountLocator = this.page.locator( + `button[data-tx-hash$="${txHash.substring(3)}"] [data-value]`, + ) + let activityAmountElement = activityAmountLocator + if (uniqLocator) { + activityAmountElement = activityAmountLocator.first() + } + expect(this.activity.historyButton) + .toBeVisible({ timeout: 1000 }) + .then(async () => { + await this.activity.historyButton.click() + }) + .catch(async () => { + return null + }) + const activityAmount = await activityAmountElement + .textContent() + .then((text) => text?.match(/[\d|.]+/)![0]) + if (sendAmountFE.toString().length > 6) { + expect(activityAmount).toBe( + parseFloat(sendAmountFE.toString()) + .toFixed(4) + .toString() + .match(/[\d\\.]+[^0]+/)?.[0], + ) + } else { + expect(activityAmount).toBe( + parseFloat(sendAmountFE.toString()).toString(), + ) + } + } + await this.activity.ensureNoPendingTransactions() + await validateTx({ txHash, receiver, amount: sendAmountTX, txType }) + } + + async fundMultisigAccount({ + accountName, + balance, + }: { + accountName: string + balance: number + }) { + await this.account.ensureSelectedAccount(accountName) + await this.account.copyAddress.click() + await this.clipboard.setClipboard() + const accountAddress = await this.clipboard + .getClipboard() + .then((adr) => String(adr)) + await transferTokens( + balance, + accountAddress, // receiver wallet address + ) + await this.account.ensureAsset(accountName, "ETH", `${balance} ETH`) + } + + async activateMultisig(accountName: string) { + await this.account.ensureSelectedAccount(accountName) + await expect( + this.page.locator("label:has-text('Add ETH or STRK and activate')"), + ).toBeVisible() + await this.page.locator('[data-testid="activate-multisig"]').click() + await this.account.confirmTransaction() + await expect( + this.page.locator('[data-testid="activating-multisig"]'), + ).toBeVisible() + await Promise.all([ + expect( + this.page.locator("label:has-text('Add ETH or STRK and activate')"), + ).toBeHidden(), + expect( + this.page.locator('[data-testid="activating-multisig"]'), + ).toBeHidden(), + ]) + } + + async removeMultisigOwner(accountName: string) { + await this.account.ensureSelectedAccount(accountName) + await this.navigation.showSettingsLocator.click() + await this.settings.account(accountName).click() + } + + async setExtensionVersion(version: string) { + //used to decrease the version of the extension, release version: 6.3.4, extension version 5.3.4 + function decreaseMajorVersion(version: string): string { + const [major, minor, patch] = version.split(".").map(Number) + const newMajor = major - 1 + return `${newMajor}.${minor}.${patch}` + } + const currentVersionDir = await unzip(version) + await fs.remove(config.migVersionDir) + await fs.copy(currentVersionDir, config.migVersionDir) + // Reload Extension + await this.page.goto("chrome://extensions") + // Find and click the reload button for our extension + const reloadButton = this.page + .locator("extensions-item") + .filter({ hasText: "Argent X" }) + .locator('cr-icon-button[title="Reload"]') + await reloadButton.click() + await this.page.waitForTimeout(1000) + + //open extension + await this.open() + await expect(this.version).resolves.toBe(decreaseMajorVersion(version)) + } + + async restoreExtensionVersion() { + await fs.remove(config.migVersionDir) + await fs.copy(config.distDir, config.migVersionDir) + // Reload Extension + await this.page.goto("chrome://extensions") + // Find and click the reload button for our extension + const reloadButton = this.page + .locator("extensions-item") + .filter({ hasText: "Argent X" }) + .locator('cr-icon-button[title="Reload"]') + await reloadButton.click() + await this.page.waitForTimeout(1000) + + //open extension + await this.open() + } + + async upgradeExtension(newVersion: string) { + await this.restoreExtensionVersion() + //unlock extension + await this.account.password.fill(config.password) + await this.navigation.unlockLocator.click() + //check extension version + await expect(this.version).resolves.toBe(newVersion) + } +} diff --git a/e2e/src/page-objects/Messages.ts b/e2e/src/page-objects/Messages.ts new file mode 100644 index 0000000..9e940bc --- /dev/null +++ b/e2e/src/page-objects/Messages.ts @@ -0,0 +1,17 @@ +import type { Page } from "@playwright/test" + +export default class Messages { + constructor(private page: Page) {} + + sendMessage = (message: any) => + this.page.evaluate(`window.sendMessage(${JSON.stringify(message)})`) + waitForMessage = (message: string) => + this.page.evaluate(`window.waitForMessage(${JSON.stringify(message)})`) + + resetExtension() { + return Promise.all([ + this.sendMessage({ type: "RESET_ALL" }), + this.waitForMessage("DISCONNECT_ACCOUNT"), + ]) + } +} diff --git a/e2e/src/page-objects/Navigation.ts b/e2e/src/page-objects/Navigation.ts new file mode 100644 index 0000000..3be34e1 --- /dev/null +++ b/e2e/src/page-objects/Navigation.ts @@ -0,0 +1,140 @@ +import type { Page } from "@playwright/test" + +import { lang } from "../languages" +import Clipboard from "../utils/Clipboard" + +export default class Navigation extends Clipboard { + constructor(page: Page) { + super(page) + } + + get backLocator() { + return this.page.getByLabel(`${lang.common.back}`).first() + } + + get closeLocator() { + return this.page.locator(`[aria-label="${lang.common.close}"]`) + } + + get closeButtonLocator() { + return this.page.getByLabel("close") + } + + get closeButtonDappInfoLocator() { + return this.page.getByTestId("close-button") + } + + get confirmLocator() { + return this.page.locator(`button:text-is("${lang.common.confirm}")`) + } + + get nextLocator() { + return this.page.locator(`button:text-is("${lang.common.next}")`) + } + + get reviewSendLocator() { + return this.page.locator(`button:text-is("${lang.common.reviewSend}")`) + } + + get doneLocator() { + return this.page.locator(`button:text-is("${lang.common.done}")`) + } + + get continueLocator() { + return this.page + .locator(`button:text-is("${lang.common.continue}")`) + .first() + } + + get yesLocator() { + return this.page.locator(`button:text-is("${lang.common.yes}")`) + } + + get noLocator() { + return this.page.locator(`button:text-is("${lang.common.no}")`) + } + + get unlockLocator() { + return this.page.locator(`button:text-is("${lang.common.unlock}")`).first() + } + + get showSettingsLocator() { + return this.page.locator('[aria-label="Show settings"]') + } + + get lockWalletLocator() { + return this.page.locator( + `//button//*[text()="${lang.settings.lockWallet}"]`, + ) + } + + get resetLocator() { + return this.page.getByText("Reset").first() + } + + get confirmResetLocator() { + return this.page.locator(`button:text-is("${lang.common.confirmReset}")`) + } + + get menuPendingTransactionsIndicatorLocator() { + return this.page.locator('[aria-label="Pending transactions"]') + } + + get menuTokensLocator() { + return this.page.locator('[aria-label="Tokens"]') + } + + get menuNTFsLocator() { + return this.page.locator('[aria-label="NFTs"]') + } + + get menuSwapsLocator() { + return this.page.locator('[aria-label="Swap"]') + } + + get menuActivityLocator() { + return this.page.locator('[aria-label="Activity"]') + } + + get menuActivityActiveLocator() { + return this.page.locator('[aria-label="Activity"][class*="active"]') + } + + get saveLocator() { + return this.page.locator(`button:text-is("${lang.common.save}")`) + } + + get createLocator() { + return this.page.locator(`button:text-is("${lang.common.create}")`) + } + + get cancelLocator() { + return this.page.locator(`button:text-is("${lang.common.cancel}")`) + } + + get approveLocator() { + return this.page.locator(`button:text-is("${lang.common.approve}")`) + } + + get addArgentShieldLocator() { + return this.page.locator(`button:text-is("${lang.common.addArgentShield}")`) + } + + get confirmChangeAccountTypeLocator() { + return this.page.locator( + `button:text-is("${lang.common.changeAccountType}")`, + ) + } + + get dismissLocator() { + return this.page.locator(`button:text-is("${lang.common.dismiss}")`) + } + + get removeLocator() { + return this.page.locator(`button:text-is("${lang.common.remove}")`) + } + + get upgradeLocator() { + return this.page.locator(`button:text-is("${lang.common.upgrade}")`) + } +} diff --git a/e2e/src/page-objects/Network.ts b/e2e/src/page-objects/Network.ts new file mode 100644 index 0000000..a5ba2ce --- /dev/null +++ b/e2e/src/page-objects/Network.ts @@ -0,0 +1,91 @@ +import { Page, expect } from "@playwright/test" +import Navigation from "./Navigation" + +type NetworkName = "Devnet" | "Sepolia" | "Mainnet" | "My Network" + +export function getDefaultNetwork() { + const argentXEnv = process.env.ARGENT_X_ENVIRONMENT + + if (!argentXEnv) { + throw new Error("ARGENT_X_ENVIRONMENT not set") + } + let defaultNetworkId: string + switch (argentXEnv.toLowerCase()) { + case "prod": + case "staging": + defaultNetworkId = "mainnet-alpha" + break + + case "hydrogen": + case "test": + defaultNetworkId = "sepolia-alpha" + break + + default: + throw new Error(`Unknown ARGENTX_ENVIRONMENT: ${argentXEnv}`) + } + + return defaultNetworkId +} +export default class Network extends Navigation { + // Change 'private' to 'protected' or 'public' to match the base class + constructor(page: Page) { + super(page) + } + + get networkSelector() { + return this.page.getByLabel("Show account list") + } + + networkOption(name: string) { + return this.page.locator(`button[role="menuitem"] span:text-is("${name}")`) + } + + async selectNetwork(networkName: NetworkName) { + await this.networkSelector.click() + await this.page.locator('[data-testid="network-switcher-button"]').click() + await this.networkOption(networkName).click() + } + + async selectDefaultNetwork() { + const networkName = this.getDefaultNetworkName() + await this.networkSelector.click() + await this.page.locator('[data-testid="network-switcher-button"]').click() + await this.networkOption(networkName).click() + const accounts = await this.page + .locator('[aria-label^="Select A"]') + .allInnerTexts() + if (accounts.length > 0) { + await this.page.locator('[aria-label^="Select A"]').first().click() + } else { + await this.closeButtonLocator.click() + } + } + + async ensureAvailableNetworks(networks: string[]) { + await this.networkSelector.click() + await this.page.locator('[data-testid="network-switcher-button"]').click() + const availableNetworks = await this.page + .locator('[role="menu"] button') + .allInnerTexts() + return expect(availableNetworks).toEqual(networks) + } + + getDefaultNetworkName() { + const defaultNetworkId = getDefaultNetwork() + switch (defaultNetworkId.toLowerCase()) { + case "mainnet-alpha": + return "Mainnet" + case "sepolia-alpha": + return "Sepolia" + case "goerli-alpha": + return "Goerli" + default: + throw new Error(`Unknown ARGENTX_Network: ${defaultNetworkId}`) + } + } + + ensureSelectedNetwork(networkName: NetworkName) { + return expect(this.networkSelector).toContainText(networkName) + } +} diff --git a/e2e/src/page-objects/Nfts.ts b/e2e/src/page-objects/Nfts.ts new file mode 100644 index 0000000..15a56cc --- /dev/null +++ b/e2e/src/page-objects/Nfts.ts @@ -0,0 +1,21 @@ +import { Page } from "@playwright/test" + +import Navigation from "./Navigation" + +export default class Nfts extends Navigation { + constructor(page: Page) { + super(page) + } + + collection(name: string) { + return this.page.locator(`h5:text-is("${name}")`) + } + + ntf(name: string) { + return this.page.getByRole("group", { name }).getByRole("img") + } + + nftByPosition(position: number = 0) { + return this.page.locator('[data-testid="nft-item-name"]').nth(position) + } +} diff --git a/e2e/src/page-objects/Preferences.ts b/e2e/src/page-objects/Preferences.ts new file mode 100644 index 0000000..96330d2 --- /dev/null +++ b/e2e/src/page-objects/Preferences.ts @@ -0,0 +1,40 @@ +import { Page } from "@playwright/test" + +import { lang } from "../languages" +import Navigation from "./Navigation" + +export default class Preferences extends Navigation { + constructor(page: Page) { + super(page) + } + + get hiddenAndSpamTokens() { + return this.page.locator( + `//p[contains(text(),'${lang.settings.preferences.hideTokens}')]`, + ) + } + + get hideTokensStatus() { + return this.page.locator( + `//p[contains(text(),'${lang.settings.preferences.hideTokens}')]/following::input`, + ) + } + + get defaultBlockExplorer() { + return this.page.locator( + `//p[contains(text(),'${lang.settings.preferences.defaultBlockExplorer}')]`, + ) + } + + get defaultNFTMarket() { + return this.page.locator( + `//p[contains(text(),'${lang.settings.preferences.defaultNFTMarket}')]`, + ) + } + + get emailNotifications() { + return this.page.locator( + `//p[contains(text(),'${lang.settings.preferences.emailNotifications}')]`, + ) + } +} diff --git a/e2e/src/page-objects/Settings.ts b/e2e/src/page-objects/Settings.ts new file mode 100644 index 0000000..eaa9ef5 --- /dev/null +++ b/e2e/src/page-objects/Settings.ts @@ -0,0 +1,142 @@ +import { expect, type Page } from "@playwright/test" + +import { lang } from "../languages" +import { sleep } from "../utils" +import Navigation from "./Navigation" + +export default class Settings extends Navigation { + constructor(page: Page) { + super(page) + } + + get extendedView() { + return this.page.locator(`[aria-label="${lang.settings.extendedView}"]`) + } + + get addressBook() { + return this.page.locator( + `//a//*[text()="${lang.settings.addressBook.addressBook}"]`, + ) + } + + get authorizedDapps() { + return this.page.locator( + `//a//*[text()="${lang.settings.account.authorisedDapps.authorisedDapps}"]`, + ) + } + + get advancedSettings() { + return this.page.locator( + `//a//*[text()="${lang.settings.advancedSettings.advancedSettings}"]`, + ) + } + + get preferences() { + return this.page.locator( + `//a//*[text()="${lang.settings.preferences.preferences}"]`, + ) + } + + // account settings + get accountName() { + return this.page.locator('input[placeholder="Account name"]') + } + + get exportPrivateKey() { + return this.page.getByRole("button", { name: "Export private key" }) + } + + get deployAccount() { + return this.page.locator( + `//button//*[text()="${lang.settings.account.deployAccount}"]`, + ) + } + + get hideAccount() { + return this.page.getByRole("button", { name: "Hide account" }) + } + + account(accountName: string) { + return this.page.locator(`[aria-label="Select ${accountName}"]`) + } + + async setAccountName(newAccountName: string) { + await this.accountName.click() + await this.accountName.fill(newAccountName) + await this.page.locator("form button").click() + } + + get confirmHide() { + return this.page.locator(`button:text-is("${lang.common.hide}")`) + } + get hiddenAccounts() { + return this.page.locator( + `p:text-is("${lang.settings.preferences.hiddenAccounts}")`, + ) + } + + unhideAccount(accountName: string) { + return this.page.locator(`button :text-is("${accountName}")`) + } + + get smartAccountButton() { + return this.page.locator('[data-testid="smart-account-button"]') + } + + get changeToStandardAccountButton() { + return this.page.locator( + '[data-testid="smart-account-button"]:has-text("Change to Standard Account")', + ) + } + + get privateKey() { + return this.page.locator('[aria-label="Private key"]') + } + + get copy() { + return this.page.locator(`button:text-is("${lang.common.copy}")`) + } + + get help() { + return this.page.getByRole("link", { name: "Help" }) + } + + get discord() { + return this.page.getByRole("link", { name: "Discord" }) + } + + get github() { + return this.page.getByRole("link", { name: "GitHub" }) + } + + get viewOnStarkScanLocator() { + return this.page.getByRole("button", { + name: lang.settings.account.viewOnStarkScan, + }) + } + + get viewOnVoyagerLocator() { + return this.page.getByRole("button", { + name: lang.settings.account.viewOnVoyager, + }) + } + + get pinLocator() { + return this.page.locator('[aria-label="Please enter your pin code"]') + } + + async signIn(email: string, pin: string = "111111") { + await this.page.getByRole("button", { name: "Sign in to Argent" }).click() + await this.page.getByTestId("email-input").fill(email) + await this.nextLocator.click() + //avoid BE error PIN not requested + await sleep(2000) + await expect(this.pinLocator).toHaveCount(6) + await this.pinLocator.first().click() + await this.pinLocator.first().fill(pin) + await expect( + this.page.getByRole("button", { name: "Logout" }), + ).toBeVisible() + await this.closeLocator.click() + } +} diff --git a/e2e/src/page-objects/Swap.ts b/e2e/src/page-objects/Swap.ts new file mode 100644 index 0000000..7065f28 --- /dev/null +++ b/e2e/src/page-objects/Swap.ts @@ -0,0 +1,95 @@ +import { Page, expect } from "@playwright/test" + +import Navigation from "./Navigation" +import { TokenSymbol } from "../utils" + +export default class Swap extends Navigation { + constructor(page: Page) { + super(page) + } + + get swapHeader() { + return this.page.getByRole("heading", { name: "Swap" }) + } + + get valueLoc() { + return this.page.locator('[data-testid="swap-input-pay-panel"]') + } + + get switchInOutLoc() { + return this.page.locator('[aria-label="Switch input and output"]') + } + + get maxLoc() { + return this.page.locator('label:has-text("Max")') + } + + get payTokenLoc() { + return this.page.locator('[data-testid="swap-token-button"]').nth(0) + } + + get receiveTokenLoc() { + return this.page.locator('[data-testid="swap-token-button"]').nth(1) + } + + get reviewSwapLoc() { + return this.page.locator('[data-testid="review-swap-button"]') + } + + get deployFeeLoc() { + return this.page.locator('[data-testid="deploy-fee"]') + } + + get useMaxLoc() { + return this.page.locator('[data-testid="use-max-button"]') + } + + async setPayToken(token: string) { + await this.payTokenLoc.click() + await this.page.locator(`p:text-is("${token}")`).click() + } + + async setReceiveToken(token: string) { + await this.receiveTokenLoc.click() + await this.page.locator(`p:text-is("${token}")`).click() + } + + async swapTokens({ + payToken, + receiveToken, + amount, + alreadyDeployed = true, + }: { + payToken: TokenSymbol + receiveToken: TokenSymbol + amount: number | "MAX" + alreadyDeployed: boolean + }) { + await this.setPayToken(payToken) + await this.setReceiveToken(receiveToken) + if (amount === "MAX") { + await this.maxLoc.click() + await this.useMaxLoc.click() + } else { + await this.valueLoc.fill(amount.toString()) + } + await this.reviewSwapLoc.click() + //raise an error if Transaction fail predict, to avoid waiting test timeout + const failPredict = this.page.getByText("Transaction fail") + await expect(failPredict) + .toBeVisible({ timeout: 1000 * 5 }) + .then(async (_) => { + throw new Error("Transaction failure predicted") + }) + .catch((_) => null) + if (!alreadyDeployed) { + await expect(this.deployFeeLoc).toBeVisible() + } + const sendAmountFEText = await this.page + .locator("[data-fe-value]") + .nth(1) + .getAttribute("data-fe-value") + await this.confirmLocator.click() + return sendAmountFEText + } +} diff --git a/e2e/src/page-objects/TokenDetails.ts b/e2e/src/page-objects/TokenDetails.ts new file mode 100644 index 0000000..8b96aff --- /dev/null +++ b/e2e/src/page-objects/TokenDetails.ts @@ -0,0 +1,94 @@ +import { expect, Page } from "@playwright/test" + +import Navigation from "./Navigation" + +export default class TokenDetails extends Navigation { + constructor(page: Page) { + super(page) + } + + openTokenDetails(token: string) { + return this.page.getByTestId(`${token}-balance`) + } + + get swapButtonLoc() { + return this.page.locator('button[aria-label="Swap"]') + } + + get buyButtonLoc() { + return this.page.locator('button[aria-label="Buy"]') + } + + get sendButtonLoc() { + return this.page.locator('button[aria-label="Send"]') + } + + graphTimeFrameLoc(frame: "1D" | "1W" | "1M" | "1Y" | "All") { + return this.page.locator(`button:text-is('${frame}')`) + } + + get activityButtonLoc() { + return this.page.locator(`button:text-is('Activity')`) + } + + get aboutButtonLoc() { + return this.page.locator(`button:text-is('About')`) + } + + get menuButtonLoc() { + return this.page.locator('[id^="menu-button"]') + } + + get menuCopyTokenAddressLoc() { + return this.page.getByText("Copy token address") + } + + get menuViewOnVoyagerLoc() { + return this.page.getByRole("menuitem", { name: "View on Voyager" }) + } + + get newTokenButtonLoc() { + return this.page.getByText("New token") + } + + get addTokenButtonLoc() { + return this.page.getByRole("button", { name: "Add token" }) + } + + fillTokenAddress(tokenAddress: string) { + return this.page.locator("[name='address']").fill(tokenAddress) + } + + async addNewToken(tokenAddress: string, tokenSymbol: string) { + await this.newTokenButtonLoc.click() + await this.fillTokenAddress(tokenAddress) + await expect(this.page.locator('[name="symbol"]')).toHaveValue(tokenSymbol) + await Promise.race([ + this.addTokenButtonLoc.click(), + this.addThisToken.click(), + ]) + } + + token(tokenName: string) { + return this.page.locator(`h5:text-is('${tokenName}')`) + } + + showToken(tokenSymbol: string) { + return this.page.locator(`[data-testid="show-token-button-${tokenSymbol}"]`) + } + + hideToken(tokenSymbol: string) { + return this.page.locator(`[data-testid="hide-token-button-${tokenSymbol}"]`) + } + + get spamTokensList() { + return this.page.getByRole("button", { name: "Spam" }) + } + + get tokensList() { + return this.page.getByRole("button", { name: "Tokens" }) + } + get addThisToken() { + return this.page.getByRole("button", { name: "Add this token" }) + } +} diff --git a/e2e/src/page-objects/Wallet.ts b/e2e/src/page-objects/Wallet.ts new file mode 100644 index 0000000..a717a8b --- /dev/null +++ b/e2e/src/page-objects/Wallet.ts @@ -0,0 +1,152 @@ +import { Page, expect } from "@playwright/test" + +import config from "../config" +import { lang } from "../languages" +import Navigation from "./Navigation" +import { sleep } from "../utils" + +export default class Wallet extends Navigation { + upgradeTest: boolean + constructor(page: Page, upgradeTest: boolean = false) { + super(page) + this.upgradeTest = upgradeTest + } + get banner() { + return this.page.locator(`div h1:text-is("${lang.wallet.banner1}")`) + } + get description() { + return this.page.locator(`div p:text-is("${lang.wallet.desc1}")`) + } + get createNewWallet() { + return this.page.locator(`button:text-is("${lang.wallet.createButton}")`) + } + get restoreExistingWallet() { + return this.page.locator(`button:text-is("${lang.wallet.restoreButton}")`) + } + + //second screen + get banner2() { + return this.page.locator(`div h1:text-is("${lang.wallet.banner2}")`) + } + get description2() { + return this.page.locator(`div p:text-is("${lang.wallet.desc2}")`) + } + + get disclaimerLostOfFunds() { + return this.page.locator( + `//input[@value="lossOfFunds"]/following::p[contains(text(),'${lang.wallet.lossOfFunds}')]`, + ) + } + get disclaimerAlphaVersion() { + return this.page.locator( + `//input[@value="alphaVersion"]/following::p[contains(text(),'${lang.wallet.alphaVersion}')]`, + ) + } + + get privacyPolicyLink() { + return this.page.getByRole("link", { name: "Privacy Policy" }) + } + + //third screen + get banner3() { + return this.page.locator(`div h1:text-is("${lang.wallet.banner3}")`) + } + get description3() { + return this.page.locator(`div p:text-is("${lang.wallet.desc3}")`) + } + get password() { + return this.page.locator( + `input[name="password"][placeholder="${lang.wallet.password}"]`, + ) + } + get repeatPassword() { + return this.page.locator( + `input[name="repeatPassword"][placeholder="${lang.wallet.repeatPassword}"]`, + ) + } + get createWallet() { + return this.page.locator(`button:text-is("${lang.wallet.createWallet}")`) + } + + //fourth screen + get banner4() { + return this.page.locator("div h1", { + hasText: lang.wallet.banner4, + }) + } + + get download() { + return this.page.locator(`a:has-text("${lang.wallet.download}")`) + } + + get twitter() { + return this.page.locator(`a:has-text("${lang.wallet.twitter}")`) + } + + get dapps() { + return this.page.locator(`a:has-text("${lang.wallet.dapps}")`) + } + + get finish() { + return this.page.locator(`button:text-is("${lang.wallet.finish}")`) + } + + get agreeLoc() { + return this.page.locator('[data-testid="agree-button"]') + } + + get addStandardAccountFromNewAccountScreen() { + return this.page.locator('[aria-label="Standard Account"]') + } + + get addSmartAccountFromNewAccountScreen() { + return this.page.locator('[aria-label="Smart Account"]') + } + + get pinLocator() { + return this.page.locator('[aria-label="Please enter your pin code"]') + } + + fillEmail(email: string) { + return this.page.locator('[data-testid="email-input"]').fill(email) + } + + async fillPin(pin: string) { + //avoid BE error PIN not requested + await sleep(2000) + await expect(this.pinLocator).toHaveCount(6) + await this.pinLocator.first().click() + await this.pinLocator.first().fill(pin) + } + async newWalletOnboarding( + email?: string, + pin: string = "111111", + success: boolean = true, + ) { + await this.createNewWallet.click() + await this.agreeLoc.click() + await this.password.fill(config.password) + await this.repeatPassword.fill(config.password) + await this.continueLocator.click() + if (!email) { + await this.addStandardAccountFromNewAccountScreen.click() + await this.continueLocator.click() + } else { + await this.addSmartAccountFromNewAccountScreen.click() + await this.continueLocator.click() + await this.fillEmail(email) + await this.continueLocator.click() + await this.fillPin(pin) + if (!success) { + await expect( + this.page.getByText(lang.account.argentShield.emailInUse), + ).toBeVisible() + } + } + if (success) { + await expect( + this.page.getByRole("heading", { name: "Your wallet is ready!" }), + ).toBeVisible() + } + } +} diff --git a/e2e/src/specs/dapps.spec.ts b/e2e/src/specs/dapps.spec.ts new file mode 100644 index 0000000..b931bed --- /dev/null +++ b/e2e/src/specs/dapps.spec.ts @@ -0,0 +1,46 @@ +import { expect } from "@playwright/test" + +import test from "../test" +import { downloadGitHubRelease, unzip } from "../utils" +import config from "../config" + + +test.describe("Dapps", () => { + test.beforeAll(async ({ }) => { + const version = '6.19.5' + await downloadGitHubRelease(version) + const currentVersionDir = await unzip(version) + console.log(currentVersionDir) + config.distDir = currentVersionDir + + }) + + test.only("connect from testDapp", async ({ extension, browserContext }) => { + + //setup wallet + await extension.wallet.newWalletOnboarding() + await extension.open() + await extension.dapps.requestConnectionFromDapp( + browserContext, + ) + //accept connection from Argent X + await extension.dapps.accept.click() + //check connect dapps + await extension.navigation.showSettingsLocator.click() + await extension.settings.account(extension.account.accountName1).click() + await extension.page.getByRole('button', { name: 'Connected dapps' }).click() + await expect( + extension.dapps.connected(), + ).toBeVisible() + //disconnect dapp from Argent X + await extension.dapps + .disconnect() + .click() + await expect( + extension.dapps.connected(), + ).toBeHidden() + await extension.page.getByRole('button', { name: 'Connected dapps' }).click() + await expect(extension.page.getByRole('heading', { name: 'No connected dapps' })).toBeVisible() + }) + +}) diff --git a/e2e/src/test.ts b/e2e/src/test.ts new file mode 100644 index 0000000..8490a03 --- /dev/null +++ b/e2e/src/test.ts @@ -0,0 +1,183 @@ +import { + ChromiumBrowserContext, + Page, + TestInfo, + chromium, + test as testBase, +} from "@playwright/test" +import { v4 as uuid } from "uuid" +import type { TestExtensions } from "./fixtures" +import ExtensionPage from "./page-objects/ExtensionPage" +import config from "./config" +import { logInfo } from "./utils" +import path from "path" +import fs from "fs-extra" + +declare global { + interface Window { + PLAYWRIGHT?: boolean + } +} +const outputFolder = (testInfo: TestInfo) => + testInfo.title.replace(/\s+/g, "_").replace(/\W/g, "") +const artifactFilename = (testInfo: TestInfo, label: string) => + `${testInfo.retry}-${testInfo.status}-${label}-${testInfo.workerIndex}` +const isKeepArtifacts = (testInfo: TestInfo) => + testInfo.config.preserveOutput === "always" || + (testInfo.config.preserveOutput === "failures-only" && + testInfo.status === "failed") || + testInfo.status === "timedOut" + +const artifactSetup = async (testInfo: TestInfo, label: string) => { + await fs.promises + .mkdir(path.resolve(config.artifactsDir, outputFolder(testInfo)), { + recursive: true, + }) + .catch((error) => { + console.error({ op: "artifactSetup", error }) + }) + return artifactFilename(testInfo, label) +} + +const saveHtml = async (testInfo: TestInfo, page: Page, label: string) => { + logInfo({ + op: "saveHtml", + label, + }) + const fileName = await artifactSetup(testInfo, label) + const htmlContent = await page.content() + await fs.promises + .writeFile( + path.resolve( + config.artifactsDir, + outputFolder(testInfo), + `${fileName}.html`, + ), + htmlContent, + ) + .catch((error) => { + console.error({ op: "saveHtml", error }) + }) +} + +const keepVideos = async (testInfo: TestInfo, page: Page, label: string) => { + logInfo({ + op: "keepVideos", + label, + }) + const fileName = await artifactSetup(testInfo, label) + await page + .video() + ?.saveAs( + path.resolve( + config.artifactsDir, + outputFolder(testInfo), + `${fileName}.webm`, + ), + ) + .catch((error) => { + console.error({ op: "keepVideos", error }) + }) +} + +const isExtensionURL = (url: string) => url.startsWith("chrome-extension://") +let browserCtx: ChromiumBrowserContext +const closePages = async (browserContext: ChromiumBrowserContext) => { + const pages = browserContext?.pages() || [] + for (const page of pages) { + if (!isExtensionURL(page.url())) { + await page.close() + } + } +} + +const createBrowserContext = async (userDataDir: string, buildDir: string) => { + const context = await chromium.launchPersistentContext(userDataDir, { + headless: false, + args: [ + "--disable-dev-shm-usage", + "--ipc=host", + `--disable-extensions-except=${buildDir}`, + `--load-extension=${buildDir}`, + ], + viewport: config.viewportSize, + ignoreDefaultArgs: ["--disable-component-extensions-with-background-pages"], + recordVideo: { + dir: config.artifactsDir, + size: config.viewportSize, + }, + }) + await context.addInitScript(() => { + window.PLAYWRIGHT = true + window.localStorage.setItem( + "seenNetworkStatusState", + JSON.stringify({ state: { lastSeen: Date.now() }, version: 0 }), + ) + window.localStorage.setItem("onboardingExperiment", "E1A1") + }) + return context +} + +const initBrowserWithExtension = async ( + userDataDir: string, + buildDir: string, +) => { + const browserContext = await createBrowserContext(userDataDir, buildDir) + const page = await browserContext.newPage() + + await page.bringToFront() + await page.goto("chrome://extensions") + await page.locator('[id="devMode"]').click() + const extensionId = await page + .locator('[id="extension-id"]') + .first() + .textContent() + .then((text) => text?.replace("ID: ", "")) + + const extensionURL = `chrome-extension://${extensionId}/index.html` + await page.goto(extensionURL) + await page.waitForTimeout(500) + + await page.emulateMedia({ reducedMotion: "reduce" }) + return { browserContext, extensionURL, page } +} + +function createExtension(label: string, upgrade: boolean = false) { + return async ({}, use: any, testInfo: TestInfo) => { + const userDataDir = `/tmp/test-user-data-${uuid()}` + let buildDir = config.distDir + if (upgrade) { + fs.copy(buildDir, config.migVersionDir) + buildDir = config.migVersionDir + } + const { browserContext, page, extensionURL } = + await initBrowserWithExtension(userDataDir, buildDir) + process.env.workerIndex = testInfo.workerIndex.toString() + const extension = new ExtensionPage(page, extensionURL, upgrade) + await closePages(browserContext) + browserCtx = browserContext + await use(extension) + + if (isKeepArtifacts(testInfo)) { + await saveHtml(testInfo, page, label) + await keepVideos(testInfo, page, label) + } + await browserContext.close() + } +} + +function getContext() { + return async ({}, use: any, _testInfo: TestInfo) => { + await use(browserCtx) + } +} + +const test = testBase.extend({ + extension: createExtension("extension"), + secondExtension: createExtension("secondExtension"), + thirdExtension: createExtension("thirdExtension"), + browserContext: getContext(), + upgradeExtension: createExtension("upgradeExtension", true), +}) + +export default test diff --git a/e2e/src/utils/Clipboard.ts b/e2e/src/utils/Clipboard.ts new file mode 100644 index 0000000..e85290e --- /dev/null +++ b/e2e/src/utils/Clipboard.ts @@ -0,0 +1,46 @@ +import type { Page } from "@playwright/test" + +export default class Clipboard { + page: Page + private static clipboards: Map = new Map() + private readonly workerIndex: number + + constructor(page: Page) { + this.page = page + this.workerIndex = Number(process.env.workerIndex) + } + + async setClipboard(): Promise { + const text = String( + await this.page.evaluate(`navigator.clipboard.readText()`), + ) + Clipboard.clipboards.set(this.workerIndex, text) + } + + async setClipboardText(text: string): Promise { + Clipboard.clipboards.set(this.workerIndex, text) + } + + async getClipboard(): Promise { + return Clipboard.clipboards.get(this.workerIndex) || "" + } + + async paste(): Promise { + const content = Clipboard.clipboards.get(this.workerIndex) || "" + await this.page.evaluate( + (text) => navigator.clipboard.writeText(text), + content, + ) + const key = process.platform === "darwin" ? "Meta" : "Control" + await this.page.keyboard.press(`${key}+v`) + } + + async clear(): Promise { + Clipboard.clipboards.delete(this.workerIndex) + } + + // Optional: method to clear all clipboards + static clearAll(): void { + Clipboard.clipboards.clear() + } +} diff --git a/e2e/src/utils/assets.ts b/e2e/src/utils/assets.ts new file mode 100644 index 0000000..4b98650 --- /dev/null +++ b/e2e/src/utils/assets.ts @@ -0,0 +1,334 @@ +import { + Account, + uint256, + TransactionExecutionStatus, + RpcProvider, + constants, + TransactionFinalityStatus, + num, +} from "starknet" +import commonConfig from "../config" +import { expect } from "@playwright/test" +import { logInfo, sleep } from "./common" + +const isEqualAddress = (a?: string, b?: string) => { + try { + if (!a || !b) { + return false + } + return num.hexToDecimalString(a) === num.hexToDecimalString(b) + } catch { + // ignore parsing error + } + return false +} + +export type TokenSymbol = + | "ETH" + | "WBTC" + | "STRK" + | "SWAY" + | "USDC" + | "DAI" + | "ádfas" +export type TokenName = + | "Ethereum" + | "Wrapped BTC" + | "Starknet" + | "Standard Weighted Adalian Yield" + | "DAI" + | "USD Coin (Fake)" +export type FeeTokens = "ETH" | "STRK" +export interface AccountsToSetup { + assets: { + token: TokenSymbol + balance: number + }[] + deploy?: boolean + feeToken?: FeeTokens +} +const rpcUrl = commonConfig.rpcUrl +logInfo({ op: "Creating RPC provider with url", rpcUrl }) + +const provider = new RpcProvider({ + nodeUrl: rpcUrl, + chainId: constants.StarknetChainId.SN_SEPOLIA, + headers: { + "argent-version": process.env.VERSION || "Unknown version", + "argent-client": "argent-x", + }, +}) + +interface TokenInfo { + name: string + address: string + decimals: number +} +const tokenAddresses = new Map() +tokenAddresses.set("ETH", { + name: "Ethereum", + address: "0x049D36570D4e46f48e99674bd3fcc84644DdD6b96F7C741B1562B82f9e004dC7", + decimals: 18, +}) +tokenAddresses.set("WBTC", { + name: "Wrapped BTC", + address: "0x00c6164dA852d230360333D6adE3551eE3e48124C815704f51fA7F12D8287Dcc", + decimals: 8, +}) +tokenAddresses.set("STRK", { + name: "Starknet Token", + address: "0x04718f5a0Fc34cC1AF16A1cdee98fFB20C31f5cD61D6Ab07201858f4287c938D", + decimals: 18, +}) +tokenAddresses.set("SWAY", { + name: "Standard Weighted Adalian Yield", + address: "0x0030058F19Ed447208015F6430F0102e8aB82D6c291566D7E73fE8e613c3D2ed", + decimals: 18, +}) +tokenAddresses.set("USDC", { + name: "USD Coin (Fake)", + address: "0x07ab0b8855a61f480b4423c46c32fa7c553f0aac3531bbddaa282d86244f7a23", + decimals: 6, +}) +export const getTokenInfo = (tkn: string) => { + const tokenInfo = tokenAddresses.get(tkn) + if (!tokenInfo) { + throw new Error(`Invalid token: ${tkn}`) + } + return tokenInfo +} + +const maxRetries = 4 + +const formatAmount = (amount: string) => { + return parseInt(amount, 16) +} + +export const formatAmountBase18 = (amount: number) => { + return amount * Math.pow(10, 18) +} + +const getAccount = async (amount: string, token: TokenSymbol) => { + const log: string[] = [] + const maxAttempts = 5 + let i = 0 + while (i < maxAttempts) { + i++ + const randomAccountPosition = Math.floor( + Math.random() * commonConfig.senderKeys!.length, + ) + const acc = new Account( + provider, + commonConfig.senderAddrs![randomAccountPosition], + commonConfig.senderKeys![randomAccountPosition], + "1", + ) + const initialBalance = await getBalance(acc.address, token) + const initialBalanceFormatted = + parseFloat(initialBalance) * Math.pow(10, 18) + if (initialBalanceFormatted < parseInt(amount)) { + log.push( + `${ + commonConfig.senderAddrs![randomAccountPosition] + } Not enough balance ${initialBalanceFormatted} ${token} < ${amount}`, + ) + } else { + logInfo({ + op: "getAccount", + randomAccountPosition, + address: acc.address, + balance: `initialBalance ${initialBalanceFormatted} ${token}`, + }) + return acc + } + } + console.error(log.join("\n")) + throw new Error("No account with enough balance") +} + +const isTXProcessed = async (txHash: string) => { + let txProcessed = false + let txAcceptedRetries = 10 + let txStatusResponse + while (!txProcessed && txAcceptedRetries > 0) { + txAcceptedRetries-- + txStatusResponse = await provider.getTransactionStatus(txHash) + if ( + txStatusResponse.finality_status === + TransactionFinalityStatus.ACCEPTED_ON_L2 || + txStatusResponse.finality_status === + TransactionFinalityStatus.ACCEPTED_ON_L1 + ) { + txProcessed = true + } else { + await sleep(2 * 1000) + } + } + if (!txProcessed) { + console.error("txStatusResponse", txStatusResponse) + } + return { txProcessed, txStatusResponse } +} + +const getTXData = async (txHash: string) => { + const isProcessed = await isTXProcessed(txHash) + if (!isProcessed) { + throw new Error(`Transaction not processed: ${txHash}`) + } + let nodeUpdated = false + let txAcceptedRetries = 10 + let txData + while (!nodeUpdated && txAcceptedRetries > 0) { + txAcceptedRetries-- + txData = await provider.getTransactionByHash(txHash) + if (txData.type) { + nodeUpdated = true + } else { + await sleep(2 * 1000) + } + } + if (!nodeUpdated) { + console.error("txData", txData) + } + return { nodeUpdated, txData } +} + +export async function transferTokens( + amount: number, + to: string, + token: TokenSymbol = "ETH", +) { + const tokenInfo = getTokenInfo(token) + const amountToTransfer = `${amount * Math.pow(10, tokenInfo.decimals)}` + logInfo({ op: "transferTokens", amount, amountToTransfer, to, token }) + + const { low, high } = uint256.bnToUint256(amountToTransfer) + let placeTXAttempt = 0 + let txHash: string | null = null + let account + while (placeTXAttempt < maxRetries) { + account = await getAccount(amountToTransfer, token) + /** timeout if we don't receive a valid execution response */ + const placeTXTimeout = setTimeout(() => { + throw new Error(`Place tx timed out: ${txHash}`) + }, 60 * 1000) /** 60 seconds */ + try { + placeTXAttempt++ + const tx = await account.execute({ + contractAddress: tokenInfo.address, + entrypoint: "transfer", + calldata: [to, low, high], + }) + txHash = tx.transaction_hash + const { txProcessed, txStatusResponse } = await isTXProcessed( + tx.transaction_hash, + ) + if (txProcessed) { + logInfo({ + TxStatus: TransactionExecutionStatus.SUCCEEDED, + transaction_hash: tx.transaction_hash, + }) + return tx.transaction_hash + } + + console.error( + `[Failed to place TX] ${tx.transaction_hash} ${JSON.stringify(txStatusResponse)}`, + ) + } catch (e) { + if (e instanceof Error) { + //for debug only + console.error( + `placeTXAttempt: ${placeTXAttempt}, Exception: ${txHash}`, + e, + ) + } + } finally { + clearTimeout(placeTXTimeout) + } + console.warn("Transfer failed, going to try again ") + } + return null +} + +export async function getBalance( + accountAddress: string, + token: TokenSymbol = "ETH", +) { + const tokenInfo = getTokenInfo(token) + logInfo({ op: "getBalance", accountAddress, token, tokenInfo }) + const balanceOfCall = { + contractAddress: tokenInfo.address, + entrypoint: "balanceOf", + calldata: [accountAddress], + } + const [low] = await provider.callContract(balanceOfCall) + const balance = ( + parseInt(low, 16) / Math.pow(10, tokenInfo.decimals) + ).toFixed(4) + + logInfo({ + op: "getBalance", + balance, + formattedBalance: balance, + }) + return balance +} + +export async function validateTx({ + txHash, + receiver, + amount, + txType = "token", +}: { + txHash: string + receiver: string + amount?: number + txType?: "token" | "nft" +}) { + const log: string[] = [] + logInfo({ + op: "validateTx", + txHash, + receiver, + amount, + }) + const processed = await isTXProcessed(txHash) + if (!processed) { + throw new Error(`Transaction not processed: ${txHash}`) + } + const { nodeUpdated, txData } = await getTXData(txHash) + if (!nodeUpdated) { + console.error(log.join("\n")) + throw new Error(`Transaction data not found: ${txHash}`) + } + log.push("txData", JSON.stringify(txData)) + if (!("calldata" in txData!)) { + console.error(log.join("\n")) + throw new Error( + `Invalid transaction data: ${txHash}, ${JSON.stringify(txData)}`, + ) + } + logInfo(log) + let accAdd + txType === "token" + ? (accAdd = txData.calldata[4].toString()) + : (accAdd = txData.calldata[5].toString()) + + if (accAdd.length === 65) { + accAdd = accAdd.replace("0x", "0x0") + } + expect(isEqualAddress(accAdd, receiver)).toBe(true) + if (amount) { + expect(formatAmount(txData.calldata[5].toString())).toBe(amount) + } +} + +export function isScientific(num: number) { + const scientificPattern = /(.*)([eE])(.*)$/ + return scientificPattern.test(String(num)) +} + +export function convertScientificToDecimal(num: number) { + const exponent = String(num).split("e")[1] + return Number(num).toFixed(Math.abs(Number(exponent))) +} diff --git a/e2e/src/utils/common.ts b/e2e/src/utils/common.ts new file mode 100644 index 0000000..2ce9d34 --- /dev/null +++ b/e2e/src/utils/common.ts @@ -0,0 +1,30 @@ +import config from "../config" +import { v4 as uuid } from "uuid" + +export const sleep = (ms: number) => new Promise((r) => setTimeout(r, ms)) +const app = "argentx" +export const expireBESession = async (email: string) => { + const requestOptions = { + method: "GET", + } + const request = `${ + config.beAPIUrl + }/debug/expireCredentials?application=${app}&email=${encodeURIComponent( + email, + )}` + const response = await fetch(request, requestOptions) + if (response.status != 200) { + console.error(response.body) + throw new Error(`Error expiring session: ${request}`) + } + return response.status +} + +export const logInfo = (message: string | object) => { + const canLogInfo = process.env.E2E_LOG_INFO || false + if (canLogInfo) { + console.log(message) + } +} + +export const generateEmail = () => `e2e_2fa_${uuid()}@mail.com` diff --git a/e2e/src/utils/downloadGitHubRelease.ts b/e2e/src/utils/downloadGitHubRelease.ts new file mode 100644 index 0000000..23bbfef --- /dev/null +++ b/e2e/src/utils/downloadGitHubRelease.ts @@ -0,0 +1,64 @@ +import axios from "axios" +import * as fs from "fs" +import * as path from "path" +import { pipeline } from "stream" +import { promisify } from "util" +import config from "../config" + +const streamPipeline = promisify(pipeline) + +export async function downloadGitHubRelease(version: string): Promise { + const owner = config.migRepoOwner + const repo = config.migRepo + const tag = `@argent-x/extension@${version}` + const assetName = config.migReleaseName + const token = config.migRepoToken + const outputPath = `${config.migDir}${version}.zip` + try { + // Get release by tag name + const releaseResponse = await axios.get( + `https://api.github.com/repos/${owner}/${repo}/releases/tags/${tag}`, + { + headers: { + Authorization: `token ${token}`, + Accept: "application/vnd.github.v3+json", + "User-Agent": "Node.js", + }, + }, + ) + + const releaseData = releaseResponse.data + + // Find the asset by name + const asset = releaseData.assets.find((a: any) => a.name === assetName) + + if (!asset) { + throw new Error(`Asset ${assetName} not found in release ${tag}`) + } + + const assetUrl = asset.url + + // Download the asset + const assetResponse = await axios.get(assetUrl, { + headers: { + Authorization: `token ${token}`, + Accept: "application/octet-stream", + "User-Agent": "Node.js", + }, + responseType: "stream", // Important for streaming the response + }) + + // Ensure the output directory exists + const dir = path.dirname(outputPath) + if (!fs.existsSync(dir)) { + fs.mkdirSync(dir, { recursive: true }) + } + + // Write the file + await streamPipeline(assetResponse.data, fs.createWriteStream(outputPath)) + + console.log(`Asset downloaded to ${outputPath}`) + } catch (error: any) { + console.error(`Error: ${error.message}`) + } +} diff --git a/e2e/src/utils/getBranchVersion.sh b/e2e/src/utils/getBranchVersion.sh new file mode 100755 index 0000000..1bc0956 --- /dev/null +++ b/e2e/src/utils/getBranchVersion.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +# Enable command printing +#set -x + +# Function to run a command and check its exit status +run_command() { + output=$("$@") + local status=$? + if [ $status -ne 0 ]; then + echo "Error: Command '$*' failed with exit status $status" >&2 + exit 1 + fi + echo "$output" +} + +# Extract the version +VERSION=$(run_command grep -m1 '"version":' ../extension/dist/manifest.json | awk -F: '{ print $2 }' | sed 's/[", ]//g') + +# Print the version +echo "$VERSION" + +# Return the version as the script's output +exit 0 \ No newline at end of file diff --git a/e2e/src/utils/getBranchVersion.ts b/e2e/src/utils/getBranchVersion.ts new file mode 100644 index 0000000..32a47a5 --- /dev/null +++ b/e2e/src/utils/getBranchVersion.ts @@ -0,0 +1,22 @@ +import { execSync } from "child_process" +import * as path from "path" +import * as fs from "fs" + +export const getBranchVersion = (): string => { + const scriptPath = path.join(__dirname, "getBranchVersion.sh") + + try { + // Make the script executable + fs.chmodSync(scriptPath, "755") + + // Execute the script synchronously + const stdout = execSync(`bash ${scriptPath}`, { encoding: "utf8" }) + + console.log(`Version:${stdout}`) + + return stdout.trim() + } catch (error) { + console.error(`getVersion Error: ${error}`) + throw error + } +} diff --git a/e2e/src/utils/global.teardown.ts b/e2e/src/utils/global.teardown.ts new file mode 100644 index 0000000..294c45b --- /dev/null +++ b/e2e/src/utils/global.teardown.ts @@ -0,0 +1,16 @@ +import * as fs from "fs" +import config from "../config" + +export default async function tearDown() { + console.time("tearDown") + try { + fs.readdirSync(config.artifactsDir) + .filter((f) => f.endsWith("webm")) + .forEach((fileToDelete) => { + fs.rmSync(`${config.artifactsDir}/${fileToDelete}`) + }) + } catch (error) { + console.error({ op: "tearDown", error }) + } + console.timeEnd("tearDown") +} diff --git a/e2e/src/utils/index.ts b/e2e/src/utils/index.ts new file mode 100644 index 0000000..ca8e644 --- /dev/null +++ b/e2e/src/utils/index.ts @@ -0,0 +1,19 @@ +export { sleep, expireBESession, logInfo, generateEmail } from "./common" +export { default as Clipboard } from "./Clipboard" + +export { + TokenSymbol, + TokenName, + FeeTokens, + AccountsToSetup, + transferTokens, + getTokenInfo, + validateTx, + isScientific, + convertScientificToDecimal, + getBalance, +} from "./assets" + +export { unzip } from "./unzip" + +export { downloadGitHubRelease } from "./downloadGitHubRelease" diff --git a/e2e/src/utils/unzip.sh b/e2e/src/utils/unzip.sh new file mode 100755 index 0000000..58881fe --- /dev/null +++ b/e2e/src/utils/unzip.sh @@ -0,0 +1,58 @@ +#!/bin/bash + +# Enable command printing +#set -x + +# Function to run a command and check its exit status +run_command() { + "$@" + local status=$? + if [ $status -ne 0 ]; then + echo "Error: Command '$*' failed with exit status $status" + exit 1 + fi + return $status +} + +# Check if the correct number of arguments are provided +if [ $# -ne 2 ]; then + echo "Usage: $0 " + exit 1 +fi + +ZIP_FILE="$1" +OUTPUT_DIR="$2" + +# Check if ZIP_FILE exists +if [ ! -f "$ZIP_FILE" ]; then + echo "Error: ZIP file $ZIP_FILE does not exist" + exit 1 +fi + +BASE_NAME=$(basename "$ZIP_FILE" .zip) +echo "Removing directory: $OUTPUT_DIR/$BASE_NAME" +run_command rm -rf "$OUTPUT_DIR/$BASE_NAME" +run_command rm -rf "$OUTPUT_DIR/__MACOSX" + +# Create the output directory if it doesn't exist +run_command mkdir -p "$OUTPUT_DIR" + +# Check if bsdtar is installed, if not, install it +if ! command -v bsdtar &> /dev/null; then + echo "bsdtar not found. Installing libarchive-tools..." + run_command apt-get update + run_command apt-get install -y libarchive-tools +fi + +# Extract the zip file using bsdtar with verbose output +echo "Extracting $ZIP_FILE to $OUTPUT_DIR" +run_command bsdtar --no-xattrs -xf "$ZIP_FILE" -C "$OUTPUT_DIR" + +echo "Extraction completed" + +# Print the contents of the output directory for verification +#echo "Contents of $OUTPUT_DIR:" +#run_command ls -R "$OUTPUT_DIR" + +# Disable command printing +set +x \ No newline at end of file diff --git a/e2e/src/utils/unzip.ts b/e2e/src/utils/unzip.ts new file mode 100644 index 0000000..d1ba798 --- /dev/null +++ b/e2e/src/utils/unzip.ts @@ -0,0 +1,36 @@ +import { exec } from "child_process" +import * as path from "path" +import { promisify } from "util" +import config from "../config" + +const execAsync = promisify(exec) + +export const unzip = async (version: string): Promise => { + const zipFilePath = path.join(config.migDir, `${version}.zip`) + const outputDir = path.join(config.migDir, version) + const scriptPath = path.join(__dirname, "unzip.sh") + + try { + console.log(`###### Unzipping ${version}.zip`) + + // Ensure the script is executable + await execAsync(`chmod +x ${scriptPath}`) + + // Execute the unzip script + const { stdout, stderr } = await execAsync( + `bash "${scriptPath}" "${zipFilePath}" "${outputDir}"`, + { maxBuffer: 1024 * 1024 * 10 }, // Increase buffer size to 10MB + ) + + console.log(`Unzip Output:\n${stdout}`) + + if (stderr) { + console.warn(`Unzip Warnings:\n${stderr}`) + } + } catch (error) { + console.error(`Error during unzip: ${error}`) + throw error + } + + return `${outputDir}` +} diff --git a/e2e/tsconfig.json b/e2e/tsconfig.json new file mode 100644 index 0000000..4c48cae --- /dev/null +++ b/e2e/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "target": "Esnext", + "module": "ESNext", + "moduleResolution": "node", + "allowSyntheticDefaultImports": true, + "strict": true, + "noImplicitAny": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noImplicitReturns": true, + "resolveJsonModule": true, + "inlineSources": true, + "inlineSourceMap": true, + "composite": true, + "types": ["node"], + "noEmit": true, + "skipLibCheck": true + }, + "include": ["**/src", "**/shared"], + "exclude": ["node_modules"] +} diff --git a/e2e/until-failure b/e2e/until-failure new file mode 100755 index 0000000..d0bc639 --- /dev/null +++ b/e2e/until-failure @@ -0,0 +1,9 @@ +#!/bin/bash +# +# Example usage: +# +# # Repeats test until it fails: +# ./until-failure pnpm playwright test --config=./extension src/specs/accountSettings.spec.ts:95 +# + +while "$@"; do :; done diff --git a/package.json b/package.json index fcbd8c4..2ace533 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "build": "next build", "start": "next start", "lint": "next lint", - "test": "playwright test", + "test": "pnpm run --filter @demo-dapp-starket/e2e test", "test:headed": "playwright test --headed", "test:ui": "playwright test --ui", "prepare": "husky" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f6c5bf2..1f71681 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -70,6 +70,55 @@ importers: specifier: ^5 version: 5.6.3 + e2e: + dependencies: + '@scure/base': + specifier: ^1.1.1 + version: 1.1.9 + '@scure/bip39': + specifier: ^1.2.1 + version: 1.4.0 + lodash-es: + specifier: ^4.17.21 + version: 4.17.21 + object-hash: + specifier: ^3.0.0 + version: 3.0.0 + react: + specifier: ^18.0.0 + version: 18.3.1 + react-dom: + specifier: ^18.0.0 + version: 18.3.1(react@18.3.1) + swr: + specifier: ^1.3.0 + version: 1.3.0(react@18.3.1) + zod: + specifier: ^3.23.8 + version: 3.23.8 + devDependencies: + '@playwright/test': + specifier: ^1.48.1 + version: 1.48.2 + '@types/axios': + specifier: ^0.14.0 + version: 0.14.4 + '@types/node': + specifier: ^22.0.0 + version: 22.9.0 + '@types/uuid': + specifier: ^10.0.0 + version: 10.0.0 + dotenv: + specifier: ^16.3.1 + version: 16.4.5 + starknet: + specifier: 6.11.0 + version: 6.11.0 + uuid: + specifier: ^11.0.0 + version: 11.0.3 + packages: '@adraffy/ens-normalize@1.11.0': @@ -640,6 +689,10 @@ packages: '@trpc/server@10.45.2': resolution: {integrity: sha512-wOrSThNNE4HUnuhJG6PfDRp4L2009KDVxsd+2VYH8ro6o/7/jwYZ8Uu5j+VaW+mOmc8EHerHzGcdbGNQSAUPgg==} + '@types/axios@0.14.4': + resolution: {integrity: sha512-9JgOaunvQdsQ/qW2OPmE5+hCeUB52lQSolecrFrthct55QekhmXEwT203s20RL+UHtCQc15y3VXpby9E7Kkh/g==} + deprecated: This is a stub types definition. axios provides its own type definitions, so you do not need this installed. + '@types/conventional-commits-parser@5.0.0': resolution: {integrity: sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==} @@ -649,6 +702,9 @@ packages: '@types/node@20.17.4': resolution: {integrity: sha512-Fi1Bj8qTJr4f1FDdHFR7oMlOawEYSzkHNdBJK+aRjcDDNHwEV3jPPjuZP2Lh2QNgXeqzM8Y+U6b6urKAog2rZw==} + '@types/node@22.9.0': + resolution: {integrity: sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ==} + '@types/prop-types@15.7.13': resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} @@ -658,6 +714,9 @@ packages: '@types/react@18.3.12': resolution: {integrity: sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==} + '@types/uuid@10.0.0': + resolution: {integrity: sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ==} + '@typescript-eslint/eslint-plugin@8.12.2': resolution: {integrity: sha512-gQxbxM8mcxBwaEmWdtLCIGLfixBMHhQjBqR8sVWNTPpcj45WlYL2IObS/DNMLH1DBP0n8qz+aiiLTGfopPEebw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -888,6 +947,9 @@ packages: ast-types-flow@0.0.8: resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + atomic-sleep@1.0.0: resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==} engines: {node: '>=8.0.0'} @@ -900,6 +962,9 @@ packages: resolution: {integrity: sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==} engines: {node: '>=4'} + axios@1.7.7: + resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==} + axobject-query@4.1.0: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} engines: {node: '>= 0.4'} @@ -1003,6 +1068,10 @@ packages: colorette@2.0.20: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + commander@12.1.0: resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} @@ -1117,6 +1186,10 @@ packages: defu@6.1.4: resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + destr@2.0.3: resolution: {integrity: sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==} @@ -1144,6 +1217,10 @@ packages: resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} engines: {node: '>=8'} + dotenv@16.4.5: + resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==} + engines: {node: '>=12'} + duplexify@4.1.3: resolution: {integrity: sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==} @@ -1400,9 +1477,22 @@ packages: flatted@3.3.1: resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + follow-redirects@1.15.9: + resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} + form-data@4.0.1: + resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} + engines: {node: '>= 6'} + fs-extra@10.1.0: resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} engines: {node: '>=12'} @@ -1913,6 +2003,14 @@ packages: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + mime@3.0.0: resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} engines: {node: '>=10.0.0'} @@ -2015,6 +2113,10 @@ packages: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} + object-hash@3.0.0: + resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} + engines: {node: '>= 6'} + object-inspect@1.13.2: resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==} engines: {node: '>= 0.4'} @@ -2178,6 +2280,9 @@ packages: prop-types@15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + psl@1.9.0: resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} @@ -2201,6 +2306,11 @@ packages: radix3@1.1.2: resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==} + react-dom@18.3.1: + resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} + peerDependencies: + react: ^18.3.1 + react-dom@19.0.0-rc-02c0e824-20241028: resolution: {integrity: sha512-LrZf3DfHL6Fs07wwlUCHrzFTCMM19yA99MvJpfLokN4I2nBAZvREGZjZAn8VPiSfN72+i9j1eL4wB8gC695F3Q==} peerDependencies: @@ -2209,6 +2319,10 @@ packages: react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + react@18.3.1: + resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} + engines: {node: '>=0.10.0'} + react@19.0.0-rc-02c0e824-20241028: resolution: {integrity: sha512-GbZ7hpPHQMiEu53BqEaPQVM/4GG4hARo+mqEEnx4rYporDvNvUjutiAFxYFSbu6sgHwcr7LeFv8htEOwALVA2A==} engines: {node: '>=0.10.0'} @@ -2300,6 +2414,9 @@ packages: resolution: {integrity: sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==} engines: {node: '>=10'} + scheduler@0.23.2: + resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} + scheduler@0.25.0-rc-02c0e824-20241028: resolution: {integrity: sha512-GysnKjmMSaWcwsKTLzeJO0IhU3EyIiC0ivJKE6yDNLqt3IMxDByx8b6lSNXRNdN+ULUY0WLLjSPaZ0LuU/GnTg==} @@ -2472,6 +2589,11 @@ packages: svelte-forms@2.3.1: resolution: {integrity: sha512-ExX9PM0JgvdOWlHl2ztD7XzLNPOPt9U5hBKV8sUAisMfcYWpPRnyz+6EFmh35BOBGJJmuhTDBGm5/7seLjOTIA==} + swr@1.3.0: + resolution: {integrity: sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw==} + peerDependencies: + react: ^16.11.0 || ^17.0.0 || ^18.0.0 + system-architecture@0.1.0: resolution: {integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==} engines: {node: '>=18'} @@ -2653,6 +2775,10 @@ packages: util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + uuid@11.0.3: + resolution: {integrity: sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==} + hasBin: true + viem@2.21.37: resolution: {integrity: sha512-JupwyttT4aJNnP9+kD7E8jorMS5VmgpC3hm3rl5zXsO8WNBTsP3JJqZUSg4AG6s2lTrmmpzS/qpmXMZu5gJw5Q==} peerDependencies: @@ -3392,6 +3518,12 @@ snapshots: '@trpc/server@10.45.2': {} + '@types/axios@0.14.4': + dependencies: + axios: 1.7.7 + transitivePeerDependencies: + - debug + '@types/conventional-commits-parser@5.0.0': dependencies: '@types/node': 20.17.4 @@ -3402,6 +3534,10 @@ snapshots: dependencies: undici-types: 6.19.8 + '@types/node@22.9.0': + dependencies: + undici-types: 6.19.8 + '@types/prop-types@15.7.13': {} '@types/react-dom@18.3.1': @@ -3413,6 +3549,8 @@ snapshots: '@types/prop-types': 15.7.13 csstype: 3.1.3 + '@types/uuid@10.0.0': {} + '@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@8.57.1)(typescript@5.6.3))(eslint@8.57.1)(typescript@5.6.3)': dependencies: '@eslint-community/regexpp': 4.12.1 @@ -3847,6 +3985,8 @@ snapshots: ast-types-flow@0.0.8: {} + asynckit@0.4.0: {} + atomic-sleep@1.0.0: {} available-typed-arrays@1.0.7: @@ -3855,6 +3995,14 @@ snapshots: axe-core@4.10.2: {} + axios@1.7.7: + dependencies: + follow-redirects: 1.15.9 + form-data: 4.0.1 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + axobject-query@4.1.0: {} balanced-match@1.0.2: {} @@ -3969,6 +4117,10 @@ snapshots: colorette@2.0.20: {} + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + commander@12.1.0: {} compare-func@2.0.0: @@ -4075,6 +4227,8 @@ snapshots: defu@6.1.4: {} + delayed-stream@1.0.0: {} + destr@2.0.3: {} detect-browser@5.3.0: {} @@ -4096,6 +4250,8 @@ snapshots: dependencies: is-obj: 2.0.0 + dotenv@16.4.5: {} + duplexify@4.1.3: dependencies: end-of-stream: 1.4.4 @@ -4524,10 +4680,18 @@ snapshots: flatted@3.3.1: {} + follow-redirects@1.15.9: {} + for-each@0.3.3: dependencies: is-callable: 1.2.7 + form-data@4.0.1: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + fs-extra@10.1.0: dependencies: graceful-fs: 4.2.11 @@ -5031,6 +5195,12 @@ snapshots: braces: 3.0.3 picomatch: 2.3.1 + mime-db@1.52.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + mime@3.0.0: {} mimic-fn@4.0.0: {} @@ -5112,6 +5282,8 @@ snapshots: object-assign@4.1.1: {} + object-hash@3.0.0: {} + object-inspect@1.13.2: {} object-keys@1.1.1: {} @@ -5283,6 +5455,8 @@ snapshots: object-assign: 4.1.1 react-is: 16.13.1 + proxy-from-env@1.1.0: {} + psl@1.9.0: {} punycode@2.3.1: {} @@ -5302,6 +5476,12 @@ snapshots: radix3@1.1.2: {} + react-dom@18.3.1(react@18.3.1): + dependencies: + loose-envify: 1.4.0 + react: 18.3.1 + scheduler: 0.23.2 + react-dom@19.0.0-rc-02c0e824-20241028(react@19.0.0-rc-02c0e824-20241028): dependencies: react: 19.0.0-rc-02c0e824-20241028 @@ -5309,6 +5489,10 @@ snapshots: react-is@16.13.1: {} + react@18.3.1: + dependencies: + loose-envify: 1.4.0 + react@19.0.0-rc-02c0e824-20241028: {} readable-stream@3.6.2: @@ -5402,6 +5586,10 @@ snapshots: safe-stable-stringify@2.5.0: {} + scheduler@0.23.2: + dependencies: + loose-envify: 1.4.0 + scheduler@0.25.0-rc-02c0e824-20241028: {} semver@6.3.1: {} @@ -5644,6 +5832,10 @@ snapshots: dependencies: is-promise: 4.0.0 + swr@1.3.0(react@18.3.1): + dependencies: + react: 18.3.1 + system-architecture@0.1.0: {} tapable@2.2.1: {} @@ -5802,6 +5994,8 @@ snapshots: util-deprecate@1.0.2: {} + uuid@11.0.3: {} + viem@2.21.37(typescript@5.6.3)(zod@3.23.8): dependencies: '@adraffy/ens-normalize': 1.11.0 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 0000000..a395802 --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,3 @@ +packages: + - "src" + - "e2e" diff --git a/test-results/.last-run.json b/test-results/.last-run.json new file mode 100644 index 0000000..0bf087c --- /dev/null +++ b/test-results/.last-run.json @@ -0,0 +1,6 @@ +{ + "status": "failed", + "failedTests": [ + "a58aee9b88d8075424d9-b89a730b188635a04182" + ] +} \ No newline at end of file

    P6!V_ms@6 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 literal 0 HcmV?d00001 diff --git a/e2e/mig/6.19.5/assets/known-dapps.json b/e2e/mig/6.19.5/assets/known-dapps.json new file mode 100644 index 0000000..046b992 --- /dev/null +++ b/e2e/mig/6.19.5/assets/known-dapps.json @@ -0,0 +1,148 @@ +[ + { + "id": "briq-construction", + "hosts": ["briq.construction"], + "title": "briq", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x0266b1276d23ffb53d99da3f01be7e29fa024dd33cd7f7b1eb7a46c67891c9d0", + "0x01317354276941f7f799574c73fd8fe53fa3f251084b4c04d88cf601b6bd915e" + ] + } + }, + { + "id": "jediswap-xyz", + "hosts": ["app.testnet.jediswap.xyz"], + "title": "JediSwap", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x012b063b60553c91ed237d8905dff412fba830c5716b17821063176c6c073341", + "0x04bc8ac16658025bff4a3bd0760e84fcf075417a4c55c6fae716efdd8f1ed26c", + "0x05f405f9650c7ef663c87352d280f8d359ad07d200c0e5450cb9d222092dc756", + "0x024da028e8176afd3219fbeafb17c49624af9b86dcbe81007ae40d93f741617d", + "0x01ca5dedf1612b1ffb035e838ac09d70e500d22cf9cd0de4bebcef8553506fdb" + ] + } + }, + { + "id": "myswap-xyz", + "hosts": ["www.myswap.xyz"], + "title": "mySwap", + "icon": "https://www.myswap.xyz/favicon.ico", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x18a439bcbb1b3535a6145c1dc9bc6366267d923f60a84bd0c7618f33c81d334", + "0x71faa7d6c3ddb081395574c5a6904f4458ff648b66e2123b877555d9ae0260e" + ] + } + }, + { + "id": "alpharoad-fi", + "hosts": ["testnet.app.alpharoad.fi"], + "title": "Alpha Road", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x04aec73f0611a9be0524e7ef21ab1679bdf9c97dc7d72614f15373d431226b6a" + ] + } + }, + { + "id": "aspect-co", + "hosts": ["aspect.co", "testnet.aspect.co"], + "title": "Aspect", + "icon": "https://aspect.co/img/company/logo512.png", + "contracts": { + "mainnet-alpha": [ + "0x2a92f0f860bf7c63fb9ef42cff4137006b309e0e6e1484e42d0b5511959414d" + ], + "goerli-alpha": [ + "0x6fcf30a53fdc33c85ab428d6c481c5d241f1de403009c4e5b66aeaf3edc890" + ] + } + }, + { + "id": "mintsquare-io", + "hosts": ["mintsquare.io"], + "title": "Mint Square", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x5bc8cc601c5098e20e9d9d74e86cfb0ec737f6f3ac571914dbe4f74aa249786" + ] + } + }, + { + "id": "nogame-app", + "hosts": ["nogamev0-1.netlify.app"], + "title": "NoGame", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x35401b96dc690eda2716068d3b03732d7c18af7c0327787660179108789d84f" + ] + } + }, + { + "id": "influenceth-io", + "hosts": ["game-goerli.influenceth.io"], + "title": "Influence", + "icon": "https://uploads-ssl.webflow.com/60c209ffee9cc9e89d505549/60c8fea5c9d9a170d2f9b5e0_logo-256.png", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x4a472fe795cc40e9dc838fe4f1608cb91bf027854d016675ec81e172a2e3599" + ] + } + }, + { + "id": "astraly-xyz", + "hosts": ["testnet.astraly.xyz"], + "title": "Astraly", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x0552b530aacef8e7338c9a8f0fd4e9ad06100a67befc2f4e9246219a4e41da04" + ] + } + }, + { + "id": "starknet-id", + "hosts": ["goerli.app.starknet.id"], + "title": "Starknet.id", + "icon": "https://www.starknet.id/visuals/StarknetIdLogo.png", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x0798e884450c19e072d6620fefdbeb7387d0453d3fd51d95f5ace1f17633d88b" + ] + } + }, + { + "id": "serity-finance", + "hosts": ["alpha.serity.finance"], + "title": "Serity", + "icon": "https://alpha.serity.finance/favicon.png", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x010a4c7ffd9de72a6c689de516574205190541f34b5444f25e54c9fe96a2f69d" + ] + } + }, + { + "id": "age-of-eykar", + "hosts": ["eykar.org"], + "title": "Age of Eykar", + "icon": "https://eykar.org/favicon.ico", + "contracts": { + "mainnet-alpha": [], + "goerli-alpha": [ + "0x01742bada34b0a17dfa019a84073e4a275fc9dd6e3d7899adf8507970feb31c9" + ] + } + } +] diff --git a/e2e/mig/6.19.5/assets/ledger.riv b/e2e/mig/6.19.5/assets/ledger.riv new file mode 100644 index 0000000000000000000000000000000000000000..0fdbed121bf932b3ef1717ff4a25464408973a58 GIT binary patch literal 56712 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 literal 0 HcmV?d00001 diff --git a/e2e/mig/6.19.5/assets/notification-failure-icon@3x.png b/e2e/mig/6.19.5/assets/notification-failure-icon@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..c42ef265dc5cae21aea78e88f94feb12405d905c GIT binary patch literal 1745 zcmV;?1}^!DP)nRA808J`QzX0* z&I#f?Cb6edHO7fSSni(b?&&f8NecqcnsNPI)!kLyJph3~AP@)y0)apv5O4~D$J}q# z76t>T0u8GO(JB!v5K>iM;~QU`yp{lZ{JTEC(uasT5Yz8~rB1mFoj0vUA3Vi70lJ&D zEx>pOV%Xvzt6+u>M9>0?zARriTHq002ryyvJ^pb4EW#hS$6s49;pdf`Mh9{xR{;{k z6CH5?*@9fa7Eye@a&uXSoXAB0F+5UyMo;2+UWix3L??L&;Z%UT^;#8?e$KDO&jMTJ z3hr~K-2+EB5g-}O{1bDiflp8b2#%L;nkV1@>jK=rt1S*n@dcP0(KtcEQmGPsuI zSmgW0?ngHMEfmc7g7i=9wYPWcKkb1Ys9EIEP8#~UQpJ#c!*@F_0!?<_2pzLieZ=?-41g5v zFSQ%>$@k~+`vNy6<9!)HT;p#o)$27wkey{T+|1>pZ^Rhm0h~zjBU zs$8ce00RC1j!_lCN8<}aqSq?dDRsg;YrJ(Ch9=2U{Lahxf~+lFYB%4^x=yhVz(vT3 zS)MSBJdLk|;yi$IExPN9;Dhm1vj$dIN1H@dgrc>sdn(r{2@oOXvY}aJl4UZBY7#_)9>5*j zpWqnP8E)1Do-MdC)>FAoF%=Ox^#I-Uf{!9_{_LB|b!vS8f-?cq=61Xj0ZU3YQxZUq zd;te!O|1DOf~w7w1V}17mc77KR?`O&cm$+;Mv+EQ9=?J#=+I!w!hACtNu!=+bC+kA@0pd9T&N>U3TLoF^k zXm>hu2d6aNW;n1TQ%SN^j*j^bazFkzFGjQ8<}qX-lK_(O8w_#Rb&A3dus^Ke2gpd~ zqWs%m8oigtfQ2Jwb+nJze!=jVBIh%Jio(B;#Wa@kEHM-BkekuPCMaynAu$m1Df zxo+o4&VGpKAUBWT7SCT!@_e|P7yGH?=}LgIGzH(=_X_M2(zz_2^5Lm^-fd_b9SjxM zki{_O8HgPM`s$0(C-Hhm;r|cwgerT+DvwSUK@JKh`TlrrG2X|P?B*fpb6o!>r9$5y n<{1bC0)apv5C{YU0mu9c70Fg-)g+Fi00000NkvXXu0mjf^!GD2 literal 0 HcmV?d00001 diff --git a/e2e/mig/6.19.5/assets/notification-success-icon@3x.png b/e2e/mig/6.19.5/assets/notification-success-icon@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..138168e22fe6a9192b634c134f95f2f3f58ae12f GIT binary patch literal 1677 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 z%0D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", + "members": [ + { + "name": "snapshot", + "type": "@core::array::Array::" + } + ] + }, + { + "type": "struct", + "name": "core::starknet::account::Call", + "members": [ + { + "name": "to", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "selector", + "type": "core::felt252" + }, + { + "name": "calldata", + "type": "core::array::Span::" + } + ] + }, + { + "type": "interface", + "name": "argent::account::interface::IAccount", + "items": [ + { + "type": "function", + "name": "__validate__", + "inputs": [ + { + "name": "calls", + "type": "core::array::Array::" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "__execute__", + "inputs": [ + { + "name": "calls", + "type": "core::array::Array::" + } + ], + "outputs": [ + { + "type": "core::array::Array::>" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "is_valid_signature", + "inputs": [ + { + "name": "hash", + "type": "core::felt252" + }, + { + "name": "signature", + "type": "core::array::Array::" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + } + ] + }, + { + "type": "impl", + "name": "UpgradeableCallbackOldImpl", + "interface_name": "argent::upgrade::interface::IUpgradableCallbackOld" + }, + { + "type": "interface", + "name": "argent::upgrade::interface::IUpgradableCallbackOld", + "items": [ + { + "type": "function", + "name": "execute_after_upgrade", + "inputs": [ + { + "name": "data", + "type": "core::array::Array::" + } + ], + "outputs": [ + { + "type": "core::array::Array::" + } + ], + "state_mutability": "external" + } + ] + }, + { + "type": "impl", + "name": "UpgradeableCallbackImpl", + "interface_name": "argent::upgrade::interface::IUpgradableCallback" + }, + { + "type": "interface", + "name": "argent::upgrade::interface::IUpgradableCallback", + "items": [ + { + "type": "function", + "name": "perform_upgrade", + "inputs": [ + { + "name": "new_implementation", + "type": "core::starknet::class_hash::ClassHash" + }, + { + "name": "data", + "type": "core::array::Span::" + } + ], + "outputs": [], + "state_mutability": "external" + } + ] + }, + { + "type": "impl", + "name": "ArgentUserAccountImpl", + "interface_name": "argent::account::interface::IArgentUserAccount" + }, + { + "type": "struct", + "name": "argent::signer::signer_signature::StarknetSigner", + "members": [ + { + "name": "pubkey", + "type": "core::zeroable::NonZero::" + } + ] + }, + { + "type": "struct", + "name": "core::starknet::eth_address::EthAddress", + "members": [ + { + "name": "address", + "type": "core::felt252" + } + ] + }, + { + "type": "struct", + "name": "argent::signer::signer_signature::Secp256k1Signer", + "members": [ + { + "name": "pubkey_hash", + "type": "core::starknet::eth_address::EthAddress" + } + ] + }, + { + "type": "struct", + "name": "core::integer::u256", + "members": [ + { + "name": "low", + "type": "core::integer::u128" + }, + { + "name": "high", + "type": "core::integer::u128" + } + ] + }, + { + "type": "struct", + "name": "argent::signer::signer_signature::Secp256r1Signer", + "members": [ + { + "name": "pubkey", + "type": "core::zeroable::NonZero::" + } + ] + }, + { + "type": "struct", + "name": "argent::signer::signer_signature::Eip191Signer", + "members": [ + { + "name": "eth_address", + "type": "core::starknet::eth_address::EthAddress" + } + ] + }, + { + "type": "struct", + "name": "core::array::Span::", + "members": [ + { + "name": "snapshot", + "type": "@core::array::Array::" + } + ] + }, + { + "type": "struct", + "name": "argent::signer::signer_signature::WebauthnSigner", + "members": [ + { + "name": "origin", + "type": "core::array::Span::" + }, + { + "name": "rp_id_hash", + "type": "core::zeroable::NonZero::" + }, + { + "name": "pubkey", + "type": "core::zeroable::NonZero::" + } + ] + }, + { + "type": "enum", + "name": "argent::signer::signer_signature::Signer", + "variants": [ + { + "name": "Starknet", + "type": "argent::signer::signer_signature::StarknetSigner" + }, + { + "name": "Secp256k1", + "type": "argent::signer::signer_signature::Secp256k1Signer" + }, + { + "name": "Secp256r1", + "type": "argent::signer::signer_signature::Secp256r1Signer" + }, + { + "name": "Eip191", + "type": "argent::signer::signer_signature::Eip191Signer" + }, + { + "name": "Webauthn", + "type": "argent::signer::signer_signature::WebauthnSigner" + } + ] + }, + { + "type": "enum", + "name": "core::option::Option::", + "variants": [ + { + "name": "Some", + "type": "argent::signer::signer_signature::Signer" + }, + { + "name": "None", + "type": "()" + } + ] + }, + { + "type": "struct", + "name": "argent::signer::signer_signature::StarknetSignature", + "members": [ + { + "name": "r", + "type": "core::felt252" + }, + { + "name": "s", + "type": "core::felt252" + } + ] + }, + { + "type": "enum", + "name": "core::bool", + "variants": [ + { + "name": "False", + "type": "()" + }, + { + "name": "True", + "type": "()" + } + ] + }, + { + "type": "struct", + "name": "core::starknet::secp256_trait::Signature", + "members": [ + { + "name": "r", + "type": "core::integer::u256" + }, + { + "name": "s", + "type": "core::integer::u256" + }, + { + "name": "y_parity", + "type": "core::bool" + } + ] + }, + { + "type": "enum", + "name": "argent::signer::webauthn::Sha256Implementation", + "variants": [ + { + "name": "Cairo0", + "type": "()" + }, + { + "name": "Cairo1", + "type": "()" + } + ] + }, + { + "type": "struct", + "name": "argent::signer::webauthn::WebauthnSignature", + "members": [ + { + "name": "cross_origin", + "type": "core::bool" + }, + { + "name": "client_data_json_outro", + "type": "core::array::Span::" + }, + { + "name": "flags", + "type": "core::integer::u8" + }, + { + "name": "sign_count", + "type": "core::integer::u32" + }, + { + "name": "ec_signature", + "type": "core::starknet::secp256_trait::Signature" + }, + { + "name": "sha256_implementation", + "type": "argent::signer::webauthn::Sha256Implementation" + } + ] + }, + { + "type": "enum", + "name": "argent::signer::signer_signature::SignerSignature", + "variants": [ + { + "name": "Starknet", + "type": "(argent::signer::signer_signature::StarknetSigner, argent::signer::signer_signature::StarknetSignature)" + }, + { + "name": "Secp256k1", + "type": "(argent::signer::signer_signature::Secp256k1Signer, core::starknet::secp256_trait::Signature)" + }, + { + "name": "Secp256r1", + "type": "(argent::signer::signer_signature::Secp256r1Signer, core::starknet::secp256_trait::Signature)" + }, + { + "name": "Eip191", + "type": "(argent::signer::signer_signature::Eip191Signer, core::starknet::secp256_trait::Signature)" + }, + { + "name": "Webauthn", + "type": "(argent::signer::signer_signature::WebauthnSigner, argent::signer::webauthn::WebauthnSignature)" + } + ] + }, + { + "type": "enum", + "name": "argent::signer::signer_signature::SignerType", + "variants": [ + { + "name": "Starknet", + "type": "()" + }, + { + "name": "Secp256k1", + "type": "()" + }, + { + "name": "Secp256r1", + "type": "()" + }, + { + "name": "Eip191", + "type": "()" + }, + { + "name": "Webauthn", + "type": "()" + } + ] + }, + { + "type": "enum", + "name": "core::option::Option::", + "variants": [ + { + "name": "Some", + "type": "core::felt252" + }, + { + "name": "None", + "type": "()" + } + ] + }, + { + "type": "enum", + "name": "core::option::Option::", + "variants": [ + { + "name": "Some", + "type": "argent::signer::signer_signature::SignerType" + }, + { + "name": "None", + "type": "()" + } + ] + }, + { + "type": "enum", + "name": "argent::recovery::interface::LegacyEscapeType", + "variants": [ + { + "name": "None", + "type": "()" + }, + { + "name": "Guardian", + "type": "()" + }, + { + "name": "Owner", + "type": "()" + } + ] + }, + { + "type": "struct", + "name": "argent::signer::signer_signature::SignerStorageValue", + "members": [ + { + "name": "stored_value", + "type": "core::felt252" + }, + { + "name": "signer_type", + "type": "argent::signer::signer_signature::SignerType" + } + ] + }, + { + "type": "enum", + "name": "core::option::Option::", + "variants": [ + { + "name": "Some", + "type": "argent::signer::signer_signature::SignerStorageValue" + }, + { + "name": "None", + "type": "()" + } + ] + }, + { + "type": "struct", + "name": "argent::recovery::interface::LegacyEscape", + "members": [ + { + "name": "ready_at", + "type": "core::integer::u64" + }, + { + "name": "escape_type", + "type": "argent::recovery::interface::LegacyEscapeType" + }, + { + "name": "new_signer", + "type": "core::option::Option::" + } + ] + }, + { + "type": "struct", + "name": "argent::account::interface::Version", + "members": [ + { + "name": "major", + "type": "core::integer::u8" + }, + { + "name": "minor", + "type": "core::integer::u8" + }, + { + "name": "patch", + "type": "core::integer::u8" + } + ] + }, + { + "type": "enum", + "name": "argent::recovery::interface::EscapeStatus", + "variants": [ + { + "name": "None", + "type": "()" + }, + { + "name": "NotReady", + "type": "()" + }, + { + "name": "Ready", + "type": "()" + }, + { + "name": "Expired", + "type": "()" + } + ] + }, + { + "type": "interface", + "name": "argent::account::interface::IArgentUserAccount", + "items": [ + { + "type": "function", + "name": "__validate_declare__", + "inputs": [ + { + "name": "class_hash", + "type": "core::felt252" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "__validate_deploy__", + "inputs": [ + { + "name": "class_hash", + "type": "core::felt252" + }, + { + "name": "contract_address_salt", + "type": "core::felt252" + }, + { + "name": "owner", + "type": "argent::signer::signer_signature::Signer" + }, + { + "name": "guardian", + "type": "core::option::Option::" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "set_escape_security_period", + "inputs": [ + { + "name": "new_security_period", + "type": "core::integer::u64" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "change_owner", + "inputs": [ + { + "name": "signer_signature", + "type": "argent::signer::signer_signature::SignerSignature" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "change_guardian", + "inputs": [ + { + "name": "new_guardian", + "type": "core::option::Option::" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "change_guardian_backup", + "inputs": [ + { + "name": "new_guardian_backup", + "type": "core::option::Option::" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "trigger_escape_owner", + "inputs": [ + { + "name": "new_owner", + "type": "argent::signer::signer_signature::Signer" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "trigger_escape_guardian", + "inputs": [ + { + "name": "new_guardian", + "type": "core::option::Option::" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "escape_owner", + "inputs": [], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "escape_guardian", + "inputs": [], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "cancel_escape", + "inputs": [], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "get_owner", + "inputs": [], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_owner_guid", + "inputs": [], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_owner_type", + "inputs": [], + "outputs": [ + { + "type": "argent::signer::signer_signature::SignerType" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_guardian", + "inputs": [], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "is_guardian", + "inputs": [ + { + "name": "guardian", + "type": "argent::signer::signer_signature::Signer" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_guardian_guid", + "inputs": [], + "outputs": [ + { + "type": "core::option::Option::" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_guardian_type", + "inputs": [], + "outputs": [ + { + "type": "core::option::Option::" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_guardian_backup", + "inputs": [], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_guardian_backup_guid", + "inputs": [], + "outputs": [ + { + "type": "core::option::Option::" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_guardian_backup_type", + "inputs": [], + "outputs": [ + { + "type": "core::option::Option::" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_escape", + "inputs": [], + "outputs": [ + { + "type": "argent::recovery::interface::LegacyEscape" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_name", + "inputs": [], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_version", + "inputs": [], + "outputs": [ + { + "type": "argent::account::interface::Version" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_last_owner_trigger_escape_attempt", + "inputs": [], + "outputs": [ + { + "type": "core::integer::u64" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_last_guardian_trigger_escape_attempt", + "inputs": [], + "outputs": [ + { + "type": "core::integer::u64" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_last_owner_escape_attempt", + "inputs": [], + "outputs": [ + { + "type": "core::integer::u64" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_last_guardian_escape_attempt", + "inputs": [], + "outputs": [ + { + "type": "core::integer::u64" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_escape_and_status", + "inputs": [], + "outputs": [ + { + "type": "(argent::recovery::interface::LegacyEscape, argent::recovery::interface::EscapeStatus)" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_escape_security_period", + "inputs": [], + "outputs": [ + { + "type": "core::integer::u64" + } + ], + "state_mutability": "view" + } + ] + }, + { + "type": "impl", + "name": "DeprecatedArgentAccountImpl", + "interface_name": "argent::account::interface::IDeprecatedArgentAccount" + }, + { + "type": "interface", + "name": "argent::account::interface::IDeprecatedArgentAccount", + "items": [ + { + "type": "function", + "name": "getVersion", + "inputs": [], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "getName", + "inputs": [], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "isValidSignature", + "inputs": [ + { + "name": "hash", + "type": "core::felt252" + }, + { + "name": "signatures", + "type": "core::array::Array::" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + } + ] + }, + { + "type": "impl", + "name": "Sessionable", + "interface_name": "argent::session::interface::ISessionable" + }, + { + "type": "interface", + "name": "argent::session::interface::ISessionable", + "items": [ + { + "type": "function", + "name": "revoke_session", + "inputs": [ + { + "name": "session_hash", + "type": "core::felt252" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "is_session_revoked", + "inputs": [ + { + "name": "session_hash", + "type": "core::felt252" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "is_session_authorization_cached", + "inputs": [ + { + "name": "session_hash", + "type": "core::felt252" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "view" + } + ] + }, + { + "type": "impl", + "name": "ExecuteFromOutside", + "interface_name": "argent::outside_execution::interface::IOutsideExecution" + }, + { + "type": "struct", + "name": "core::array::Span::", + "members": [ + { + "name": "snapshot", + "type": "@core::array::Array::" + } + ] + }, + { + "type": "struct", + "name": "argent::outside_execution::interface::OutsideExecution", + "members": [ + { + "name": "caller", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "nonce", + "type": "core::felt252" + }, + { + "name": "execute_after", + "type": "core::integer::u64" + }, + { + "name": "execute_before", + "type": "core::integer::u64" + }, + { + "name": "calls", + "type": "core::array::Span::" + } + ] + }, + { + "type": "interface", + "name": "argent::outside_execution::interface::IOutsideExecution", + "items": [ + { + "type": "function", + "name": "execute_from_outside", + "inputs": [ + { + "name": "outside_execution", + "type": "argent::outside_execution::interface::OutsideExecution" + }, + { + "name": "signature", + "type": "core::array::Array::" + } + ], + "outputs": [ + { + "type": "core::array::Array::>" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "execute_from_outside_v2", + "inputs": [ + { + "name": "outside_execution", + "type": "argent::outside_execution::interface::OutsideExecution" + }, + { + "name": "signature", + "type": "core::array::Span::" + } + ], + "outputs": [ + { + "type": "core::array::Array::>" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "is_valid_outside_execution_nonce", + "inputs": [ + { + "name": "nonce", + "type": "core::felt252" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_outside_execution_message_hash_rev_0", + "inputs": [ + { + "name": "outside_execution", + "type": "argent::outside_execution::interface::OutsideExecution" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_outside_execution_message_hash_rev_1", + "inputs": [ + { + "name": "outside_execution", + "type": "argent::outside_execution::interface::OutsideExecution" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + } + ] + }, + { + "type": "impl", + "name": "SRC5", + "interface_name": "argent::introspection::interface::ISRC5" + }, + { + "type": "interface", + "name": "argent::introspection::interface::ISRC5", + "items": [ + { + "type": "function", + "name": "supports_interface", + "inputs": [ + { + "name": "interface_id", + "type": "core::felt252" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "view" + } + ] + }, + { + "type": "impl", + "name": "SRC5Legacy", + "interface_name": "argent::introspection::interface::ISRC5Legacy" + }, + { + "type": "interface", + "name": "argent::introspection::interface::ISRC5Legacy", + "items": [ + { + "type": "function", + "name": "supportsInterface", + "inputs": [ + { + "name": "interfaceId", + "type": "core::felt252" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + } + ] + }, + { + "type": "impl", + "name": "Upgradable", + "interface_name": "argent::upgrade::interface::IUpgradeable" + }, + { + "type": "interface", + "name": "argent::upgrade::interface::IUpgradeable", + "items": [ + { + "type": "function", + "name": "upgrade", + "inputs": [ + { + "name": "new_implementation", + "type": "core::starknet::class_hash::ClassHash" + }, + { + "name": "data", + "type": "core::array::Array::" + } + ], + "outputs": [], + "state_mutability": "external" + } + ] + }, + { + "type": "constructor", + "name": "constructor", + "inputs": [ + { + "name": "owner", + "type": "argent::signer::signer_signature::Signer" + }, + { + "name": "guardian", + "type": "core::option::Option::" + } + ] + }, + { + "type": "event", + "name": "argent::outside_execution::outside_execution::outside_execution_component::Event", + "kind": "enum", + "variants": [] + }, + { + "type": "event", + "name": "argent::introspection::src5::src5_component::Event", + "kind": "enum", + "variants": [] + }, + { + "type": "event", + "name": "argent::upgrade::upgrade::upgrade_component::AccountUpgraded", + "kind": "struct", + "members": [ + { + "name": "new_implementation", + "type": "core::starknet::class_hash::ClassHash", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::upgrade::upgrade::upgrade_component::Event", + "kind": "enum", + "variants": [ + { + "name": "AccountUpgraded", + "type": "argent::upgrade::upgrade::upgrade_component::AccountUpgraded", + "kind": "nested" + } + ] + }, + { + "type": "event", + "name": "argent::session::session::session_component::SessionRevoked", + "kind": "struct", + "members": [ + { + "name": "session_hash", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::session::session::session_component::Event", + "kind": "enum", + "variants": [ + { + "name": "SessionRevoked", + "type": "argent::session::session::session_component::SessionRevoked", + "kind": "nested" + } + ] + }, + { + "type": "event", + "name": "openzeppelin::security::reentrancyguard::ReentrancyGuardComponent::Event", + "kind": "enum", + "variants": [] + }, + { + "type": "struct", + "name": "core::array::Span::>", + "members": [ + { + "name": "snapshot", + "type": "@core::array::Array::>" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::TransactionExecuted", + "kind": "struct", + "members": [ + { + "name": "hash", + "type": "core::felt252", + "kind": "key" + }, + { + "name": "response", + "type": "core::array::Span::>", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::AccountCreated", + "kind": "struct", + "members": [ + { + "name": "owner", + "type": "core::felt252", + "kind": "key" + }, + { + "name": "guardian", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::AccountCreatedGuid", + "kind": "struct", + "members": [ + { + "name": "owner_guid", + "type": "core::felt252", + "kind": "key" + }, + { + "name": "guardian_guid", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::EscapeOwnerTriggeredGuid", + "kind": "struct", + "members": [ + { + "name": "ready_at", + "type": "core::integer::u64", + "kind": "data" + }, + { + "name": "new_owner_guid", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::EscapeGuardianTriggeredGuid", + "kind": "struct", + "members": [ + { + "name": "ready_at", + "type": "core::integer::u64", + "kind": "data" + }, + { + "name": "new_guardian_guid", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::OwnerEscapedGuid", + "kind": "struct", + "members": [ + { + "name": "new_owner_guid", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::GuardianEscapedGuid", + "kind": "struct", + "members": [ + { + "name": "new_guardian_guid", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::EscapeCanceled", + "kind": "struct", + "members": [] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::OwnerChanged", + "kind": "struct", + "members": [ + { + "name": "new_owner", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::OwnerChangedGuid", + "kind": "struct", + "members": [ + { + "name": "new_owner_guid", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::GuardianChanged", + "kind": "struct", + "members": [ + { + "name": "new_guardian", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::GuardianChangedGuid", + "kind": "struct", + "members": [ + { + "name": "new_guardian_guid", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::GuardianBackupChanged", + "kind": "struct", + "members": [ + { + "name": "new_guardian_backup", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::GuardianBackupChangedGuid", + "kind": "struct", + "members": [ + { + "name": "new_guardian_backup_guid", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::SignerLinked", + "kind": "struct", + "members": [ + { + "name": "signer_guid", + "type": "core::felt252", + "kind": "key" + }, + { + "name": "signer", + "type": "argent::signer::signer_signature::Signer", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::EscapeSecurityPeriodChanged", + "kind": "struct", + "members": [ + { + "name": "escape_security_period", + "type": "core::integer::u64", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "argent::presets::argent_account::ArgentAccount::Event", + "kind": "enum", + "variants": [ + { + "name": "ExecuteFromOutsideEvents", + "type": "argent::outside_execution::outside_execution::outside_execution_component::Event", + "kind": "flat" + }, + { + "name": "SRC5Events", + "type": "argent::introspection::src5::src5_component::Event", + "kind": "flat" + }, + { + "name": "UpgradeEvents", + "type": "argent::upgrade::upgrade::upgrade_component::Event", + "kind": "flat" + }, + { + "name": "SessionableEvents", + "type": "argent::session::session::session_component::Event", + "kind": "flat" + }, + { + "name": "ReentrancyGuardEvent", + "type": "openzeppelin::security::reentrancyguard::ReentrancyGuardComponent::Event", + "kind": "flat" + }, + { + "name": "TransactionExecuted", + "type": "argent::presets::argent_account::ArgentAccount::TransactionExecuted", + "kind": "nested" + }, + { + "name": "AccountCreated", + "type": "argent::presets::argent_account::ArgentAccount::AccountCreated", + "kind": "nested" + }, + { + "name": "AccountCreatedGuid", + "type": "argent::presets::argent_account::ArgentAccount::AccountCreatedGuid", + "kind": "nested" + }, + { + "name": "EscapeOwnerTriggeredGuid", + "type": "argent::presets::argent_account::ArgentAccount::EscapeOwnerTriggeredGuid", + "kind": "nested" + }, + { + "name": "EscapeGuardianTriggeredGuid", + "type": "argent::presets::argent_account::ArgentAccount::EscapeGuardianTriggeredGuid", + "kind": "nested" + }, + { + "name": "OwnerEscapedGuid", + "type": "argent::presets::argent_account::ArgentAccount::OwnerEscapedGuid", + "kind": "nested" + }, + { + "name": "GuardianEscapedGuid", + "type": "argent::presets::argent_account::ArgentAccount::GuardianEscapedGuid", + "kind": "nested" + }, + { + "name": "EscapeCanceled", + "type": "argent::presets::argent_account::ArgentAccount::EscapeCanceled", + "kind": "nested" + }, + { + "name": "OwnerChanged", + "type": "argent::presets::argent_account::ArgentAccount::OwnerChanged", + "kind": "nested" + }, + { + "name": "OwnerChangedGuid", + "type": "argent::presets::argent_account::ArgentAccount::OwnerChangedGuid", + "kind": "nested" + }, + { + "name": "GuardianChanged", + "type": "argent::presets::argent_account::ArgentAccount::GuardianChanged", + "kind": "nested" + }, + { + "name": "GuardianChangedGuid", + "type": "argent::presets::argent_account::ArgentAccount::GuardianChangedGuid", + "kind": "nested" + }, + { + "name": "GuardianBackupChanged", + "type": "argent::presets::argent_account::ArgentAccount::GuardianBackupChanged", + "kind": "nested" + }, + { + "name": "GuardianBackupChangedGuid", + "type": "argent::presets::argent_account::ArgentAccount::GuardianBackupChangedGuid", + "kind": "nested" + }, + { + "name": "SignerLinked", + "type": "argent::presets::argent_account::ArgentAccount::SignerLinked", + "kind": "nested" + }, + { + "name": "EscapeSecurityPeriodChanged", + "type": "argent::presets::argent_account::ArgentAccount::EscapeSecurityPeriodChanged", + "kind": "nested" + } + ] + } + ] +} \ No newline at end of file diff --git a/e2e/mig/6.19.5/favicon.ico b/e2e/mig/6.19.5/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..9df08fe51999290f3b04a9580179956dc4d52e00 GIT binary patch literal 167177 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π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%0AuPZZeL7lJtlQ(od*L5J-&wudTkc2bvru|- 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 E0}s=iHUIzs literal 0 HcmV?d00001 diff --git a/e2e/mig/6.19.5/index.html b/e2e/mig/6.19.5/index.html new file mode 100644 index 0000000..cda3e4a --- /dev/null +++ b/e2e/mig/6.19.5/index.html @@ -0,0 +1 @@ +Argent X

JZ7yE?*2NcIwqU*fWacq>>(=et@4Wp%SEu}m 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ϙi2oC0777No8#2T#kq zB;5wIwc9aYMIo2eX=x^p`Ph3}A{3wOO zVF~ap6P-p82y#vweDOXZ!O8I8H1s@9ul*o0O<%0m=aW&U4CJ9?&R^~_wL;#3R%c-K$#Tl>Lvu51r3=FGo7T668txX znuM-F>6`$qom_qG34y5ZX1IwXt8`HR<9)Rbc&oq#4piWns&cNE2-Kngl$TL9F(ha} z(i7qN<*E>H>vc&l>u-TTukt2t1XSoYun6aFg8 z_scK8#6V#s=AfZvX?zeVMhD3v#Y+?5$T0T7OCUQbQ{<0-{39+1VAiFj#U&&Hnsv3| ziQKUQd~-#L;{7dxuMSvum?L}>zH9~wZ5Js5~_pj?sQuUxsJw{*yA zq(E(|H64mGl?6UdTsb_b8z#8d$wD7mjfk*<8^`M3-eDd`2Bm)IAaAkZfX&+?g#Z?* z*{^i(rI%i^!55y8?5P>HWQZ`fE=ET?W$*_*EfVxijij+=s%ovF7#mR`(Eh}pp{PzE zje@pr`+?_@3K}dKf-b@DV!BPe)nrGFcuAz$DEj+pXu~s)X6zGH4|B4d!84C$u_uDX z(!zpqAxfsZZ*+)}i>}B)51;vjA^b{QPTR-FCqMu6Q(5oXEzh4lee3pgThEBNca|%P zQD;ZLO_Ip0-SoD`Cf%edkWQerL$Fr~@S`aryxgDqw=} zMtq*1UmF^nc=6&fo`fq`UVi=c@9}^a>l}~AYDag64JzRqfr4&&XW_9D{CzuzkmJa#}5ZONBD$Rw^mpUo3_{G z?(FF6J~m{d!uF4U^kZy8d^HL|!Lz}E20=h2aygr=@Q<)9uwsJn|8tbL@wae)KgCnv zPp)8l^BzUTdXZ#ZTyd1Vkgvo=#{}uh`l&%fsrCyz&Vy1Dpc zJ4Q%#33^G6M_A9CnyraJa`7=6;Soqa!e0-Ow4(K_Y@!V(G50y-ITuDOE-KcRGSbAv z+sw?WW`VqX<)T$$qs!(RESr7d(n*bhj<{(0UZDiRMu`L}tuB&4beY3R_!L2Ea zC(K}%KGxZh({xgQ60?RxC7J-2WOjvD_oipaFq<1rU}zc`8f0+WS++|U3#AVuze#)o z#gb?^Ss&-bs>xqr;1~+e6?RK>C5_52G%_~MSMX%!5%UT%jxRTNbS8jKTN{A9F?kHn_( z?D@dzO$;DbMGI^!%V6dqlSR8DeL<*wVrx%qQw7CYK?2IZ_vOV#S=iufz3h8aVZ9JL zlwX4Yxw5)Va+J4@3D&GL&mdl56t=JpqQ)Yd&l5W59SGVsZ3d zL*BNep`7CC(N=Mp7jj>oXhpTyzkXn2%DCZhCjFMWB0jKUwG^{#aCOQ&-?ss;`+(Eg5cTUbiZs4f3HJX^_gG&&q zJKcaAVo2eK;yc~DkES2#0DsHZzV@{r{_uy)kT|i+O8dWPyR#;{uIo`!TMwnOt!i7AOp5a$Vjz&2n2`Vy zInVX`uYK=Dk`iT=qv|kuaqhYM>|xDo?X~x2)~iP#$}4Gop#S>y>*yqN)`R9!9H?Oy zKI2xEmG}pDrm-YJbMTND>V$i;kA4la7su;lTL@uXwFpvozI-(dwx<+E?`I8l@3Vk4 zGnTm$XHvV74Q?etut{MhOA-b(rVk*l)c`9UzQkg&9(> z3{rt^pyQ?NeOnpb20htq0s%~C30@lYI@%LSP@Xx`>T#of-8OJHIn$2 zJ^adk0+A+EJ}fjY_mj}9&0)r;ldesS2-w?VkbR5-C5o`{Vir$~GdpBVYA9`OZy!B+ z%uk}d5Cq`fH3WVGyxf|Z$?=k=3U{`dWnx|UL)6^GmM|TZnWfNGF5IEpV#9(9pmF@f zN#?0&!}}k6pbRqM=#u^{8+aE=?9fJM_{hdcY4NN;@GO)zI3S267y-o~1I~~^SkT$& zs@cMgP0Moyfs|(xfBNaK1#z?HUdGz;3PNJ{Ga2vQyZ?({{E|%7F4qo^8@1OnV>mnl zBgSjGH`m4V(I^3ipo{XB2-%BrD`Sq_q!zqC7^)`su z>tB5lawU91EeJp#Ko|;|J6D72yxhAd41pzVvTeeUkXyw;B5&&@e%Kq{A6nthltQg$QggB`mo=#NhNG^(Y<{=*c6`t{Fm zO8VDm0;RQ|>GZ*anxln{$QT=x!ZTPdxpQ_U&zY43{_VLr-KHEbU3`&(5*pM=Lwou- zr^vfF^z-x2w2N|5c}USW){H#EVKs<=Pis17w+c| z=dW*9Doo7R*Z{kIwZ1v%+38ze<1BOC?GVb|&tlI!XJ(oj60QTczWrN{vfiIvjIDxI zwOMBs2ID*12gGv{;TQrXa~ENyve>`}l*G0K7xh3eS30o#2Qqnde8|~HCr_MV+*>_t zQrUzJN|0ZuVKs1LECF@gAhXnU&ve1 z)A?}1gHN6$YioL9{PK(EW7$_i6Wg5u#Y`9x73fFkK_>az8985JOYL(TIO!=*Wc%+330NiSGbW*IRN{R1>3z) zmbfgTCTIaz#^9AQeMc`{y42R83c%o7vP>Bz1?J*ByP^`i{|qE(M|6^yt)cu_EXTGK zav)fn1K=qQN@SxI{N{2)A5zl3>8-;y^R(`by;Twsz%-0g6p+%Kjpj6G9KA8_y;nml z+WZz+8-h+m^YTOUD9~n1_-vS<>XrAFjyGc~1Ufi);rsh|M0^PfAW)` zu&vLXJ15lrWq( zDP&xS@gnOBMG-{_ol95E@;iKG?2hwFKbzpLdP^fmFZ<>VBBtT4+i3n(b^D8`DhHtb zn!Pbl3%)N<>j~IvMNTR*aiccG?>S%|KXTOhf=>l~H&#cc#!R(kmjeqD z1j{Ku!prVVfvy%K!R@};8(_!%*xSP|+&56{Q7|Yp9n8X9fsb%RyMPGS09{F4-R%67 z!@?^Oi%Ph1tmHB=y58B-Nw71ZOg>d9S7ESBRki@%WTANM{x#9_(Rjd5EG3|zZ*OBq;`sM(xw>J2|G zEM?u4X-#3Ht(B}p06wCQ4lFL(Nh8z9hGvtf1N*ZT1lF6PQ|bcJ^(U*`Y~1Z~ zqdWWoC?M$d#3w8OuX(V^$?S#kv>2 zkvx9-?AWp6RGW!bZ>t=%Yl^9}ff5Qt3@U7u3$?Hr%(xnYnOOIx4g~$roH@g4CxMLR z$RYW`E-c08y~Q}ds>Z&wDzcU^hqKG)=H|wy9YH3EYx~}vxnKU%KR#Jp89R6~v*i0N zAC$zSKH1b_z2GfrAbP4}PDacHKum&_#ag6JDiVH5kT@>JrB=Nh>E}#l<{s6*520I} zZevD`0ub^sr%$rTqbfaO-LoZ+xmKJ>v#@aV#EBTY6?$YQQNP$lQ1{T$L*MxJH!S~9 z#!^1>Cmxa#roDt+lc1TL@*U|L*ROwm|K3AeFZ1)ypT97)fB4Sry8~8$5)ckUo}Qq{ z$NIS;EUB?iKDhSD)vFu3ru!`hjWy1v>2pl)tfvzvne3(W^F0CJLGX(DkZ*&q}++(v6bmI!b)#RurIrgU9^o zY(35|lGGz{B7P#O)#0r;3hAK%mNi&3(5-&Yzvg__*2zGziK8cuTejghbjXJ^K?fJQ z!4x(wWIUez2{OgQV%9?fSz#_vs7CV|O{6Ix?LjemH94wgt34AV=&YgM(}Ua+BLsqW zy-T<;uQ6t_c^KzGR0i|>O2QGvm;_WR&Md4Ei(D~vIFpJI9WH3W#aKXy$0U-hOuwq% zxG>e^*l6YufzPI;+dE_ct|v6873&SCmQA@pnTt*i3$1STPB{S4`3BGB23TXG&FQa( ztkgHi%n)|WXlsK2K%pG%9TXwCvaztWWWK|3!#k%>9Rem>4F!79@@kHdlyFoNKVa)m zHKA2!v2}*eFxF=#M0NmuW%! z=cp|GkF{NO)^A>~fAitj%uaxJ+4MfO?yu3gmX(1*3SI<=M}!S1Gp2kvBfODqK&Ty) z&X+D-vawGcc0-O?p0z2;b^OF}v&3*D0p#}F-Rsw{6QgEJWSsQ+(0ITA_RGgC!!9YT zRK1K0bXXTv>P5QKXZ6``wOJAkU(Y0RtO8W*9jN&DKRw9zA-bSTW}@8-`!iK!f7Y^XD%Z*8q_~ZolJ&Cs0X1Yxdxg9MFagq9Uri0!>Ef z9jCoFmc2I}$EqF?qrIQJ+r1YxjARQO3;x3K?bph*?$CW%W4Uiu0`aR+G@<{&6dCeG zA(HPdpI>49cU$lL%hpp`KYRzPMo~ZkGNrH+Z+5OYM4P_?K+;ed4a}_o?3pkOq8gToqhV$q`nJ0=@Xzu z4)*m`*t>CGCK=LO>jW5W34|wKOLjHu-`7(oj~Rkl7wo2=hV0?}`}Zs)pw31{vy{;D z!-tQIj5yWn$noPRA3l&$XxINhGLkZ`#URt%(tJZ79i7lICe`TZ6lZhk$unvTjkR$_ z&UWNOGz5{by=t$97;UjO`m$%7t=FSwOkGk=D>=SUM3rnYpQe(Z{r%sYk-L85I!03) zlij2NFUa8oWG1jR+H{hEYvKYUKwpzlx9{8`cJK}X$P+N(&fU^s^^hnLD#ku+89=rP5(h;8bTa6I-h_6mx+Fx5JWym;Z_ zl^3sExOhRYT;#c~nl9il2&`z!gp!85rDJgWhky88VE2_XsfU2&Z*kCOaP-938r!1Ub2 z01oXN8c~T|$;s$}9orrx4n;%&K6@dCBW3u;wprJ*jj}lE7P=ZeIHvLV68g5V zFpsxjlt)C1#i?Gm?0EReusSd>GdpV`2Qo|ec5>S0{TDA>iQ{3e5$`NJ7)it} zJE5@oZPfDNr`I;k3ja!8EdT&O07*naRD+nX^`=pc_i+wnjT{(vRKuM}4s*}_ZYOPIp+I=toCslQz{#CVh zo(pGY$06RA=>^z`G2d2dxk;d3U-22Ry78B|3BH1v=h3v9d?-V&>8!l)+b-v8=QCy0)~k#vzya zgPdpq^d=5#0uS@p%!r;Op`7A_4GCbI7wsDyk*cLp^sE+v(sVBsCihijCp*IMz3TYR zp@DE;Av7b#@lx@q`6i}%r8ld@nda+lpA$bB!3_;=*0hw!|oy?e!*Y%fBoMQBr7h@D6 z1hRIZf4=fo+r0|?TBf|NWt(KO+Y>dnw(@R{wIXrSPp`Yuf9Iw5Co9yuQ79D|(t`g` z2F2iYqa!<7Jrrb(z$mkJMYS%&bx$t&b=#bAfrZF65Nb(*_O4H!2~eQTuRQ&%teQ;W@SS6#jM10 zK7|&chCCL3G7lijjx@}gh)!x?X3Wc($%dicb&wWNv7BCe?R9;&*P*4AZ@&JfN%3F& z^DiA;nHlrVYz7KuA~1{#xlq7@g6Xc46}0#L?JOeG`%aiw3;YIJJaDhRhSVC(fBJdH#dmku~m zPp`tsp}jnW_V$)a7_2DJc-h=2@bKZI7Wndt6=2+-IC1pSr3(xWkhYFZWY=^IbXZ>C zFiD|Ofmjfeqpio!7MDhLvLQWlk2Io-#UwOGlQ%_`w!`<&X_5qpMumgjZL_jS--=kD zYQvQZqeyUekZEY6j8y-kI_wD-*a~-o4@6^LWDgMx1i?Zf|0K)}nYEPHvCYa1Sw}{%_M=dgR zVA~m3N2viW6~5D}M-QLsf>6S4-{g0{`>nHQ&mKR1YIb%8FPNRPcb15$9WIaxKh7?1 zJZ>J^tW}}Q%SR3!zIAg}e#s2;c~Q*Vn@G zgnH!lo+v(>Re^SC1^4l>A<=Wqc^;kAwgM?`_9V=KJu=;7zxjxC_M3N%4xjS+7`wLX z^W45NJ`n?_1PtZX_}VTdOZ8)6!i2FnBC4lFLS6@DdY}X-@K%$kqLmt*e>6`rduViq zBPuVr_we3*ZURvM>~H_hPOPj?OK*=I&jMnTLIx%Oo?9d!L=`#q9l1!qVK17*gL>We zE_|s|4%J5=eZ*2??&JN*@hNkv0AA$1ZW2R_nh*s5f88)kAVAJVLDDOW%k;(h^A}jm zI-YQ6d2}=~Zd$UGF$yiU+poor3k%B<2<`ty^I;IVHsezVWigozu+2~Z z?z*KML;dSn3NX0Kk8mV~X~}&Drwb2E$p%y=6Lya65?h{$)6X#4C$5s&0;xXIE==x9 z56a%w>^*xmXS#25{Ylb)^oG7zUpm;wW)l9`Ja*`$?(to@Nm=mMPIcWR+p{{9OmKE- zC=Go$ZNtV&iwhLx<45ykg?T;z)S;*I&!(owj0J_;{pj->H>F{avBbs2OD`Tjc}mQa ze5d|30Yr{q86CAsL2~xkC!gKCc5{}I#h!GEgm?gkvvkL_N|uUSWU+t3Mx|>x+5)i> z7S>2lWb^dOSqU+-_V8`9{yVDQKfm3WDlj(dKeHt)RVtV5lgxDPM6B@VW*k2X36X)w z2K0%h4rTi%i()$$k+Jux8QY-Ajlb}Q0TZVk3_4xDW7~LZbAy#dsrk!)y?UBI(Aw=i zbhGz~u~VI>nskD`*_rEh6*x3K`SO*^&dOx}K6x_l6lZI2j~tyQQ+I?}l4r5OQ%0j< zJf|b)EHHb&Cdv-LK#VsD1{SUqb|xgrWVRLuwLFSmAHbUuBkObt-bpiNGA^^}lc}At zsm#lzx6gxjaTi1r8T48C91Mx^IXub~;*JM-==((~eY2!?L#ojh0?mh!f_vy?m zIfCcfV-z8g9`eNXKT(eCGb^75%}~YE0f9-b#}ad_snav?qICkM97>YHplUfE6}l&? zyAgeKKtDDr4WGpa>s*r0npDJPXgL`gWn;lFiU?Pe)j;Xe-}aJrCyGfWlSe-3x!B@$5SX{BH5xFQKu|#eUqS@U1W!X5fIj$a=ABPK zRC8;qH3U@c6)_a_7W$~of9l=T*&C53j2=zsgSWyp-HRA3farywQEb!pi`wXq+A}St ziLZV_i$rkuRc2o%VYQ-$-a|K*W7}E>jQ>?F37PI~3wWHukPgfYt? z@j+!q*_jFYfW_->C_B|+Fu;pd*S+{f0ZW3{o$TR;ng+dAN@u#o%jJt)i3`DK#AOXT z>VVA}jsvHIno!#pL(Up%#!3T7iiZU1(yBitx|bU2HqTO9MF`x~6-sM&TBqsTG!n?` zm;r)}X+drhB(U~a1~+cpu-*trt=jzH!w--Eba9cgpfhgCkdy}{82|||9}rMainkW1^FC|@Ch?Lngu9EeCwQ7rX|5XrOF4LE`oO?a2#rHtee#r&!>e)0z1>7rhq zy-FfX7;j`kN><OM6A^&GDh***Q1jk;h+s=$ z#E~pm6m~a#qm?Taf zSQ2rAY#NAY90y8_V03~(a3Unyx+j~H)iU(xj4jiHf(Wq}F$;jUDeMOPFMVn?II>Z8 z1)HVj!Y{#c`t)f}T11&1As7j_@KVycT&a0)RfLtV%D|gVGqu#qu- z@+4GQmwWK>Im8hfh?C!YmmWkK@=9q$NM($;S;JV-a85h#MIo=?}Y)G`Q%20w756G?jdg{roW^$ zHizH5ZyROeVh}DKkI!#7ygq~V zYNHeQ)f?92r@#Kh%1(|DDsz~sst-ET;DFT^3joVadiInH@YHTU(z?e7C$7Bw%8{eT zxjmzkQ<8}cUrbdX$TIAQj~?#~EdKpJ{L}o>%C3PAnsl|Mvj0Hl8cb~%4x%J=*Ev>W zhoVmtQV}1oU_60}+K7vuU~Slhg5P~5_8;pr`4}O4Cxay)81F<4#WWBD&V4)q!&I#c z3VwIB?N`;7#ZQ1F{NL(Hh&dH@xT9x}#nLNVPu=>Fzi{8;UX_KSvcv@YvcU-hmwNJ3vrjy6F`@N=I?@pN8NrcT5HU@=kKDBxX?8d1 z>%-vM!pkZo>wtr+U>i^Z4Onzl=tupj)M<}(Ayke*vptBB-8Cy%mU+NKBQYb@iGY)X zoTXkCF6RO(!)K3V)MeUf)TPe_=P16g$xz~7^@fdn=*Lv!z3#)r*aKlAs)^75gcuEE zs-ePlXjLTpv|vBMEo_2;^xd zAZBWm!IN6`!DoY@8~x1F8bG^gpXn;)Awa@yHCxpBP>J}xV$pCUQ}!gqlpWosJO$Rq zi-KC=fUhp_Xu_8gao{0+XZros?sEz9NRg0M^ zF9XYF7qo>O(o2^vspsa+n~L#2_024Q?FVP~ktG&ktKE{gCku;e2)4Aeo%O7K(rx>u zx`%);U{a7XOCGK$ZglTgv&rD2i55_7b^62`UKBMHRy};^C zmz{h24LF@TW`Cy=5OZO-9`!59%JMiQR3|a@>d{HhIOGgObm%Lp1MzA4#{p)Xj``h38 z+DotU4>8f~+%4kgt$%*Y`FECcS?mZhnmBvz92!QyOtERUzU7I|U)wh*eTYV&&&ZM5 z?P*JVHciaWgR1&h=aB%%IL@tz6!_h`dF%G=yM|MS%hu(~mxYA!;L|6GrYvTg1d?I( z&Yimp&z?v$KYHjGG_kD!AIsSJ5yTkE5**B2P!=Xt(L|_=B=2)@J@_YpOGr0Nfy0yAn( zc)GaHK-8)P$jV3hsDH%l6K{cnQnU7uJ(110?UDK3ze=rckkL@jn2|%ET*esG=^Y1 z+VkhnL8VvFBtdRytZo+bwa>2F5W*f)irM@XvSjnvyuZfNLQmwJbS6wkRI}SJuS5RMnUDuyTHK zMe!pE)`ws0zBM>_jFWNU!g(!ors6MX_D&Wk3W`~7DCLjBtV0>zAHe6ps(A_QSCn80iy$ILJfN4*Qb~ zLgvvsaR{>x;a|SguUel5!C%2E74LrD3pi-CKpEVYSEDzHM7QVuse^~})&KDhT#3-+ z-<~EZW=#?WQY22%q*%U{@5&%r(N+n?kj11T32jbm6+qN($p0rM9i>h;pH*6PilJ zLn{_A47H8gLt|W7Ms1=1+GFzBS8e|R6IsAXtQi`lh0OJNFssPoN{G!2u&LtzV@BC% zecKx#&&eUbkiSdV!ZaWN0Fbr?BGFao_z z)Ka&J1Q1FQ?%B(d+2gc%{$=MvZ2Cal``(MZdZNy55zqVf50JtEqMu;Pbg&njeDOp{ z;$z=tlAVYTP4(X8+eQ1uOnDxWBASEFMqxR+2wCPLh-u}$?eSo(yJUGU|uy*rFMDlhS_RoWuV*Nmwams zFJB07R44?4D@0O>7+uvCwdzK|j|!y2{0d6S*F%Xn_FG#W85yI#RHcR;TZ4rqa6Kp{ zwXP9jrw6qZ50z=oe|i|It9#{oW%k}koPnbDYeQCq_7^V|bo_B~rspIaaDj=>3|6eS zI)er@>Q7%o_g{S>hSo0R_e!bI6-w))XwUec^@I zUw@rFcm4X+nVA{j!WPh_OEju@S2GQD13X{6az%!T{$nu?0Fz;L4@mYp06J5>$j|DG zu&E2cT^<^*XC~-aEikvbWB%NR%}H&tkhawp^v9DQQauhvWz(e{VMI!bI{ftX7t33#kFn_Il{GS z(|x-L38aPO3LCOk77gL_sTXeExQ2H;hpE_An-0%??yz6ka+r3f2X%?5zkMKOejoC`=1Ium0KcZnC| zDR!e4-DHQv9K5J_c507d+DJ1C0FpfjK0X;kIt(VtbYb@8e-$GrNIf^@y~iCT+t7DO zxI$2ci%Kjzg*P2wm$1Gl()2ZLnL!-`G4HZpv%0RUjfk>tli`=VizaG{sr9pd?GUS; zM5^jZ{J-qF)_s@u5rkXyDmAh9c}H0!LRG!#iUPhLuoylK{lkCz{TE(%!B$Auu3f`i z{HwXSIlP8(@SQG!Ho>hb)9QKXaL`(-fQzkFLoKZNKmLLgP;HW=T1&Qfj07zg=LcJ$}2B>(Ir;Rd(@4!xivGoDk0lVmZm2= z{eIPf2$`*%XyI2rgBt?@ilL#~YCw|)b@=d+>FFuu?YZpiX9NKFx=ms88LIzuIopN( zD$qciTWl>WM@^EIvX;QXW6YAJ^{t2Vi+s)ObB><2H-}~NuuPMgDdjMRzB&`^MsW6U zF$J`-GO&|<2KSE)QX%ApggP+XcVLX$A;4>z%ud>ju(%WZh8I>=cQ%&oe@6|k4ciBD z+#Ws&vfF7ry9PUvcfvj(;#Lx4$$m*nI;mayn$tpP<0@+O&Yd~-)9YV*1H;mr8A(=` zN+8^E@|T@kxL9KUXQ!t(RyQn}11r%~CQepaJ90CIt$^^pxjPT{jUN1`U%b7(VQ921 zp=E2A;pO=y0aKP8Sv)d6OkD}iAlP_7vCdF_{o&Z(&?7xU1;V=jvUZ?&n(o1GmHZt= zhV(l5JjG%$sLEtx)L|8N7smu)P~%t~iFY+!*?-TQe6G|I{BO@&h21jEV)o5oI?rm! zenbWHs>6Tk>Hb=UeCZmB`Q9z&Au@3cE!*CTo27$Uw#L{cWOjTN1s^*&Nk+(uaW5s4 zALpO|R+2L8W}M=RF7`k(MSPLEw00aG3)o7QdYcs0 zLw>><51J3b?M|2bZ3|0VafikI?RJ~ZO=N3r_Dzf&&iq4a$)yAEuHRBaNj6somub2f zW6Vc~gO$wm@Og@knpL1oD$w!NRIYs9&9^4=AQwE*Ktl7qGQQ5ZYf>3@_*^n`~{hZc;aVK$HH-LpkLm`0AKRr+u8`o8@WoHFQInHCn z(R|fcqZaLwg#!oZ+roFmPTx!T@{0jzR>`I?d@aj6mZh3BN4lkqzE)gZM41r*j;d`1 z-20s);estHjk+aGJn)tp(tbW&5^aSuw1~4Z2si`KX6u7gfexVGN6nsdiWn1m{_@f>vw3#>GlE0S{HK#nX>Epwz+M9F2;=Rw`D z6oEHlmQBp?=FH4TpL}d|P7j;3k3sPY#lT+4UfL2^jbeLOk}(uI;j!XFZ71xc(CE2% zr|hrd0c?-}p+*bx#G?LWz8ixO@&1)$6bMwdqp@f=5`IU%%2Y+sPUx7`Kd1!iOdzw+XXHf<1_p)BnhzCN%i!!<`RI-p>B+J^h9>si|k zAdD(5kb4RYf4adLV`I;^b|sowr?7@)Bq*ncxpWZrG8X@$hxRl-)KWQg)k7i%^&A;B zlpzvuz>!f5LO>aGIF?eAPeDaOSrJ`0t@zWc9AauE6CEBxlXf$sz2DrCX-%=jjS;(1 z+x>ngYeJfx8_~)7v|7>u!}gh$1vt=WHJ)%fGB(>nn^NFY4xZV+-#I%r_gz|gWjF+04f3-5gn6*lp+nOuX*HhYHDrIuC9mDq2mpIZ6XN7RO9SQTvi_5r8?>Uajb;nJ^Uiy}{_NV%kNn(NR1ScT z9^C)+udiW$Q1TU-Svru~$hDDS_LhhD?m6aScY1vK#L*L^xhZT8k7IraF6NPX1lJY& z?6a#zN5Y!J#wLjC$gwPX`{gfw!Hi>d@drNo=p%7u)`s2VMHaw{L6M+{gLP}^WJ?eq z%;8sZt|%mXx@Q@8p`g#+lTyQ$R~F!|RKu_)E0s2WdZLVBra)*w-^SD&SdfQui?tasdPyc2l~h z$DPi>7(t&HUpx)(q-5e>0gLsT@>oiI#ZYd)>Ip_hr7GlaDNlw-1om73ohNhP=z|YF zW-ng4^dgH&mdLTg$1k0~h@56-XRcno`q^in()!kSK)2eSEjod51#{sA7QE(PICp_5 zYnct>d3bbi>d<72)a4wiC3g{<@Px@LOk{sb+wZ-~BuHv1F_ifF+jW1~YjFOt+2Ds#}})AI_`6i@FB_So_wknQ~yVvKccX zNaXZ%aUpqYIkT(|Z;6`j&+$JtFLJ^RCjc|mDaE=Wim3yF5sORfBaBofWO zyxCS5JBeIc0Ki-$30XTiOJU7{l}YguiGJtpUx|Il(g6QA-hA`;$rJo!z&9wXJRLj9 z&Ziug*VZSePWc(UHWLOrOO+_U#ZbFLr6;Xh38{COb z8Ky8m+x0usace?Xn1xwLx|%D19g&fYayeATQpwF+IsV7st(DW>2Erf_DV%r35cHX6{P zZU$0Xd0xKVnb`=z5sJD>*mMeb(I^y&SshMSh*hX&W^P8uC4TZ~-n7hNXCbdFt}Z;j zw)~j%a|oT4)e};tW!$Y!(cViqK49?RMQNj_H5G0jOPTd7d~ z$YXtJ({XxAu=|f3IwIdGuH!~>3+?8KbP;olSXJMA5UV+vOPw`?2}vDENa&IR0e)XU zZgQi3a;$>L0gfN=1Nmc2pd~S~fEFw_iQQ|WdlS38$xOzmVbc}ur&b;Ukm&wxdki`U zO#oyEVjIoiev}tuqLIbk2HdwU>#DUyDU+_W#u#KFDPwjM>kJZ@>@}&^t1V_*%<=5h z=BE}T^sCE5zqWgys_7{TJ)spm^aNx3K`X$ zkr!Ea&3bU}2D06>tEt28x6Z%yE?Aer7$p<~)NdJNFxPtIGaJTv?pHnORifK|Yu2X% zS_C1Vj~~xtu$0eHQN@38Qg)n2%O-Ap&URr+*TvN1HV{e%#UsT@S>Cy^C5=cWM21yr zI)&3nC^gd#jo-k}E1=>35^d`?7KA(DL)}n!coL(Qo|fvv8>CdYVsLcv;)N$qZJM4l zO{p|OcIMWt>R7PFL1M^!(g=f6wLi9vDO+di;s!ST=j@PNfRCoqw zh&4+3t^>E-fl*7<>|4ObDAMY|Q(N9pN#59lyIz6cabutjCILp##_uTXCz#XW`ajYN z*kM155xX9;G61WGK}yT8s~Wu`i^eU5tp-yfL=U4u%CD^nt>s`h1D#MJFNj6Ll>#Wy zXgMl=m7r#Dpv;sJ_PT%X-i;eKg0)gPXU?2CdFqUsSv>dd-&a4tR1c8*!>==X%b_;1}911*tntw&*Ykfnq)J3~R&@t#$cux;xzE zcRLAYkVA=I^Mi%a<>A0CMkM!aV%XI{JzXAl!M*y87AG ztJVyNUt$?cECAf;D%w?#{_7kn1tM_cU7BIz!i(K{2x}1J7%8Thh%&?>>4y&=upybC z(QODINlmqWdeP}lMx1%1sr~l!Bs$C?#rq0)2H4Mzld(3eX$$P*n_4*{)5 zJ;9A={hF(+r}mtku09Z~DV7|WqCWq5XzcFNT4GRwrWy)XeHAuoQk31_1`O*8)+LcTsn#e3c3TdjxB<;T@gxMDUE%U z@iit%yYxpZS;uB#F+$8+%uxO3(>A!ZCKUIgpb zCvU#_CX@H(&6`lkC9n_DXP>|B&paX?cf1Vg7O9-y4 z8&NG`NIVwkqUpjsTib-TY1O6G99>Tc>lphuSkC?=N}!L}Z930D|0)F~*gK0u` zv0>kQ{Z$*cjSk1eTxI;w|Lhx5HhXnCK+&!|fGYI4gjf!l!#XrAPRKA~^C(d#_toRukI&$=IX}|z^WYl(rOSB4apOvCQMjF-BaLiauNORYA zy^9!MdBAXJbJWMc{=Q+yjSX@F$UZ@)tmQ6Q1cgl~Y1-=5viQ3awQIQJt1OT~IsW1a zbgvZX7VbXtukZq6jf`R0D_qeAkHenvLBD+EIeF_BC7s@>qyx>Z6%n3!vii)ynbuA- zNX*PsZU%tRWg|i}o*}BR9w&`` zEl|uyLY537Caf>9+;X_hfKz|1awegi-{&Zc-9Lk9QB|t?i8-4`S38kE(5pylx+~9e6-{`(qi+I^ZtIbjlJ#p3gwj=^6|dly_I$|MA^5E1qd`ifK^ zV#|10NgeC;t=>(ezt7d)0+2M(?Jg zC62oLgmq_*&_&x7I_+KmuVhwJP%=Smgkqd$YdmI47 z7W1ES?g}i`f}vSJLs(wUPUMUaQ7b83=Z~KI5C8k0G4T~(yR$sbo;`Q`)G^}YlTSW@ z3&4z7hDmm^tb$rveELM?lKoMRfX0Id4uAszDqrTw8dlOP)ZWH|sE`#b`^xyIjr^p- z6V9nRb+QOBG!}m>=Y;2&Sc_hh$G>g!Nl|{sua4N+hAw1Y%+Ahw_sEgMq}u&^_Yt9Y zk6*kfC8?R?_6J&7W`#I5Yx?e;yC~QWjtDi0?{(=7rU@7m)yqnEk3FNRJ;PJ@3dv1P zO(^3hH8`6&WlGdQZ-iFa{fMOTow`taa{#bkF}~ewaxAORlsqL_6HfBgRZp;tPfFC+ zTT*{+-P8<-X##4u_GQ-v_Xr-lVMg81AUDYk2LO4q^=D_3JtZs(Yl>-7ou+-7rN#NC zgW$!$$HyjZu2Kd;7SXa%+{eNk$;rZR3u9^sGh|4+PjtBLk@rp!c(R_|DW;MpsJrn8sHm2 zH3y-jvliXxCD0>v6hq>rr!JBqTXfT?ezwL&u1r|Xe{GbCHL(nuib;X8=aPp8#ZNPClI@Oa=JK=*(4+0~!^^gmlhob6&O zoJuB;8*TzriC+mL+POqw?>v^IrkpwhVchbf!3yE7~k{( zbU80nUBZmp8z)bnwpPKe1D>0kK(w)F_erK1l#ILh>@iC>Jq_upw3Ev|o{|J`dQzMB$26d=X$I9o=ydR`1zO?Yv)>7kUtIh3X4X(r~M_fDcfZbe&{^EA(3h^;xLg0oIA?vONkTDef z##3^`$zuj1ipYe$GP7$ODv$kJH#1??>2Ln&iMEU)(DN%dG`UO zas-av5m*0u16;Y63B%-TsT@+*trrZksi@XEDF+%jl7y;Wb|8<2I|a;`B&^pwjIxIc zmns3$%J_}d?!J}xSp?Df<|o}~UlN?A&606}Y(hG@NDG41V3w28svb|2_bWr#4QTqL z{)rE@eWCJ5QnbA{Xxf^}+JMeoWx)6D-KYV6^dGX@*S){G7w@TlrEfai`!x?EoEycX z2{G>^yn-H?pdZ!q3cnS7z)2uiHh2F86(F|EKW}s@W z78UtP)~6k&CPfAIb9 zzx49UmRElI>1X=CZ=VD^yR~FnQrgH9%3)#QskbOvrVp?XyV?~sanGb!UELrS$W1w~ zq_ASzlAGakVIhYo5$?(tb`Y9>kz}TN>LU7_aGUkDxWX{I&pY{f?dx8&_6q!t8-hcG zyATpF{X0swpBk4o45FykTqMGtl$%x(KuGXC^t@v=;i*$6Xj&jen1FNU%$Xnl@CUEH z@-<_ZI{Xj+@DE^e{=)g=r;ZC-QqpV=97PH;?&&Jl0}u&6dl7_nrra&@yQ5YI&duJ@ zv`ldjQn)u3E~NT>rQqz~0TB^}qiAY->$xE5ufDVrH?nkgt2f)9Z{IkU`A& zwz0P3eetPP9! zEoGpRqG;*~v{012DO$Q?M5uW?TrBKI*f?0b2S&WnyEm}RaewhblX`CK8jY}QQ|Ga| zNSDZUH@Vlb{1+jL0EkDm=^3)nnSeajc8>?6t9tD;jH_Kfi-rt`w1lI!pJT6B??xYb z{nVW2X+1Nj&&R?h%JYz1vR3p`g{^zNdc2D;7^(`;l4#3d$M$Cz1Ooz8zH)vt&m%*t zF35sG$fXZp*1d7T#rq$;|ItSuy>RyQH^2E!`TB~z^X@wq;4g}qOu&%eB#7O>^wU&>-0EqZK4Br zE8Ku@uAnzYM5P`;U~S7$!A*Wu3=t{=Q#II1U=Tlo-&!RCBSLSMp(8Fp^I@d4N&~y~ z=tPiC8l4l1b>_;IS6;k)zpk>3{g} zly$+pg{O~`a4(~Xna(>Bx1Jmy88~)`&$PTWzwmTGj*zSG)C_`!+EvE#>&PL2;xk00QDJ%04SK9ck&PG4SpVnH@{B{Aw)T&z|` zt6$g=HmBEe*PJL5&G#N><^F%%1**NufI`^2yuLNg+=*jHzVVGWPoFu-v|n02D~D;q ziC=@e>+yg1kp0{k?8xp->>Gjg6-EOLO(hX| z2%X;b5+iY~zlczF>})T49mTgQCWZGF=#g>zs1 zS3?hiN~VMIf(q1{Xn$yqL5}L%p8`QZ{b?=JNJuGz4cL6r)e<5z(t?b~YS1@n3Bw0$ z`xpX7dLVD?EPexHcKbwA&`?h4qSZ|2K7I1w z;UltAI0HzXMa?8L=aFG0tSP-b2dFKQ$lIHup+}D$J#qBtnN!Ts;|HfEM~4rbd*OvQ z-+29%mtQ(GeF&lrpP4QMrNz@HPsxx2`YSKJ^vcVxNSS!@_-PTkQ04Zq<0q_u2Lw-O zEOXz)ZkV~w3AVkDH2{+61pbd7JucX?w77iq*l_^T1fHClnsoj)XXChs7O*;r2}LIA zNuz~T;2+0@k#fjiVyMs!0&aSjuO7Awu=TlMNPeUS$W&4pz<@RW3Q6J~T>J=(Ra<;4 zPzP9ry=e4q6!Qe7E2Co+0Dnt56DpGSLrNHCS_`^^GWAD36xNm3P5tqf$y{@fK)t;5 zO!~nee)l^-FU9bU*Iz$$aQeOX-!-rO@y8#|&dxX$NSI9k@}J*&i`Yaj_aBJJ-(6W+ zzH|G|gM0Vy-oDL{#Yw0hp_Ngav!56@G8xz$9@1@L63DMVQY6c!s;dTtI}`ve-84XM z20LDg0tzAT^2*l)=V*N+$|9D`uQyh(q3#TPBePPi{(n!2dU@0>|lJfh{sIF&Vw? z^n*lCx2bZAGh!pFMXHQoWQ4Z$YTF92XrWu9WuoBMp$8A|-=3R&wrG*@xCjHR<24dO za_YbNqwmWfo|&109UMWP;#NbRszqtK5^`dz1%J`u@f>2i>lYVAR6_e9RBu6Ey9byb$u#lg3uf%2%h>L!1~5^s}x> zMkolKg_!Rab`H3ff9b#k}Z8{K8lLQYXCY zpH8FjXA2IykhQss(qy$geE5j=x%v4mUV%1+{|O~QEfu}_<{N+ZXMcvYzW2TFojZ4y z1AP40F{yN)-~61n%bvC#nENV+lOYIfhJX`MNT3nXVy(`zPe1(>J%jCNyvkv71qURi zh~JcxSrR=|rfHWO9L>7`D5nlU83Qzg(%;9#RKMYSXq0eD>Te|8k%Xo8Ix~P8il1Rwh>)hUR`=dYnj%Oo|A|+X`fB@ z65ATFo$hYmk)y{v#2{n~5SgKt$0SA?>ag=tV(a$fw_vBvV^#qY-Px65r$LJ?DErr6 ze?zd9@YK)0|NFnYd*}B0TFyqea^>Y0U%cYRh#6p*R~yorq*4LJ?fVZu{Nyt`7dR?M zHxN(uK_?9oHJ}d#N@as861t| z9magp49U@)>mtOas}bPaj=acBR945)uq^ms&G2rv9UcQnqEA0MaB$K`YrC)E{c8U=33$lK@do8Z4vAFx@wS!mx6Ksqs$}AOxeA$A7>cv`x#W$RAK zBjnz`F+@{ewQV5LN0`Chv3nv(2H?CuY#<0H)TeMM82keAB2S6C3kP(om&f8c2^={3 z$8+V~_X>RJ#;?66?H;^5!QsAoHBzY-5_qWfK!MZkeCENNXqyscKKi!@#E7Bpg{#_& z1_Fh^5|o(NYvyVF%9T{2Ep?5N>Y=aQ zX2Yw%kgS`P&RJb*fORWtHNUXH?q8Dtq(EE0p3KKqH|L7JmQ*t}byDERY=E(#7UX;E zkRWt+7ty-uY{{=e@&>!Hx@kF=#aMH5b9zoW(Kl2zXi;gRWn3}_Fzd~b=>YIl1FBU>|R0NI(g^bUC#}Vr&p)m#unGBux|G%>df#p(W(t& z)P1)|ZFSrIQpSBMQHu2KKJLWKdSCy=n?h5Zrz%-(g73cC0~oI+HtAvIfVEVOAT5jE zm2b{y*d!-q<}5IsF>57_Yg$A9n#fABt&|GjtZ;(GtV-A9ieV3C=JGvNHAAN}ak zrAu>jx8Hf^9qrR>4n131lG{d?C#Lt#5zpyWjcln_vIB{_BhIS-%@UOw* z76g{A=GU@sqXH+P)ue6one`H&ihVg6BpqIGr*;oe zEzE~mvwY`xSg$@=WwqXgu{ zkwF+?7fPy*kA%PiMdTYZnoS9bm7~0m-$j(Ugo=Ga6N1qY1i3US-a-0NL^f+8mr%}M z|Mg$1M1^7|$_wXTJbzxz0_yx^=|lhS-~F$;^oeaK@8v{xtL^OwL@uz{JB|k*bX#`GQjud_*(SUiAPNmIOt!NH zh37`W@1lv09zD$CyMO<#QHV{TW4T^0zxfYTB3MgO5`Hv}xOLp}7dXY>ssf~kEWMX9#7yAdm3FR6jhkW*w8it^UT zPVn$X#-3(Q8x!GK^KTZ#Jx?VtZp%}WGPJn-U}&E-*{O+<>8UYW5m_g1?|kPR*mbpU zn^V;KR^9A;)XtBwkN;<1Sw3sUKdMNSw2lX5?1sQ{)JPoW-o;hcSGcq5L@i_| zo?{MzN+RX32sVPe-9P$*USbE5(X?`_hr}y3=+*k)cS9aRLAz>n9e@~e8?2uo>9hT&DO)`=9n)P4e8{nw(USqAi!}iRK#{mdV*{rGE>x$7}K0OZvvo@Cto*OTcjQZ`3 zuNt{xd;4ZfI3-(opJ@w@KAWoEd+!xBc@hJtqLBih zy;lTVn^&MgfXVJ+6?LOm%d|^g8=1}>^NOf4JBf^U4{lasNg2>0We)PaI>}9ql0<2` zh7#U!W2SX|g@=Fg_zCrRlB?3GsjHV?dg<)BbM&8nE}J111bVu_8$sWYq;l#`jozS^6(*rfyimc8#g|;&4trXSq2F=+JrHSt+V9UJ=H}3;>=U0Puty+ z%>+w46P6;SC`fEOqd)k@x0Jd5`3>910EZ}-VnnUEdRRbdIwRk)H{PO%M)c9;Aj1w< z?yFD_Rw3bftx1PgmA>`r{C#eK9fV=08cIOUTOf+Uk(TOlexyqLay2*89|46#y$AHH zfABQto9M%S3V!7Hu_Ko*U6`AjxqjoS8Gs-E_{ZQwL;TJE_c!qT;+0FLQ|aSh{Nfkt zKXc{`;~`4X-q>qv@4xdt2SA*DFB54CD1hbm+?*w?G$QX#u1a{PvV#<8sUi&&>|+&< z?j{Qb_81fF8$z0cF+MpuFr3K&6mtH;h0B*OzjWoLH{W~%0Ax7)>Q}#FWbh~i5k)Sw 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