From 7f263b2156bcebbe75dacab37557c74209178134 Mon Sep 17 00:00:00 2001 From: pgherveou Date: Tue, 21 Oct 2025 09:53:42 +0200 Subject: [PATCH 1/5] remove build artifacts from git --- .github/workflows/lint.yml | 8 ------ .gitignore | 5 ++++ deno.json | 20 +++++++-------- deno.lock | 49 ++++++++++++++++++++----------------- pvm/PiggyBank.polkavm | Bin 5194 -> 0 bytes pvm/Storage.polkavm | Bin 3011 -> 0 bytes revive_chain.metadata | Bin 688911 -> 0 bytes src/build-contracts.ts | 26 +++++++++++++++++--- 8 files changed, 63 insertions(+), 45 deletions(-) delete mode 100644 pvm/PiggyBank.polkavm delete mode 100644 pvm/Storage.polkavm delete mode 100644 revive_chain.metadata diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index a58a8da..a19d411 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -37,11 +37,3 @@ jobs: echo "Building fixture contracts" deno task build - - echo "Verifying no new files were created (bytecode should be committed)" - if [ -n "$(git status --porcelain)" ]; then - echo "Error: Build created new or modified files. All bytecode should be committed." - git status - exit 1 - fi - echo "Success: All contract bytecode is up to date" diff --git a/.gitignore b/.gitignore index 529be5b..acb0326 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,10 @@ yarn-error.log* pnpm-debug.log* lerna-debug.log* +abi/* +pvm/* +evm/* + node_modules dist dist-ssr @@ -24,3 +28,4 @@ src/samples *.njsproj *.sln *.sw? + diff --git a/deno.json b/deno.json index 46c0e3d..e44f710 100644 --- a/deno.json +++ b/deno.json @@ -10,8 +10,8 @@ }, "tasks": { "build": "deno run -P src/build-contracts.ts && deno fmt", - "test:evm": "USE_REVIVE=evm START_REVIVE_DEV_NODE=true START_ETH_RPC=true deno test -P", - "test:pvm": "USE_REVIVE=pvm START_REVIVE_DEV_NODE=true START_ETH_RPC=true deno test -P", + "test:evm": "deno task build && USE_REVIVE=evm START_REVIVE_DEV_NODE=true START_ETH_RPC=true deno test -P", + "test:pvm": "deno task build && USE_REVIVE=pvm START_REVIVE_DEV_NODE=true START_ETH_RPC=true deno test -P", "test:geth": "START_GETH=true deno test -P", "lint": "deno fmt --check && deno lint" }, @@ -19,14 +19,14 @@ "include": ["src/all-tests.ts"] }, "imports": { - "viem": "npm:viem@^2.38.0", - "viem/": "npm:/viem@^2.38.0/", - "solc": "npm:solc@^0.8.28", - "@parity/resolc": "npm:@parity/resolc@^0.2.0", - "@std/assert": "jsr:@std/assert@^1", - "@std/expect": "jsr:@std/expect@^1", - "@std/testing": "jsr:@std/testing@^1", - "@std/path": "jsr:@std/path@^1" + "viem": "npm:viem@^2.38.3", + "viem/": "npm:/viem@^2.38.3/", + "solc": "npm:solc@^0.8.30", + "@parity/resolc": "npm:@parity/resolc@^0.4.1", + "@std/assert": "jsr:@std/assert@^1.0.15", + "@std/expect": "jsr:@std/expect@^1.0.17", + "@std/testing": "jsr:@std/testing@^1.0.16", + "@std/path": "jsr:@std/path@^1.1.2" }, "compilerOptions": { "strict": true diff --git a/deno.lock b/deno.lock index 089d735..3cdc40f 100644 --- a/deno.lock +++ b/deno.lock @@ -1,21 +1,20 @@ { "version": "5", "specifiers": { - "jsr:@std/assert@1": "1.0.15", "jsr:@std/assert@^1.0.14": "1.0.15", "jsr:@std/assert@^1.0.15": "1.0.15", - "jsr:@std/expect@1": "1.0.17", + "jsr:@std/data-structures@^1.0.9": "1.0.9", + "jsr:@std/expect@^1.0.17": "1.0.17", "jsr:@std/fs@^1.0.19": "1.0.19", "jsr:@std/internal@^1.0.10": "1.0.12", "jsr:@std/internal@^1.0.12": "1.0.12", - "jsr:@std/path@1": "1.1.2", "jsr:@std/path@^1.1.1": "1.1.2", "jsr:@std/path@^1.1.2": "1.1.2", - "jsr:@std/testing@1": "1.0.16", - "npm:@parity/resolc@0.2": "0.2.0", + "jsr:@std/testing@^1.0.16": "1.0.16", + "npm:@parity/resolc@~0.4.1": "0.4.1", "npm:@types/node@*": "24.2.0", - "npm:solc@~0.8.28": "0.8.30", - "npm:viem@^2.38.0": "2.38.0_ws@8.18.3" + "npm:solc@~0.8.30": "0.8.30", + "npm:viem@^2.38.3": "2.38.3_ws@8.18.3" }, "jsr": { "@std/assert@1.0.15": { @@ -24,6 +23,9 @@ "jsr:@std/internal@^1.0.12" ] }, + "@std/data-structures@1.0.9": { + "integrity": "033d6e17e64bf1f84a614e647c1b015fa2576ae3312305821e1a4cb20674bb4d" + }, "@std/expect@1.0.17": { "integrity": "316b47dd65c33e3151344eb3267bf42efba17d1415425f07ed96185d67fc04d9", "dependencies": [ @@ -50,6 +52,7 @@ "integrity": "a917ffdeb5924c9be436dc78bc32e511760e14d3a96e49c607fc5ecca86d0092", "dependencies": [ "jsr:@std/assert@^1.0.15", + "jsr:@std/data-structures", "jsr:@std/fs", "jsr:@std/internal@^1.0.12", "jsr:@std/path@^1.1.2" @@ -72,10 +75,10 @@ "@noble/hashes@1.8.0": { "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==" }, - "@parity/resolc@0.2.0": { - "integrity": "sha512-5IGnWNzLNj/5unM61aIFKUXbvveqMmhiz/tPX0W3w434flDDOwfU5ER8hls1F9o9I79l0N00D83ZTkcWjyJhUQ==", + "@parity/resolc@0.4.1": { + "integrity": "sha512-GdeJnCVlnRrrHjQk0vr+8mmkiJ2LiLwe7CEQBSKslHqK3t7dhjJORR1kfxoksTM4LSyftHUYmPszeIY0r1pv3w==", "dependencies": [ - "@types/node@22.18.10", + "@types/node@22.18.11", "commander@13.1.0", "package-json", "resolve-pkg", @@ -118,8 +121,8 @@ "@scure/base" ] }, - "@types/node@22.18.10": { - "integrity": "sha512-anNG/V/Efn/YZY4pRzbACnKxNKoBng2VTFydVu8RRs5hQjikP8CQfaeAV59VFSCzKNp90mXiVXW2QzV56rwMrg==", + "@types/node@22.18.11": { + "integrity": "sha512-Gd33J2XIrXurb+eT2ktze3rJAfAp9ZNjlBdh4SVgyrKEOADwCbdUDaK7QgJno8Ue4kcajscsKqu6n8OBG3hhCQ==", "dependencies": [ "undici-types@6.21.0" ] @@ -173,8 +176,8 @@ "js-sha3@0.8.0": { "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" }, - "ky@1.11.0": { - "integrity": "sha512-NEyo0ICpS0cqSuyoJFMCnHOZJILqXsKhIZlHJGDYaH8OB5IFrGzuBpEwyoMZG6gUKMPrazH30Ax5XKaujvD8ag==" + "ky@1.12.0": { + "integrity": "sha512-YRLmSUHCwOJRBMArtqMRLOmO7fewn3yOoui6aB8ERkRVXupa0UiaQaKbIXteMt4jUElhbdqTMsLFHs8APxxUoQ==" }, "memorystream@0.3.1": { "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==" @@ -277,8 +280,8 @@ "undici-types@7.10.0": { "integrity": "sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==" }, - "viem@2.38.0_ws@8.18.3": { - "integrity": "sha512-YU5TG8dgBNeYPrCMww0u9/JVeq2ZCk9fzk6QybrPkBooFysamHXL1zC3ua10aLPt9iWoA/gSVf1D9w7nc5B1aA==", + "viem@2.38.3_ws@8.18.3": { + "integrity": "sha512-By2TutLv07iNHHtWqHHzjGipevYsfGqT7KQbGEmqLco1qTJxKnvBbSviqiu6/v/9REV6Q/FpmIxf2Z7/l5AbcQ==", "dependencies": [ "@noble/curves", "@noble/hashes", @@ -296,13 +299,13 @@ }, "workspace": { "dependencies": [ - "jsr:@std/assert@1", - "jsr:@std/expect@1", - "jsr:@std/path@1", - "jsr:@std/testing@1", - "npm:@parity/resolc@0.2", - "npm:solc@~0.8.28", - "npm:viem@^2.38.0" + "jsr:@std/assert@^1.0.15", + "jsr:@std/expect@^1.0.17", + "jsr:@std/path@^1.1.2", + "jsr:@std/testing@^1.0.16", + "npm:@parity/resolc@~0.4.1", + "npm:solc@~0.8.30", + "npm:viem@^2.38.3" ] } } diff --git a/pvm/PiggyBank.polkavm b/pvm/PiggyBank.polkavm deleted file mode 100644 index f501efae336881f604c805bbd8d10b9d412ac117..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5194 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 OD0>eCWUzHlis(OGq`Aug diff --git a/revive_chain.metadata b/revive_chain.metadata deleted file mode 100644 index 5b4145556c223e924fd6aa36b397f4bcdb45e628..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 688911 zcmeFa4`^i9eJ_5F_G)+5mTfta+i`#L>vbc)%ogp9){*n%jl6HQD{Z7#?XJAi`p@&4 znbFLZG~M~5%$?blf(tGr;DQ4wq~L-JEu_$b3n`?KLJAF};6e&1q>w@iEu@e_3Mr(} zLJPmo=X=h%_s-lINxNRXH1C<0S8MOwd%oZEJ>T;^-~Xo(cFK=^^Kmsc8SNG;t#+8N zwD)&At?7kIrPXbAR;r(TRw++;+JCJ(_i6u=&%VxosuR9aDu@54Mo*}*+{{+H+z5-& ze$)vY@wd&bR&L^2t62&4xO=!*?v(X}n$QzX{xGi13rbH_TFt222;0%P_HTq+mkAz^ zciXKywQB$4>8QK4Rjbs(W~cZ4@hSjJ=rlN`#)0Ojni!kkE!XQ|r?^?JmjOJQ=$J;P z_z$J>z~Ype9D+s9tDeg1@$R{2=ad4WN0piyo3$kF?(VkQ9lu(OcFUd0&c(H`y=ecw zTrWqF=WXbM8q@h^tKBHq3)PLsP11QCn)>skK|p2H5=OE|x2- za?34a|6vc}&sEHNO|A9qzok2P|3--IT+Mk)dIKCW3yzrB-6==m@8$Hw8vg(hLcX}6 zy(Ojdoz`xx5_d+Hl8F(dOR^Y+7dJB&CVPkk?W+dRs=J*K7>!$zypE?2Og z-`8(i46E*8=8H$vB!zmVR`=A8^?%s+D=mm*%=}K+_rbJ3;Ek0gu!rbAcR@XhwG1me z&03{gzuam-&~(DkQ$P8DBR_jVJ*KAIYJjc&O@F12_z}q6E^mW(`cS@rlV&wW>T1~7 z1b^(*c0Dz!W3(FamTj+vb@aOnpT88||b}p3?gBcDjavacuOj%mpi*V+VWju9N$158dCNJ*9KWBja0??{LT8Q|1F`+AT6M2~VU=rJ@ z1r3Gb?p2-aC-W@x`cn#8Po)K6f%n5?{I-3V`QX1P98Xb4Hg_W#|BiW3zoGT6T`S15z5UFqA5*@_!Kela_S?zWBJ}Vu^T8Aj1S*a-vcm5rA8gu(nGc>( z;~TYIy!`tKTXygu^WuM3dD$j-^$)fFetM7ezZ`F5*+KX?p%uibJ=}r_>Z|w6Gn* zi15_ek@x_Bkzk%?!2J)EzY#Xd?c1LE%Tw{PwdGOfPl0?|b}{`D#SyKY+XkHtIkYXow{nS1~Bp;-5~%=l%UDIG?P93(aF{h?paGVMe^*_}`Gveh~ z%kz}Z#mfQJ1>m40577ZHz^{zt|1C`0(kR{*onR!~9T$knCo6`(-t@*1F@VGdcY=V-IaY zHQ6EOgBxK2hznx3bteOJQBBg4=tcl{HW#nA*bR7?d4Eay>*X!*TooUj%f*};;bF0X zr*0KG1q=G*(6o> zW05=z9?FbxL(Rx0xe?wix2vGsZzarX@NJu4GGDH%S@|-$0#DcHxJtjB(@$y3r1EWq zBUygy`#9eE{cpMb4;yVm<*&lSxUuJ{-^s-)FxIyWYq)Q`3+h#+UK#6gCFTtx6XHpL zXG>}SB3)`VxFjm;-3m1R$kVgV8CI;p<#4)x9ztU>#!V?%) z{m6{6)ved}gZX&yE9F`}tmgDwJa*V_x7s^;HXfY+R!0G@y|o_TTQYVqeHmNSxphXo zwbJ^;mc znEjO+1WxtPK|JpjAekNk1MFe|m?e~5Bt{-CGPq*<;p=hulXhnHB(Pe>Uux9bz25X& z&9jxAa;*u+AqVhx%DcPp>s5oro4Zh2s^LPnvjb!7a~vA(-)dOw8%NK=HmTe$S`Uh^ z$2W0ssgsy*6C{#BWU}RWq~OgP;jhA<5LQ>3cgpozH34Fw4udr@c!5uOk841ynbG_N zQV#-c3)F{}P!Ii1dmsDM@3ef(xxVk$I)S$<+~{w$+CDsfzVVt_A4hPj*M&ETgW=LO zZrOr%URga+q06_FFr~PFu}k2)!oCf|svd_#g!8#H%z+&9v;A}|e@z_6aMw*=PrSx( z%uQW&E@L$U7v-=44M3e6do=`HmAlr$w`wPs^6$nlm&_iTH%?HzJ#)F-Y_>Y9t=8@C zE@56OSFg8gaLEE@9w!~lS5MXTwE5F~e?l!nJ&@o5d9~IA?GdDyzSe@BX@Upvpx*&g<@lL72Lc7-4ft;#UJk`4WX88_8L3y(tsxdW3h4)&k1D&sR7q348 z%M=Q{r{2(0{KJg+s8aPbDSHS3FZ~2urQu#q=el!r@RGjE`fZ8bTwQpjc=h_?&DEvi z(v2I}ZxolVUB14!v{+nU`QJ+j>+Gh-P18dcE?((2t5F(XEERk-`;Nd^s+mh65WfoQ zH@Xe1mR-urB8SuoHFL9hyV<(il=BA5lfNQi6RZpf5t*}Y*SJHqkG5E9 z8TH&nE1yIkj1I zu!ox!erqcZnuQVmtojf%u_E9b1;9t}A>8A;TeWu7 z@p)8Jk~=NH--c4xoc7Dn@?E$M@Lv(;vd@A!0R&&PQ7x4A-X8?oEpgSr^zTB{02kj3 zQtBP#W&9{qiqwerwS$M->~?U-MrNQWm}O`z!RCbblwR-=%Gt&N1p~JsfN?yR5kmoO z`v}B=5=?t>EO2C_A$h|H@A2IHK;R5LW}LnS9R|8y9uZhXJU*|naZLpDhCG1I@ydb^ zziwR=0=Hh&HdeNl>QQ(V=YrK3p+Hpm&w;P6nb)siq|I{W_GOxDRZkaqt`r5O43C}i zKEHtzean6_a9HmRzETn$pyY?mZiDphz~O9FfX{m{8922Z!gX&UY`3Fxx$AJ2yamCa z#=rxf+EElRc!22N+wqRE!LgnlBf9eVtZ*{~ZfzTSS5A-J-N9kpt31ZrXg;M=auWbb zXCYPyC>>NLXYwb-6r%H!SYN1IR^0N zbVzo2cHlv?8S#F205pc_sg%_^;O%Z3-m6YL!Ii}T0(G|))jDfX3aXGR_e3qk*x@j% zni2AP#>OSDZ!wmtr=gw?`|$*EwjUBZn`7XYsdZ8s#q`=GVxM3{0QL_gKe+o)zWP!o z-=K$4z-`J~QTmn1rDm0SM{cN@p<$YZp-Y~~LuERD-p&%d^7TIJ!P*~2x<#!9_6NT9 zH%)p);4eZcT5Uz01K{P$4Z7`nA?e%;)W>@bl?LJ_Rp{QWD25=siX4-(uxeXAMdK#* z6MtzBjy;BK%5}Tk(|bmyP|i~v!gA^2xJDv`UvEWGfOr~$!f4xY2ATiDa%XW@8 zLgc};YqWJGVdsOak6x~dUs)We^tN=m(U+0nAb+TnxvM&ZZ;CFo>MWi{wu9wGiEz9M z-1$z#{abY$9DMHzJhspz+S|x}fbXFlo8>UI>25`<_g|>??Cn z8i9q~QwW3Yz?i4xcN2y2VM9h|0-tI~wOzh@FVJ#OIQqd+kKj0z{a_`M!%^oT_>=3f zbD?VA3;5HX&VYv}LL|ijz#Fw_Gu$cPskPc?f;`L_(KQEd%YobIA@AM(NjGE=EG!rR z(#1|V$Y1KVhabxW2Y)y__@)eE$e9{^YP}oLT)H=!jd@RGXoj39Gf+Pazfgnz449k3 z_XvK0i|W{jARHx-Jh+z?d&K)nKk2Za%((r;^Q|`rs>h(UdDJT{#FQ3Bx9*~9kY9)I+6n@M*t2bI5Y{(j3V@OB7t~Gg{MVKIDY{~4O(zGv!9M6q1|Ez)@SYnXF%Ft?n zC|OkDDLxF|xcAH;c-8PQc-3$-11-M_AN{?p_~TwlXr7k(^z`Fg@^3cHU-zWxS6Lzz@3@id>N2*eQ#`GKc{NukOTv(K<3puqvxg-r%BNX|*dtNGNr^ z2d^H3D%bny3GY2o?t4Zseq4C_DxsK`K766g?W1UHU!LgA^~@uq1{y0e^x&(C#v!08 zvzLq-WltuZ8^3}>5q3g+^3zawXUqlqF@lrmE&$S_1&X=grF|U;r>vE0)v9OG$)3*}k80gCGgc?{nTrYli?5%W^BNanTCF*5~l$#U()yAGB&=51>UJ0b( zNnpBQt@^v7<_Qocp&lFIzCM_6Rs$Anus{~6Qm`l(!R-S_ptJm!8EHmxuMvmE+u<&B z^*+PL`w5%?cgwp@BSM@QBM^%D*xF&0eaOtpZLYNeZDS;dnm50jKWMYS!-8~P_*Z@8 zue6%Q*4ErL!TEZd8qG@8o0NI2z)!AodGi~#QQrQF9B}snH`G_gTnHE;IY}`Xn1`9= zn*7{)3t3Y@fjJ~0w$&tkE8R}`2YP$c zUqrr~9fbu~D{!VX{i^0(wTHI*&Y;uXlpIZ2e0fRieP2>nxpB+f;$hoZjC`RK4_peK z(UK>9w-$xdGMnD9%~V576$4be2oNIrf*}yzPeVcMWpn?kF2QmY34dJ(U4n^6a11Vi z5SUh{-DMySsn5WQ)ULs6+DlzWesF99nFY%*ykHtha0er_nqjc$7FHB|6XrT-*(V~V zBYjoRy6@KcZ+H=(l$CNUm$(DAXgF}(>4awKMHVv#8YhCB94VM{1Dg%3M#fg5B*o*} zEvK}Gv)ylWA&RYb7g4m9kqp$aBHA)qu|Xl!Rv8_sS*DiPatmB&73PIpeUtOx>$Od$Tn~=v=3`-I34Nkf`tu+lYC~V zWMqh#UO{3{JTUw`@9BZ~MaFUw^aP_0lago$xR7E7-C$AjzQt95@(J(~1ctaCzNSm^ z)4W7Ku63DU3`T~F31R_mhy#D0Xv3RAzZU)Fqu$rS^KGNug2zEmhAp8c2t=-E**Lr5 zQov`2AE&?py6jSi7%i2NMLi;p?L8QZX-dKc@rj}46g!+)mKE0st zd3hrvp}}a7U>xN})Pu&UgyMH`n0__4i1<(wzP+Mj_NZ@@p*&(%6bvXeu={U={TLk) z1Ip@JN>3rgIQ-Ye_}60e*=`w9e!v*&Ye%D!Dbet9mzp@3#>bG}JeWA1`noO@D7dEm zOU*N&Rf;|*l=?b6b2)!pePeviYCD`A7|@?Q1V$pGP#6Q6AZwxDF+NV;%b)8vj4)eF zJVX8GacoHT>pqXjTy5SRj)r)uvCzV?Couqvo~XK*aLVhGl2v)(OavMGJorQ4kC=cD zxw-8ZV*2?&Bu42>f|CLPrzQHS)75@udZ74mXFq(=-%OFDmFRIbE^dxH2Hj#b8 zokJ;z@JTt%Nhd_Pm7kpSwqWDor~7_DLP7;jGNk2M-Gt(vGek%Z<}i3b4!{lamy0sA zE!x4(^?Fq%0{%C1K@6!P2NjZtTn&I__!(OZW0>B{JxS>fYtR>bDZUu4;~}o zYv%7D{$vKm(NkeYA7Tzry}I@4BBPFQ5!ka52I1VgEKww_T!=hhhw$zYmN+^7o&Gaa#z`|_;NN-;Afp|SRQ&I^UPr0Kwd)&8=bh=*_nec#^aqrZy4srC9vHQS>c7Z?kr=QlK$zAY=1Y$uF zHxy5DPTCMzQre6zhV_M-h|y!iP-sI>g@Jdk^f)DHVa@}|?b)>>^-yGr=76{@?-f9f zES@-`2!Sz5XeTA=E9!t}`XLTxMp+Aq2D7j-vV(K^FM zgGq;yPrmVOJ=gn*dc=EYAw?syC4~+47vw3wVGci3`CwBCyS{*51h}L0kEbUbg zwWULIoTa~3pM2EYF|R=T{#@wSnI8jQmIRrg?nc=_lq2jMFwA3K-M%wu93Q%FC0uHk z0h{^F-_?_Rg2h+k3|2D-62b#MTk;s+FqUW7397I(I&J2ewFlZO9 zW;>V1y|0+#fhz~kZu}*D6ik#rtX94S#|IZLOB}hfZ?c6C5Xp0bS28kZP)sN7>(I(|@+mZWqqF1jx5j$&xC%J! zi%^f6D5ZC*1eAWeO6vWz?hp4(pYD&Mf4FSE-9M53t$>`l0?b)!DSjuVv`lUq_qR(s zRo_8%`?u70`$vp

&aIwmFVeFk8rr*TTC%WXk+a>tqBa3H)K9ewV44(9*vb=W!YC*Sh;g{4PUp}LfW9gUjpz7Z{GTKEXBy(^^f zk+lMYlY*9?G7L!;MVvh9ZnIE7m;zX-m#D%PThSYMtCZl4yceT77;k~gz%XN%>k$$& zkUE9ZJ#4xr@Q=s8(PbrU!<;h+BJ&%$ zpN7iGY_UaJog)o9I(XPP(;SPJ9u`Tn6=WnHitS17%>lE8qZ7V9GeCgCep`+*EK&!W z;~ekTDo=Ue@6&bT(iI8}s1{sm@$olXcmPRaJjVetfa6z(*E!_8AM}kM;|z&`GugOl z?MOJC{kZK(fUXvu7ERZI!NOU$e3=S_3Fh(E$Ms^yb1UVU#njm4bj)4Q&R*&P;03%kYay8W3FU1Q!`eT!;*Isn5pHQWB;n*GCY zIq5iTyhjlEkH7P`nc^#q4aIqywMcMWm5s`bT=cO0BR%V$Ugy8PdG}9Weh>PKTfDh7 zTiDL!*$E!?z8il*!ImIR)1!w>MzCP3LDvpqIG5`oorTch9}Gf|c|W*kgenGyVAXvo zzGqkg5~~8K5pNodT?y1M+pb}W>*zLQI;+%7`rjQVDU$-Cej1N^?>WShJt59&gCa!= z6$Z0nhsF&5K6~`ek+Gp`+B2f>gwSJa>s{=-tL0xs@T;@GU_?7~-M;7B@Onm&i)wD2 zstl5j%?Hr=)DN;yWe2+UQ`~>4_ES3N<7h*@1Dg1lt@=Yf&Uciaw64)q$0=&vP@R}S zh&qJS4@g%i@2CH*)DMRsVn&C8ox{X_lzqu`%j(@ON{=C<(j3zG%Bm|Yh=Fm2)| zRY*=`{+2nQL7*RxEn1BzsR!;+iCnH~A=Zizp0!6v|5=n(mu8&|u_z4{#5&Ox#!+Y_ z?OIGXG6kJBR;LOk)JD!tc~OnTg77Nfd^T@b49}P#T^UEAH2MP z3yEi?WAgrJ(=&=`^3j4xO}lpM%g5LQwEfGhzMAm#|7#yz&%~7LJzkh13<3&Ma<+Gw2jL zv4k_8799?2Q>V&*747Iu*F#XFmdaR!H#=;$y4#YnhT2|4O{hqT&xO_@%CVOuGtmVl zoohS!5H%kNTeB=t-hsbBvI1)eQo?b?lr-eT;c#Z4dauk>#p;r##V-jQyWKYZw1K}M z9&eJQaO<^Oub+X&){Cd;QSeDPEa{>!-Z6%OZ)(Xep!Y+R=O#i}Ow+PBA?kx@DX=Il zHFi7u1XF@FjkGO{fw@52P7R$9U>Xihq;yeR43HsYKZTS2oJLf(fLT!2H6%PUXoz^C zCL7GI023Y1WKjw!8IOLS-u~3w1Gt75YzUdrQfb#Dot05F_g*Q86R}X?ihe31-Vat- za|ab{&M6~(rU1lc zcEpJrbORphtojeMc-9E8B9`gp&_jGw$2zv93>wV#2xjLd$y>vJfmIav`tLWe4~iX?JHLa+vKDHzj+y|ZaA3cG zZ{sdfs09L&Tqx^UFM!_;9>{L?=mtt%JBZ;tp@~#N5?L4+flMkqU~(dyc+%iSWTgZJ zG|NCTDl2uA=Y9SPXB*fnUSEhw}x&&bE)# zuOsBnp4M>$7!iNA`0ZIyc-iJ4SZymKX>O`#Z6~76ei5iYqV=r%c^?sfbQAI3#wV^{ zQD*`ONJY4~T-5+Fmh z6DX&2be1yL--Kvn17_h3 zA%_i+gCA!Fp#|#>Ji?m9$&{Jtfu!hY#)~M>j<(+gJ?gz{lvv9rHiRW)5Q>7C#ZV6B zZ5OzeCMEA3^gW!W%L;!o`)9x;^>p>X-%onqrZhx-h>T~~(h4%8-lta9HJe+OTBsiC zQbSX9C@-n3&8>2Tvo5dWMnY;oMbf zL?Q}F39z(zT}I66JaB6wqY;&4C^3@Up+sV(TQTl3E0PXdIJ+C=eZ#G0*^h9dJe4R( zhEthF*K-Vr^*Uyj{RV!#j14Cq{DW9~oWne=_0*NxURb>;_p_*E467g^Hf?|o+#ad- z?XDj?@cl7puDu|o0=f6mh&oh{d|LNq*G+G65@-dC()#p-Qg_chqvI%`Btb%&L|G~p zW=zLVv{VraGC#83l5S{yg$gE>5~K8sO67e|as}~|``TnDRjbey_wguLt z*2*7(0*y_GIRn@s**Cmt&*Xl@!Gqz*s@Qq<+n`S>_2BLOfU?v^@yypq{|q6g8Da|K zNioh~^#_-dsq;JWykgzU?ukIIF>zl1&e*Qq*pnbxL}`ZjwD|(!%K#kUV)Y zse01!VRJCI96v0UV4>8}B-_rf6d)C|8oJuk!M!$T>~tm7(1-8*=>v5Urxti8Jh6{RT&&s+)gW#DAd z&+`ON_X-?BQ29+-qri1!^&WaCdt zEsLIopc^>M+i{9XGL}_k+=2z8-X2!N&h6tc&$vpQxWh7U8o8l|t<+z%&p?Ws>R%L3 zdL5Z3-JWe{?v>nVrC>ORn(r)F!=VIfN<4y-lWc+K#u0SPFV0Z}PARhvf<6(G2`3>+ zn;hppOa#R_y(W=9n4sY$ez)}hW)MV zyRKA;trg(3K}Nic$c@V~24nKl?}`QtG@KkPq%X}#YCU8>nkXmp^!!6ooz%)1Z&P za!>0lgITwp6|OEVP-rSD1&XpORBho8WVZ_lzQ#36W79T}!)unZ zYTNh(?qjOK(7|1b)fRjo1N&-vU*irjKRVG!u>qwVo5mh>9Dts#cA&gn7z6yLy!5LK zm~_z0nNqG2roC&(RD-}D(&NHF#qVY;c-+uz3T_ETL%<)*M`T9^q!8gOITMIR+(#zw zEh3JiY48x{J8zFK3BH7pIos$Bv?n(lUT^Ycz9%?9xw2`v@#$Jv$IKU^Md0~h$$G+j zf5Cr^coxgi>$oI=0lM?&?E?mEup<4$KGY<5E>Z8}%eAt6GPbyk1l7(a?4ui2?e+9b z>?MRb`@GgP<759L`_?c=i^Sh?-wM%Uy;*$VrPLQCILYeu&$L?fMSf?&==*f9*^}PZ zr7&!VM{?PhIZ*A*Z^-WD)HQCobN)3Ei6_U~RNr+t_> zIbWd1bU`cpk5PfQaO+v@^|aLKHPk@VNzjHzC$dRtn679&ZX7l~uiT7qZPc8eyS`gS zh0O*Ytm6Ut&PtaUC<4$X;2f}HgW*jjxLX|)RVZ=X5_XXd*nxN*>=+m$Qio)czop9c zIbGnpXRW4MIU_irw3^K;MIA9JHFa;qCG9x?m4F&d)%CSDrP!!aT)p)gheKl+JCj?l z2j0vQi;bWOv0LH_2z3G#VaRR0s*_#_2C)M4A7)!&7iHN$SD-xR0hIQD^j3!}Z&VZ+ zbf&nCUPJ7`=_nKP3|yKfjv&ocT$z=LcgWy!;Zd}P5SIYz?iM@9)a(VMO%NvqM}|c> z47Q1=d~RTn1D#`K_+2yPVGW31OjrmGFnC@&`&nwdGHo_eXMa6}M|n_Ineu*wt&b)z zvP-DzW6f}Y;E#f7@Fi|?W08o0`K$E4)47FClXjza_T#kpK`@5aJ8AFRDd0A(9fj3kcJ`v@9G+Z9jD-EdDx`_{lsS#xbX)D_VE+tlMY_L~djV+V}^@xmE6jrE~#7>0nI}m|6Q?ZG@XGLJ`>YESjMx8^&U~G=UlE!xqO;%y>!QsZv}$ZwTA6^$EoFV$?!1}_+(DCemd@QVz9AXUy{%n<6GiC>Bo26V``6q6Qd5P!vK)%xMW;$`Lg!FWV+b) z6msy9SZ)ab9GAnk_Z_wFVGctWP(8hO!3jnD(Y66KMGLs|kHFw(@}ksMC(25^-VG1Puu zf5NK|Ldlj-9BQcE)MKkM>(pJ5NDY~G&+dek!X;8AtiskqhKJ61>r4=tOK!7&HA%7I zse)^nd$e1Z7P5?P4l)o-NU`v;5f5d&6Lu6@M&?C{Skd4yT8UfCVC)iO!ZUH68Z74i zU5DCFrcn-x^b5PC(wa6A78Oh1nOQWL98Bj$22MmI28qLTWzngmsKXX$bM`G$Z_BbX zw0s=9Z$uFT$M@j${>hCTIt8BQ?(2J+&W|ulHyxKtVy7ciaf3pDwUN+dCk#WWjn>>a zYg*V%bb+OlBYT}~Ct%va^9wahl8WW5sv?ho?S~3B!x1Nch^9D*Q^Lf+xom4#sshI> zymZ(ByE?IMm&~*Tl$;-F|GH~B@qo_Et#k`(m%bGDzP~DIg|P`TMAqlUc#6v=PkC=s zn}TnG0>$R@C34if94udUbC01Nv>Z7JP`OW%(PB8L2WOIHYOpwextAkPQ5ujMx@1zcxfl7yMX5ELh8<28lSA6;~O)6G?CP<18xQbhL z;D_TVRAH!Jr@UV{$? zG1l0IUW~U#GOJ0O?50$hIMd+sW-?>1x?zfEPz7&(v)M<(Tc0Qf0Nh9rj*?^5%b-+u zA-!=JIeu7l!>=^a)Ys(5%%E1bQ?zen*aM!DsM1A7=dc&(Ek6JcBzGD>f(k)7WO&5e z!QG=Ep8iYJ9B4s(K@DVM&`)*doYd{Da}Nsj^M@Of~51>HQmP{#^~^oYg&|QBu3C3>1XWvK&Nil9-Di~{1m4| z4)3uMaogfbUguYp*5ZoUrFM99o;PnKJBb(Dh-cV>u~|szR`I>+3M}0whhrvmZ(f1U znM(|8`nY*1f#j%fB1+PI7n-@b<^XoOaV1h$w{2_PWxTj-U<1di3lms#&X`mdlnG?u zSg(g$oftpA0F?>)Gwup7tpm>l7ws&0xr1CdK3vA5q5_`RTd!H!8!I44Mq?oXdux~( z9)1*lHi_)I1!(t}yK?>%rq=E1Kst=Gf$u;+RGiLiS9dM`3K|GdL$}AU?ZYT% zjyjU|R^3ObfeL8V0mq~{55_rmSL?kE{1^U3oFLKQ-uJcYzSbAreHnQB8vM}M&_mm9 zjCdOfq!fJr24WYCZb3`>;LuHR$Y8Qgnmp^sT-JQT`&|G9TkzkVUxulWx(pgi{y`BKg<`=yCy5N4E%jSEEa62#UJw&WsT498 zEP6MnA+Hc_vf*(>1^fC2b8AwQQ>(aa`45cWNzWwd8d)Gvi4U$VMMp!M1b}kPkcFUV zoq_~4P5^0DXy8QcU#wJ#hvWZ9!^>b=R`G#hcnV$?Qt)65C9(gA7&2~)S+v7<9qCPd zFk(QGxDN|~8l9EzNQvD5*#GDH3fE3j&0iS*m=PX4vJIf zHV8l$l66>#FV{x<;Gxp)G@=UevSB5y+>TwzVH1~2_2d?GB?)7ETZAgtG zF5e<2OA@L3-zv1jGwIim8qE8LBpxBxn?oGoup$A_+vwM|_D$8pr)IrZxEkgMdEK;o z4zx?BjK{Hkpfmc=yiMp!!Ld1aJ#dx@$NpepjChih-19J*xjXS!rEX{yZjjDS0%Jxt zUXk9B&Q1@YTLdJ(;y~xG78-=|;9s&J4>eDJ{h$Jjn6~s<&)|xdPt7Xzg~W(N#v6ht z+kFXHQ=bJq)yiBA-;RLd0p%+yEjJ5)zf@HvFIcP}5bF{m^<0@$sb1&B%T_ zLM^!OQ*;(Z3Kg87R zWVo?e+wRI%F`DvkYAo@&Poe+9_kpA&TH8=-yj854Of!mkbap08@fQjIrQTtw*COAC z>Zf^AvYrZ@kqOQWo6sbbE%v?4%=G>zMLpI`$|8+}(nNYV8Hw5(m~g>2Z3hD+Fu*Lp zO(A{so{%9jkKvoF*KHBSEVYqkXb9%2?GxVLLyN}M0tn+&B&$f)-}oMRQuDShYXA7k z`RTX1NCZN5>KfNk!r16uXp_9rlcFCf_fweVj{~VTfg#KL1C>F~TTXLpS&~m?1RrZF z|DVQa)LTnq`0Al#BDZq z|4p3tqn`RLo$HZny@bh45(FlKk!RhGkaRez3%{Kl0u3|+tl?6u9(_S9xru3bysz4y z;kq}${sFN#jf4R+NS3SPJ%xy{+fxvuZ<|D3_g&Ic*`9%Hlzq{`Ua(mP;MUJEQL>s=}rlWKyt~mb;THqjh@k}$71bug|O#IZ)KfqpvR6S^7?t}{# z-D1QR;&OC0BNK!G|KYbf%z>-bS5OCtBvJbM3LJI@#vPPR~}ln*4bRWLsx z(&cc4=64cLpIf@AnBP4#2FH~i<`zFaj*BSrh-TwD1;iy%zu;~SIoxe9Lj7JM5SahK zZXi7Z!DTW`&oL#Uvk&3I&Q#D4-8j?chZU*}*x+lB9k{QF?^2{npZ&moe8XOInG~G& ze9XH?n*$pZ&~@84rkumBef_7c)6L`)n%+UdvO(+;E@o+j#@9In>k;qk+405BmY6N| zAXc;4j-_|PVAc$68*vPq&Oz-QPB8t{P6?2tPY1*ZG>S4{#a$pAq|4^E9`t6ntJh07 zESb4FFB1tns1zA3X&{ahBwWrFWLX*oyLe{*4_*0DMrc!G#XHe{&c4p1=8z>g$tbe@ zT#~{hzXGLr@{wa8b07>IH6E^vN7srte#+JgndL>?P{qqYkXig)@;krmmT76*Pq7KGgE!mAWw z!vuFK@Y=2dM!1Y<7fzJH1Ibk&0|tSfPoEJy7w{gjiI!L`SQtjGFj@c!DI+r=I0(bR zA)VnHYJ_>B0}v5&m_RX`8Nj4JPLkFK&*ucg8pDR6)7B)slPhOXMkm7 zdj9usMCElPn?XjyGULB;7FZKE$gf0^B+w3nH+a~j(+rVwp?B@crPO99o3D;rfH8hB z?R0h+5V(hO$mHar-To=?a^1|cxYJD<{z!VV7Cv}GYy~<&@@&Q=tUUz&kjW-Z|I^S; zc=d#|78)-PZKMANCmfa=NC;v!(C`W8g*;g^ccNTHeR*cqlT2p+T-IaYdAszL!2t|E z70nm)*C;pQMrkwG>1MFVpd|dBWdS)Pl zAS)3EpS@pdD6Pj( ztqQA>%WFj&jxwA72~{Ib3zZwlV-oO=B}>VnBR^uAO{GRAA0$J}Tw!lXE3Aj}>tK2E zsP}e?MG~0|6Q~lNb&?q!B;y-%CWf&s?!SbhopfM9&^6j`Y_{s@N5H!R4|d%~JM~m8 zVvjHEIG5!2nD;IXk%qfQCRR8|S+UG4nKM`C45i?>_pX~jqQ6*gbnlQC4R3^1cSIZ@ zE+cfugQut8D~K7ITeC913_K?u_s;18e2qw$YN6Tf8EX$Ed9jAgt*gtOAjaGv53uPG z^)kCPgGI;PvDH6(KM!UJJ#+>i@qSDmx4s=iIVV5etc{e4&3U?4N+PdI!Kx!F&Ob-z z;oNku$gvk*Opc?`{-bDnj0u%YGKaz3QJBs}Y+t&mS&RY24jq}$jLyx5D^N;7EMcZ4 z1`*=*!moxAP>twRi#vUvi))FEBs0?1WvsKdn#1VP!<2 zxr%9W!)5jjIr0YU@^G+AHdI!_{5kJGh8*8kWSKrxWw5f0V3#f)4{Zj-wQ{cq{LkC2 zl6JS53NSgBC2EKh9s*q;9;Dh0Qb-1Cv3c+NiFl6nIt#!rgu!+o+fcX`h6g3VRv4my zI=QQQ`2IgS9#5h;GlNKckF24tFuxTC2Vr)oeey>i+9$D{F#P=a&_03IN-Ok3`vhl8 z);J%uxj(c|qNKU=hxW;b_Q{9#iM7osNI$es693$X_Q^0a|3mvk{AJuQAKEAXPueGc zoMi5zQ5mXM2P7zt&#juDtltpvb)-bv*ApjHWNxj0dWMNM(al|6SOvynq>8aOy1Za( zGb4wN09PuF$4}>9mK&*%EO1x;$ap;FEwIF@?=6}c@u~~3lI2>f*oLpLmumBAguyDe z!w$l$NJAJ>EsdgYu_Ok2rnnEAcGH`ZaoS4o(T%TV$pOQ_<%T!c&x^ENVqNr z;@m2mmM@Ytfz~0$(bIxu-=4;!LWuTo65Y_gppd?o7NKbXvIe7-^gw`Y2HT8Woxik!#zv4Q~pm722j_LH*HIAa+0o<(UPtt&szakt# zphkzauzTnB8fzTUlONRsx27(-e0iz|6!8oDf;9>MQ*dDj+Oo4tY_)DB>vbFk^ ziW5lFLcD~p8`=!asJM4%NA_iU;K?2Y(mWZbRNOlPgI8K4k=DfUbI7QTIc^XK zW=VU}yCt6V6ctSX)XCuc81qziOe>aAQMU*5aFA}_YPKRK+Kt$=J&WS?s-m+u-#>U zI68%v3yCvQ>%;`lZzsP<1qOJ-#vf!Pa!>r4F<=+NUZjBR3*;U=)ki(v{?P;BzQVd2 z$xe334D0OpdN6czEzVz{bRNbWvv}E@t2;OCL)Nb&pxoS+x=2*W56Z;&+98=3J<|%R zSq$R}!Gp0J_rB)ll&DTU2^zhS()lR&!)kI@(ESnRaqpc&h+=pulbv!OV*MlDJBN_P z!a@zX4Q(@^eK4){#l*%flKZ2-L<1DtvyI%%hHW1`D&(03mzDr#Jaj40Q)zz_T|xlm zeZAVmygOZAR z7>uQ4=6pucxSOEm^JBj55Rl)=1AebbDgI|go}aU<%b)AreK^6GQen4 z`l4B&M0UTgZzao=>~HeO&v}0yk8k}HVrx>mRZOyJoLptn0)khP5w4c^)_FA-TWlQ4 zveJu7Zt_Ceq_iLTdG9M20qzJ6k;n{q#tck9nL;o_u15FSN_Z3=9dz2F3t=ThSI&4K z+cZuu!WQj>b-7=@xY@;JcSCM6QF&9aE+ZLFlSP#$Qmsj+3NA*u7(=*WZdpE*G+A_? zH0AdO5)0d4)|ZravpZ}*%YmzKf6+rVJ{qJQ9Eu84**mA5c{^rQu+W!|Ks;)^o#cG>|to~hZwxaSkbK zAs)UKHGI_LZ$GlV{lG2#31oI}zyygC<)!xl?I`%i%;AP(4E=^s3^B}U=-O@dI0Fu~ zD2`+&!^%I3GXP6^h%*45V^k-h%TXo#Tdm)WZEN<2l&5_y>uG>Lc;~^PI?00}%015Y z=N^Q!q0XHUlQnXJTG}Yx&sH7k%l>)Ssoe=`I(QqcYHf>MrNTy!{smuzX`<8_jGi^K zA1H!(@4F^_=ZFY8bNqPSHBbID-8H{(5AGV=N$z5}C}QeB(xb?2+a*UGrZoS5-h2Ft zsZ;V<#vKG_QPmx>LH!yURV46Ms%Q?01MyA$x3m{5_DylqGQq%Yg#RLbsb3uE zmzrc_2QbK?=i31FV@P9qZPF~zJgna}mZS>3V(ZFmQ6HP!$-Nc6H*eZeNcI}Du%_4V zmUl0kq=md*mOFlWE=(E}r=D@IWmFTrjHoy2AFIX0r8;l~_ZmkS?A$n z(Si6fl#4|GkgSb<7wZKC1!7BUT(1o>vDDLPXGDbA!=Z}yGe{AmE83=S%nDiPWrcJ> zucH4K2=hyxbTk!`2rb<7Et8nuM82M9`raYyJ054 z<=NH>B?G1;7w?K5FPk2xzs#SZkMxuo97E9G(4=b38YH50dfqxb_V70kAYkyfy#a#> zwrY)*OHjz^+*oWpH=s;<|^U!ZP8AF{=>hF3w zRR4p{w5a|E#6|GGe;9~jR%(0sg$A35=sdgEx$IW^5WuTWy#FIY&GLCH@Rj<m2X*tZuX}Q~r6l|EK2#z_{oF4 z3r{vu@|F5$J+`|m8>WZ=54u*EdTU$;|2b*F(37huIqJE^Yg=gclDrpIC-fXYP9LSq zNX5W=X&ey<$6KiVH9twMiGvsA^`cbxr!)cXC8@W^ROGjns_BAzU=ukd7foEdvSGGN z7ct@}G8arZV4NJ{69wRRvsv4!v47BgPT)Qe)VP?c=?_E@{TQTw5^m?H+&+B2{!3C) z9^uySzKRW(SUM43b~o%w^LNn2QtoGC-Y;q&Y04c9*-5~~W3IDi&1dXa1fi{dJ=6z}D6kj?yb9o=B2uO(Hg$qfCz0P$M)X3YS>Vo*Vvn+Uf%A>gGg>}9L&sUooUA~ zIt}{wVojJ{j?fyTf?#Wq6nt)o6cny+ZEd#7ZD|ELi1kk3nC=-8Hn276OwGbU!{Z|H zAPj&(rOd(;#3yfak2PC&^Jp^G!bOyb?={%8eh8H&JFOzWLQnOX8~AU$8o1P?A1l-& z$WW3R2o=FJq2kxPmG8cwjC$Yghf*~o^#Um{N-8swIR<%5>khk@4Wg)?EO!P^>ZJEn zhSr!BMuPjx?gaFw#9bsEfivx+X-Efm5OaZ9QE*nULo_~h2fz>{#_!gmozo+F{AK)C zo$?+@Lq_5X*2E8aLklZkjGl>oh}sww)5vW}$(^OL8HCPrOZE%7l@sUUfcbkH)VmwP z>7PLK#oWCb;MR^5Lf#Mfk~Kbk+(V5EDR55`HeFID5@Sar$kySo&?83skr5puWDIMs z#9`wPF)ceGe1&F}ZdKU6-}p4x!ICorrQ0=bc^(PiV6)Zn6(t#8czi@pTl*IuUocv{ z(8On*33`gVI+J+H^bfS!rb5l_D6A~Bs``GA!;LSJvW?oTMh*3dsny_o?X9Nlh3gzF zyc8D&MXU+}rmi?BDKK=GVtvP+Yi3?(K17*NZsJ-ZR1i)3CA4tt6v1|_tr9mY3!FNT zI}Mgm4c(}6_he?5p7wqOOX@5kVFFf&Cju=#YX@@o{hlHZv5l_bFL4Vp(>GSO#o)ua za`;K|?>aZ+Bq^Aafo}I zj*3jb?3uSy*>bqV4R4_9>5z(9sXLkxGi#kXATDC*w9@}ph+E)LWpCnGCZQ0f;bUcB zdO%k~+iw(BLYxLOGK8(+9&(gQ`AS4kX((usY(L}4jk^+AX$ulXJjt9Ww4&Jd%M^3_ za8f-rGFG>wl7qU)i@(t8Z5v&+!8JWp6K)yzugZ@?vQBH)rrYWXTZz=SzWg;gAssDw!?A6b?Aq1!&~<}%!p9T4f_A16 zT2+IGKToBA>XUB}$F$|%Lm$1I<((kET(0Bn!)^=P?NUaXafnUx9(HtE>sz!OQ*620@^|;=kcGU=xT*Nm;=}oPQC9Qq#RN>c35K7xXAu7F& zja$_kI+m%5j=BwuPnRI_9N;1#2CtPW*eD^(N}F4??epg`B^Dy!^0(K0xrIJ>TC+94 zKGkaZRyHs%960=2e1LQ#mSx{?qHB zMw?$#ONV78#IkuOHVH{tyZrV(Ir}1=z57r+vFEFoDPeB3S{>ZCQzA+ta(tXPsK9mz zd2f=^C1KwZ+Iw~(&)JP2*-d9g#x|_nlmUuJO2^UPSCDKZ=7gj;482Oid@tu|-;D(d z<)sF{vogF~oM5sQChY|k!>)~(9zN=UEj-e8)%`NPUDukX!f3wJHaa}1osr-lkC1j zo0ObQ6p(g^f=J%(*>jXS1?1w?y0giWmBe-D=9_Lq=;)Q?KZXU_5X1c%=m~MfKo^{c zL%MR?cy$@}#kL^}%g^SvVUP#DwXhlSNCKzB+($!-s=Y+lCJ&y8`8*9Je*N5tUbPkn z+qpOoirFslm`=*1hJdhVs{n_1VzxO!QVlj1p;{6-8^?C7TioK^162lj3gk9Ocf7-2 z=(~&FKqZ^nmg)`B@BOsrx+qodOPhUZ$Hb+UUna%bzFJ7^^5x=yplud&t8bn+LP|@j zQ$H&+g{FS+OtH{1rNCXAevnRPoFm7%GPwI-!L4zM^Xy$h^KLz?k2;ZM_rP&KEBg=v z1N(OWFHVU`v%$Z;uX8b-{v$tA2;6}u)%K^ysh4bB^fCEHW-B+u1d5{^+yhlAJiB22 zFqjkNsLiVAz90a2UxeeKf^Jl~K^Dx_&55yk^i?{krYt6OJ>AD{8$i6Tl6cVVAxaM? z-6^EfW@sn3AR#XijzH>=xEPs+mmwWBP~$f%SK+~j=I=5F1AoC@fpkBV$iYRMK}4>( zG2=rc6v#j-mg=z_i|kF#)d1G>ufinzDN*w@Rh2Ay?&2`&11Yxkd7WDIdKa~%KZTWl z$ot-4dei#_H6D&r8VCHZiGj!#f(eASX*MD0r-Jvx!_MtQ8Oob`V}B~>jj_K?vdD>W zH`mC*u%LDYCupoyK;rz2owkp7U!jZ*q$iW&O=ldMv*hZkH?j@g3Jw%jeHS%-}9`I85>@ zO;&(;3cV!cWseL_}g&)K?EH)bOR^_eN3TMU84mTDdeO2 zyA#K|KVncR3?5OFm*J4A)asu4r(>SK1(bsRs9N3#D?80vrCdkwLt^jX%YQzh|L!>X zG7B?>(_?DN@hvv(zZ~{Iql!E>dDM<^xfnbKG&U(kYQ)5sm3?{@l zr@yiTzC3r#7{Cu;K&3Ev0&(T$!jkW%m`aYnT&HQb-(sekp3`GhopQqZ4L@M2Wpzv9mO_hX*DgOq~*-_+zw zaxLAqr}XIY&fWq_LH|WHwQk)xZBLyZJ>GpEgGyoGL+;kQoenjW$B%jb7ElWM(+XLm z#=7&=Q=`W#cO9e@{9jTN&|LSxde4mNKRnLUPr#%ge@ywJD@Qdj-q~ZGxr3B~KLy*t zhD<&6+%dyLP^2>?{4%Cdx~INy%yYJYQqTi6j=CUB`isZB#|R|__Y-OjPttW&5>xTi-;C;i zJXYclfSSTq5O>=vt68lnZoIlYU(9~Jlm_t6@>+O%$iUPDuuzUT80Cs6K)^_GfstqQh4%s zsgi}6!s$6RdzlGS?f~`FlPC3G9xKzN!KEg4g-G7eG-{tIgUS_}0ca@JDM#KB)XssH*onWGP23Y!bqF;XhDhI(6I@;k@9V-jE~ zEdHmuXs~d_+jrnz`@Lh{G5ruz_*_);qWyDIq4ZSZ0>6LEYt#oYh0TJRzJe^{n`~}< z8-)3zV_u^auoM=T)XY_cE>L*#VmIspjXyrA|Kd2AHVrL>$7MCP*1F@VKRJ2476O2z zpf0M(jlDIN)OzYqPad!T$pT72UsC>hc?+_$3h>`NW|`$6rQlytYvP-b;MA%xSp!d9e<1WyW@{;2b`2ddO2Hfwtcp8fdAGQWLn}f8sQh;ZwRfMIMJe0At)t$hgPgIXyiQ&) z{Tf35<#3Z^ZET`;D1M8u<*KGX`l9>^WN5>w4geoai5}mc>Q-sJOL*ME~Pfv4B zERh18nP-dSs_2CgJ*kh7JR1d1^ZJ zVzzi0tbw98s9bEmz_k)yG3AYB^gunYfBBcMUEf$b|I5D&b^&vORanUgrlM(Rt3_B4 zgalj`ars?o zH>~0Ek+>=ad5&Uy28(9D2(J~T;BnAaJH@V|L$;b^II|rmw-?&METU?22V3lOVbOAs zr>DqfMU$O3iN-g}$kS7&$IBXZkmg;C;uy}9M;ST_f69mUW;D#+@~63X)iEpbXt~?v zni@1u%5&oFK)oTgi)2)g3AfCmATdq&;LQxOnO!#!_lNxB$NhEv^1_X4E7v}A9$h4` z-C|VnXNp*4LfN6z{Y_1ca3gb|x$Pt9g=kx2gvd10O<&dF9y0CF8YnL3l-Q==MwJ%`&h2mIik%`(q0;pxj!nCs04P|vP_d@p&f3{i*O^aC<1pV%xT4;Y6Lg+p|8M8Cn4WPXFKxPTgn zg>GColDuH(8_RF7GalAhKBX*m$eN4e1NGIbWho=JC!?G{+=GS$m<}%o^G)ZOK)tTd zg1iJ@;uc5o5dS7MA<5j(+)C_&AS}cEXvQ+qFHubRso&`0`eU5K&ud>`;ah%&wZ|#d z?40*Yf;k(65)%43Kx~&#)_A8}le}bVHtuaye4Cu`Gl9BEwzreO5=fCRMz%%cf;Cq+ zg|n-|kZmB`DM}Ygd{Btr4*UW|+K*fsHIy^yu>vkGrS-w29{f@{GFj8|eF-?te(Ymd zD2lN?WZZn`tbe_5`3zbSp%BWy%wiu-y_Z0aww4NgwlkEo^QS=$2ufLYF;Xd=nnlkOju#dwMJRqfyd zBzqwk!DewIgBX-Shr6U{GDw1&Z!j~<0HjN+S-gVTa#TdmliD4~$~&Per$DVOTRNf7 zCP6)i{dcLgci{fhv){M-Pnf;4(`G3>sEFl44;2t}Hwuvw*4(#M=D?X}5!8U2`ik(4 z*-Dm?$+6@*t^_G(wv>!54AHv@MZp6s`?0jV`UV@Qkg)&&)Rd#G*}kfgD^yjL8d`bh9&du4G`Z6BDV^xYDrFF5tCTmqG^aw z45nn~7Qu)2avqG#{^;QIK!{q#o$}0Erj2M!QL;w^?JS5W3aEKzCIMBWCa||9`)$ey z+>tc9(wsI?tY>|MzZ3(M!BCII9b~&hV=;g)HtojBM}NG zhB;S`^7hGFPv|ri?WabAwTHOT_BbixkSMpJB-rCFxHqE+O-9qJfI@!QG}h3RVV(38 zT9ybG)-8|=z6-62sHC3B5s8d8dF&=H9W-S`Xsp2#8b>RCcRy3hN_1Tu+YX@B$t@R% zBXtuE=>&N6j2812?l-7B@I4vr9{Qpo5sWGtyW*wmp_b9T0WvWZ)c046VP!sr1_?Rt zsLwOsc@T{9Ad;PrqaBg&oQq*pwwo}`y92dATT_T-OwDAypknoCx>SRK5B|rIpfAGz zPL));Dd1(dtS@jxhnF>A-9HT{^p8xliv3InuTr2EVbR4Lx7ymSRfx4+RjW?}trE>o zoB%?6;wW?BKI{Q+91a%SST)%5je~6%BanFK<&H4!wm=ABj@>bume%PmV_1$zSe zyv4xK8DtG1IpI7ZCE((-%u?`ys$dkXIVOhAQRMG6xK|#u@^Nb7ew2?F^+LUYmdU~u z#^V^FkJ=iL3_D5nG!RECICjQ`jv+xaS-&3JwI*%*L>SzMPV-=VQdjAMdTvC$I5M!* ze8%W>mpMCJLNuO_Y^nLp5#8x^eV8}rtq)3S!{ZvvS4Xtgu5X&X#p@2*=kXMz>cWGLhSD41s<=Cyv9uj4Fz6${ilsU`KOIQI5IYEmtYfp12V4MG2B_i zHWNh#c zsGLkxQe;e{6UhtcB~Nr_pamF0LMuYVBtz0-7oPa-Cc6|JKW(-De=Thv(V}1_u?^>s z;=zSgb7VHAg*bVQTaOwBqkU{v`h+%77!!xGF?vx2VHg)2+sM@trI#!dAwN*ouLLih z=?T3PYrpByj9VGaxBw8N#m-Pf&iTkXIMWhZfWGNi(yo0*LINw_aDfZD%ZlqVH>hfgv)0Xk?N%R*Vp1E)Eu)DI z0K+RDb)#ZbZ*`)@j4aIMjWE=WksK~@>W<*xiX};RMB^cjQ+~XUn=01vU!`ZnOk*w$ zq-X<;=rSRAXek0Ca4$a&jBpP~lm@fG6vAOA148? z+OW9b}?K<1H8sej#72Aup&iuk(xYhf<%# ziF|Tgbw|b)duYjnX$)pSeyzJ%uT>C^R30w-Yd`zkbLXDNML+iG{=hXbM8qdH^GN;L zNRG6DA;8RHw1A?TKyh!+oiXIAnBQ;>mF-I+txYjs={w#;%$M0QGmL5S|07?Dr<#=u ztv1*IIti|rva+G&l$2i|G_y%VhiLHb)n4wUb2;r*zA&N-1*A?*`}jX+u=v;-jP@E% z`wgJ8U>=ZZBDTN&0?6s*W@glHK*`7uwD0vX^tl&f)O@Z~$NqbviEJve84Oj3ky_J@ zUmx(oOE<2Vp8@)dNqbqgfdZ>E+?7O03Ys^DRHA&nR5H&JB9?|0|BEvzDeyTVoI3*hX8^AE0o@;mwjL@AMTO-x|8;3qL6(k@@ z&wb;pGFQx{?km{b-+8TcS;R9)0hb1vgs;gx7wB+(PgWNdZg`Sk1cI23Gf;iBAx2|s zJSkpU%^~*J|WV{4<3+phX+y@Qh0C8RyB&XPDu?coM zB4RJ_N|`W1unOz5gCuT|)f^U2TV43HrG;nt^X8Z&Ha3fTM%^uX+_M30AFC)!#1y@NOCVklXjum`-?NGAA=hN zF#KiYF8N#BMi3&9T;#+2LHdHj;Ta0lmzI#O0soiG(aaAacM62WU)j%qQ;z@s zfA-!7w9fOq`+pwkICWB`RXS%=Hg)ewtAOmuPvz9<>!?bxY&o;u#<60{X+mmrj-_K; zjV!4;Qf!S5I_L`>^o15$XrY4^I_MyS6gtSDg$^=Ep@R-O=%9lRI_RK-4m#){FT9`c zb=~*dD3&QWVKoh(LC*eqe37XGJRHB7Gb-~#Tc0U{F6LEgqCiGA7Q`!5u21Q z#tianyhG7U?Qw=&4|A+XL}owRYw79)!W@tx9i3usZr4N4Vx{{e%rcFMb(fc@$nM|k zbOn}CF=5aMXLSvfAWKE<6Mu(v9^6*KX|d@XkL{{A~C+klrGDc@IPg??5|Dc_xpe^FnIG zTV{Ea8;IP*o*7@?1IGKtzdX;AMor=+NMuYTE<#=bx4#B}`J~k-q022vq?mo0gw$cB zaTjJ>J3pjIV%aM|57o1LpKK-AfY8y6=@!`=eNO_vB95raVB8SsrGU9y83TfveI}gF ztixDP>>-$U$9(aHfuV}MVA2B1XyL*!wI|IOLvt8?=&;C7&QzpA`cWUic+q8Uryby& zm}L#!9tE}XJPPU%-h^6KP29=G!aVPPR4RV`h3#V>tiS)!i}(uSFON>vvM&vUpB|mO zh+@y@EE_z4`(Z!zU5BQVIokxG4hc7QG#Q(Zj6`v1>(@c!=GIlb{b=@EdkAl+_}i_o zqKTuahElH-75>43Ld@Vwo*uKhf(2Z{Euuh_#*C*}gSB{Li|nx+%IGgvSJ7}nX~Yxq z(GYzKb2Xv_6xlwE8?qzz!~r53xiD`>_tWbzgDRdK|U(XlCk z5f$wfi>c(chLyP~JB}2McZj8GDVaTZ8yB{5-tD8x6%!$~8Bo`;-uE!~5!VZMKZ!dz zsDb^>{8TUyu;c!~pFsJvIC3p<-NUM*30ZcoQdlz0HNtpS-AB2`De|RwDnfAa#a4^* z)~gntdnfB29C}VTqAo$gt*YujuC#_P}Y|H6m}ZU zxyXL{_~Va6WRqrU;j4;U#d(}IR=GNOk5i24&v$!d3hi3eyo-6>#PoV~>)Psj-Kbl{ zK_}xMx)L|NkmDt6>!GQ1ZF*n65bvXQEnLSj6UVjGhj=ZM0xEkCfJys*KEx86^(5&S z*2t_HE)xf>(~;0`vW8!b*Ir@mZn)-0;7p53;=*_8O7T#@OJsu+3MJ@sG28WVLhje< zjdGi&Kyw60R5%*qL4tZ0^SA`5b#}+N_i^bgBpG?iY>)VBxchE~sS7C>BEVweRIbov zkC})u)$(A;+a>r$+Q5`4Sx%cI7m&zysiI~M#l|`jtt-a^;o+Os)>2Uv*>@HgDOsrk zHX11syXA0P{^5o>6)Cc>z+FYHLvRdaaAjkKvrbqW4g_}sPgVdpRiD9KM`SQ^2V}WS zItYBe1HYlTm=TSkN8_HztAf$akOvZoC2(B!yBUFj>5x8=*t(*5EK=+st~t{WkRB&y zq}}2;l|5EZm?|UD<_?|@JR5;1agkYfaz*0y=%nOe#MKo%Jcbunwn-c(T9ad1|8kwA z%GQP*Sl3dFGSx9{Z?_H>)2?PEMbjHp?oNkOr^+fv+&A>fg{Y}IOYFFBv}wiuBNVmC zifmQc#IZ@B-9$s+b7#*k6vsol6RqP7jmXqh!d?;OBa?}w#?4rgf~kQsWE#ZOE_CT}@>wB~4n1i`Ci!=+g_hW00>V5!wSgx; zG80^0GBp?TIRx|e$|dV}AVgidy1lt}u$c7|M!X=B*d(Nzow2q2mNe5P`0O8g`Fya^ zZ?>)wn8%q0;}g?0Lp%DgRicIaU2$J)yyN`WL&1twUuAPydtBUFr)|+9EmF2++9I;b z^XUNgpVRAY#vYQLaTY>vXMmk;xwX30>{{`?2VV7u{me8fa=wo$K!P+)V*0r5Tsc%f zWcdE5nIwUrA&M?ahB93UMlaID^khtoy|<3cA(QklD*qY@I{jqGybmM0Z}g25ykSc% zak-yxnYdUt7k?y*g#JTCB!q@xPTIJ2x$xdR&^qnHgrF)-m9}I=Y;SS#nLGrViv$VA zfpCJk^+gT5SPxo9BxKiMA()o0VN7=d>u-=?x`go>^j>XEJe)%#!5j@xrPp>vVTRkV zAj6>Ytb+&|{4X{&p0vAUWdADa$UP(3pZBUF2NYJ=?vJqh>vL;M$klE2%C6Jy&Hu)a z_ZI_0pA9-qD>RZ&+>8?1H$x7Pd9Qj*`3I&wwy_dhGP&8jzSv%;mNA#-F9-5h6tROI zc0PPH9siKI+FVeIu(E_r`8Y=jf>mqOKOW4VOHXc|Uu$mQi`zPne=+t$DU2(F&>uG?@CyDyhlckrN) z$EA|l!bu)UksoPQd?~JTA?He3AP_MQ61PG`sL^E`ZUb?lbXFWXg#6ZArRab>!A1R4 zX<83cSvy|@vKUVS2U2!k3^-Ckg;MH$9$#IRf!HEK4m6j9lvv9N9&eLT3Y9%BN-z7e zvN6}T$kxP!p&AG7RFdpP>gW2VXkmE-<8I}}0ZE3J!Y(A%zt3ZtEwKz}bSwfX@C;Fq za+n6mC;_enP`F3|fG{3L!Br}F8bM_(&{4#^5=LL9=}`0lt{`%IL?HXzv~n%to0}`` z7mMu2PfI#8k}CN){LBQHGO3Vmu_GZUn=eazC=jN$=nih)Q*a;2MjKwVhUB&UII7yE z)}o?T{Hs41%oomX=t4}#P7vqSyIkIySH$7)E8v1Kx^0-;2%gysacFxSV*kSwU>zuN z#9rW`*e>KULfRW#tS4o1J{wA5PMe;p3_{23nhuO8!cA zq2dR8fsBD)t(3Vr1SeBEdHpC5f7*n1tv14zFbgAHQ&YB7z;-J4{a2(w_N0AxgUT~P zOjNW>qFIcT2=5xFA`lp}$(X3)kpS_tq^L+HBzEYYT!!985lQ!h$3QM?q3t_1+@Y`a z)>V*LW|Fm?XY%S>erVY6>0@P=n!OX&Pcs*fUsBY$RvC|lAJ@gX1VGC@9QU^ASFcfM zWOFB6NY4|evDaGrU@_v?t(Lzz;ypO_<@37|=HRytWcmAoUAH!NStkyFI<&FHMSoL- z`C<>qH*m_Er3n^ph=k7TX}5t+$F9hBH36}eRu`7j`v@!9cw#Ja~G`76Y=@b{yCQ~v$_e<=Sx`p@OxkNsQu_Xqy7{QH0I8%*OI zd!YRL@ptR*QJ-t_VCBP+$0{ElovD0y|C!2%qt919Jl3jw_`t{ckZJt`e?5@#k8rP# z4}5zd<6m~q=kiS38Ti|QjDJ~e=;H(5)sNq`=e|AgcLN#!vU~o1Ap3hF{s|DHP{`X@y{N3LJvHl2k!F+bf^QT1~dNI19N&{P7l1@AJ9P$ zJTsW_&mOp-2QKJ=A%8%JKX7p{2GqX)?Z`rP2~v7m1ev?$+R(5!kCtWOSK zA~3R|(@%yOW3bOgbEnn%PW}n64M=mX|^$g%C@XwY2G;q)$qkWY}Pc;cqx=cnD#AOUb!$uqdx0is&T- zGQHV|vUHfFQL(KBA?>6EFf8pLc|Dvj@J_Gvuvd`?$$FY8Y}1dY$fkn>^aN1G^;z^( zrIB+{6`GJTA`b@fkl)s}u)V8bE5;ldpkr)e5tHec4`Z5_hYlHavss@#AwK~%?b}6m zCffe5ug5_{nY;RRC?tl6@y2;;TdLD%T@&^2*^aw$(26mkV8H$tk&rPox0avJx7Sup z?h`=$h^e{;FOJT+#Xb&z#rilxMhat^WN1*pLNv|RE-{JdPV}2%T#I20c2mobU2EQ0 z#FVlkt){t(8LSI4k5OT5c^M9iYsVoFY$1jn9%ityVLfT1H1B8AkRdQy4sk}1No6M& zPy@`IlyDs`jt8K=DQuW9!ClBvBDT)xf(h2hJ+7RBuX0F~dk(fG#Btmgwjf;~$1GON z9gth&`U>Al)CYLQg=n67p`p)>i{s@nAC$EBLSuWa;}`#UknvbZ@}{KZc0y5c_J2#7 zhSgDVKSGc_s{jv5AFG#FwHxibsxke9wB0@No+LyCk6flQ3iqN9@{jns3ED6s(t{oY z3(w@S4OU%N%}q0GM={)Jk?ThwwfVA;lw-qRH`CMlARb9n4H< z7G$LrT;4`z_bJ?p6zNUy-7eA8L5{Cr?ch%n)6Gg8R_6DWtxwi1R|TVz)(DGubC_PD zc8TtG-=rL$l@CoDa9}I0T|fkKlw(475grSHOfhT7#IP(YpD#@jBdiyY5(+6xDjLVP z92znK>x?+oYt1!^hl*_WImjYAl4FV~c|y~%8Bmo~uzYROFz_?1Q3-Xt4RLLpY2LVC zD8er%?T5y}ncP;pe%Q{CgLm(=Whcuh6+`O6m0nv98?OxBR*plx87r%u0xw*x>D|5Q zMgk4X1rSa)o$v*Gjtl18xvpkY#-{eTZ0EsMg<(Y*9Y{EK4#Wtzw=Z+OWcxTFO5tTv z+iBm8FS?Fb9%c7;+Z;tPJDe0#=3rN|hWr7CQoy=M_w3;To9fn?(M= z6fYR+i7jTIKM$-eoP7^C6tg|RspY3RK{7}XE?Dwn8*^W*(mMFjgZViXKV@X-SGwo{ zTFK|oNGIQL9p4S5qPZnjCAS$I5SS5r0xD{g=7cb692rQUD^k+?2?aVs%4l7OfQ!G5 zan}`=0NZ{rU*L}1ncPv{zal#w;QNtqk*H;yQ98E^z<#@wl_8;|EC)`;1#ZM%sESn* zaL=k8hsv9S!qp@b18aFW2Ba$s7g#shfoKhE(ihyvVQAxqz2K~O>W++Kh>brBqz1Z% zr#3476SI^8H(mQq3G0b`P9h$pM3oWT4AOV;Q82{(ETUKyN;GQP&BeTH7rnOHt~EsQ z;)TZfu>bSgJ^>|B=#tZ9;*s2o0;E>}Oxvc|vhVCa(Z4nswR(iM*k-rG`?6GnESwO?;sa3TRE1je5}xG(pp z5Z+lLjS|WV%RPxsgj6sC!@FXY)!S23PtBc~TcCOBr}AX+IY@y&DU9!a^=Ixyl@^X~klK3_SheiE-;gF898!}0&DMM4ShZ2z%Sc|0Iz zIOUJV*8}(NVCC+53W0`61(h>c*`}*IRH7wRLPc-6ppA0C2KusFN`z<;CCcCRtyHq0 zF?;NCGzmSQyByJXa##?hI`C0&o3G=`#G~%a5#NNqG4~x4MkjCunzx2{JE?!6w{jPSD9+j)q7b1=wcI!Q(>W>kX6C!eiexGUsj!DBmzrDj znI1>9Jc7pYK4K-V+Q|F2y^Al#0ByurGY$3uD9XY@8yU6LyUCHuu;TU2FAe6SxLc48 zx3ag7K7b8|r)>v&LS2fIs@Q3W->m%}^)SA*^+hDeb~beMWea@JnMriDpaMh!g;(eS z=}4-Bf{~Q~o?AJEvG>+L(%h81nmuG(rN__C)l>@+OKFiy-ePHFb7g5RJ!6d$brohy z&V8J5LZ6VH!GfiTde+wXCBz`W>rAwgjRE6DMWfQ7KT4yRx+2=JvbHU24%PE*)+l0| zn&IAInE^Zb+4SK$Mwm#m+r=?t22(PotU7FjbnCi6o!x(IF7E}k2eR;cl=drIw?%}) z7e#$0*zMG(St_>j1TM9{EGN6geuU-|{_E4{mMXrhLQc$FXH$wL#Xp`AG!KAv{hc z3vgx`Go$PbYCzJ!vOO$C@1&ZP;~LUqNMyCKEGC)q2y!w+VGyA)%!D+sLO+vb1#;cu zZSOL*oZ7|IGF3mP+yl`UrgbiXjJk(y%w%6PaFPz7YM;eC`&9J%@-_5=I z6fqqi${rZ`{7D-{K`u*MrnJb;g)ZrXx;>`IzQ|+HA+rQ=4T1qtQDigASQ*a7fV(^| zEp}6)`lil?sUtJ+%YWjcluNT3WRa zD{9PsfKehAVI#3S8M`6R3u9$^Kuc<0wG1OML;F-J0L~%P!-Z8}VGydRuoeIyGqFH) zskL=oLVx3hKn-+*>WAx?8Li$7F59iEAB?0zKVC%Sx{w1=42$X>=X(h}HD&&!jso== zW{Qdl=;emL4*ipeQ+jyd%GoLv2&vnF&j;9htd*2-)jX9xERcG|8a5=b+JVNpx(Ezr za$A=`$r^&SLh-zc?sBU?nOHp_4eD8GviuWdAmlueEAq;Pd24{yp2O!bm_^P3?J zV98#f5EQo1Mkh8cUfQvKdyS%z{ag+V__mL(g@{^*=N0fzPU55}HF=5+y>(ScB8KhQyU+v%f<5Muno&D~v*q9x6O@)Dh| zs7a0Fpr@1*XR_r}5~h-CA~>Z!Eh`qrRwoVpoKpq05@=aysDB5n@WAPd`MKaU0rGCv zCx#U78?pk6g%p~!3e+42-{-f?3RXF)VwuO3*NdpJk+Xi{>Sl8W&83Yg+1QzjG7eBQCnC@uLN|G`I@f zM_Slu7K&2RjXg(c=I{4W`b?qu|ERSo>jR!*oG@_mp7ruo=iK3?NJpUA1Op3h7$Puv zDqNmVaAeGD#MuOI%Lfe_t7fh=KMOy|O)McLc-;b>xi@D9!gn}Tf=kJ`HfRT^JN*!! zuQz%^eWs?)izLfWcO;*)vlO)yEpR-9l9(SC{l|I?@!y7F1(dZFb?)XRdE%-^N_i#3 zoRoQ3u@ox_-3>Wv_{Eha8jLDuZ*Q~ygA+dv zH%B<+)mQ_4WzBHm*r!W?6Yxt;^qXcYJ|lQ~CgBX|Mv@-)EAfg>zUmUZh;!U*bRDPt zftciUey1LN$0*Fg6VMwp+Vw5ngr|whBhk@GLvZtfz-EB+lq$TjFcGu`1rfL(+B7_l zpqyV$D5aXHP}|n}4bMgq|GT_RU_9%Hi{P9JGbIIb6iSu0NAuH2Uu5u@rw0R*?$)1? zj&Raai_UILpYTXMi<=|w!X8fxxas3hDcq?X-JJDb9n6oW;Z2In?Xhyy-5#4ZuSMBc z>CXrA*)&ox&#=a0+LH7OG6=!Yzvz03#LHFN2}=_=kbDD~=s(_X&%W%X!MZ&b{Nh%X3EL4oaBlnfN&iADV*c)!00?z`Q=b6#X=bvKEaMQhD; zHN|g*+0%l&66dYXo?g47*`L?!U8oagwghq!fxfVjH{E_n^M_^o#eayD@Uqe+eG$Yq zBqLkauPZ0Wfj+aD>52GJ^1BXSv1UX|tZ%+pG$Y28I2!>IvE`bgT(r*e5wMY?Xf;VH zPs@`v4Wg!g2y$cr_d3o>PJ(|i!^UWgv7kt=qfm@+Nz`qq*jpLXX&}OnrHaV__FAaU z?`m7p17tyCn0$U1>v9+va?Vxn?32-L>gyX`B#b9E+pwY&T@ECI!dYUCI) zi8;c#D)xtz5QL+uidVW&DXVhFd~qgU=p&*#s_BfSRYZY3YGqz{L;_bI;ie!(5p6_p zGniPOpgzTx6!uH3^4MhTTi zC0=WP$hajPHcBY3S+JPNw7QJ(Y*{wKiEQZX<`lWFhw3x+#z{pgDtsAKTP6A|PAMWO zsX1Okcl(=39VlGI_qMdE>QhWCfJ3Ntbt_i{^r_wu9?@n{iMam3i0V{Z=L{Z``eXnV z2#{e9H@Qy;1k~KHb)HF41fc{nPDhp}#p_uQR7u}gw~(S0n9CSes?qV;dSw@(LwDFr zYJ*7mNS}OV?dizlPKY&zxmVWG-2QcS>I(E?3VNEn{S3fDR5Bdn8ld>Xz(iq1A}hB( z#F56rus}raQ24N@4QOG&PwS;XtnugA<~YU5g}X!@!3}g0&0Kvhsda%?De()~0+d*! z#htEoFvJROw7)1;8(L6O=U}CM*@EuDhYq#ks&UgrwcXiK7Hvhwq3U)*57&{q$=Jxy zsbCk|e_HRJq=4#sqE9Q+tSIQFU1qun)jAx9&z&@sD%^nPzQ)2BCR*R!E?MY;Ru`kRu5ZhGjw zw%lRaoQCsZ*^;u~ojsDz2Xm$JCGX5uY1ploe}jycW&+iklFih1huyVxqeJJD-o(z` zWUDY-ky(6z(Nsz}`P%X;bq^e^(Bt>jJr?WK4I+~R*l3?t2*-m~b7RaO%WrUwaZZCx{SlC#_%ec8lH!4(Q;pfhe{fOat<#k5^e82BFZ z7Z;Utu>0y|AhvO<>Uw)(PD^wu;dNd(OYwKwF_=lcTu)n7vCN&-DWFSU(ir8*UdW@t zxVjt$cH@#erd?ljV_x~HnV`ippU zd9m^%C<6p6_ZT}6L$-=Zm$G9V8)em_wAIa4esAQ*XI8EVv=ZZ^?VpIqMjvwU;C0*NJF0SG}0ZI5< z)IV%AHiexiziR*GVE&6>?e4CWH4(^4390tn8YgArqBEXQNAwS6qoWsdw@HZ4THje$ z4&$`(AdI}RdU6%4?noQcqxru~)rn8J?Bod0%!QZQurvU$>WaE<>u`4@OGlwQ7+=L~ zksX5UVm4!!c2cI5S80s1>xrAt-^llvxAR8KSist)~|3+!z-Cr6J%@)&!^H`ZEo zqc*iv`znd~aa?WGE-5$lay}nQmsGv=*qtW)Nwds~8kLB-lTIvju?n9jSCr|@C$%k4&@1EF~pYvV0ti+CRX+T;Dru5XRBFcl z$taL2PFUQwt-kZRn!idb<^|75;kel3^LgA&xj$pY2>`|y^r>f3osG7G*y>KBc=!m@ zpM~jgm}o>M4h17WdM^c*!3l#|aXgT|MfWBz?d)bk`Tfyvxd*}V4f(mbv{OG{IYyvw z`w1 z4MdUzd^kjK!#vn=EEErd!IdeML?nSw#Uu>rP8zM*KA2zIMh{0zh-qrk&nHWqRB#`e zH%*1}azn}mq$XkXo;dVFiFvD3hzYi%&b5PEmO}fr?i?`hrJYi_gzPV3j()%qyF!508Cw1GMVIlE@CkB=TYq#R8NS0J(Kbg#6p z9XeEGw?~h=lDh7dLnq0+uK6~IXwZEF=9R=^zb_T}m}T2)3snP02#T*MBmxw75~z!l zhF5(q{iH90{hk|Q&2t-_5R7AChET{TBC^P<-g88VbE~E?yq(lLp%HMyi6LFq8|9t| zJru358m}q}CkFhb=DU?briA{}3yPrrn64J!yo7wmB((mHf!&{ko}1T#c|E&pR*s}u ztFXAPyt)ZHbt{)PrNp^F2s>dBdA3c+P!{cKGAx>Mxpg;BvH_J!2E3v+D{Ts&R(2Gu zFx511t{W>ZcAXu-g-CiIC@vsq>S=x|15r!PpdSs1ORdxOZb%mD>}+_`0p}FR#OC^e z%H(J01DllAsLLLj*xjW{Jzp54^u`wkvM&wpUJ53~CQ}P$f4+bFSeE_SO=@K**##6h zyHTU;$4EXz*^l)N%8m@3r|nlZlGhfpJR5Pct%j^$y`AwW`O`VxaL;&uemmn4e%&=7 z-*m6=FK%bV*SZIMt!KQy92|P;k_V+A*WuhT0@$92-@VjY8ZSjL3fSja?L6gCuwdsS zCfHN5aPcT9{X#MfHEw9ecMa=_MornZwAXXeS2^}p>Av_ znX4u$a%62Zh@$z3Dz_N_rw&2H(8C=CozgHw(8JY`$C z{Sr4QyuL$t-LU@iT_Wp|kUz|y6pSLqcl~mu@jy2A6Yw#JsXip-l6S`2RDE!Qnix}X zUqD)^f4W1iz`OGq=T)U%Dq|1xyTn!wC$k<#Nq#g7zwU5F`7gd>v@kZBF_FV*6Hcd& zNbwk?o%Jo#W(%&e(q!JY5`^8s%2plQdZ=L-wITrso=72RnX1wdZ31Po$7*Zs3id0e zkrpF>PE7%c#g*muIE~nnOkXFQ;0F5Y_{KIV!*&*E^{+<>O^ROF$ljo~+TiTxb^voB z7lrNCzIKJod4r6}aL#lsG9YWmpB4u7yxFo`{jp zhtUy)luzzl!$QkSfrSY1&NKtDCvQ0?8KgXRj##^)KF)2T3BLQi5yjEu?$n$6?qJ`( z@Du0#77ANwQl5`uOIcgqXg-+d-=F?N|67vL*ph54wDu4^URV$A=b4QSZ!!9z)N7Pp z1N0=_9>`xqA4Z9}t#`*(t}P-f(C+u~JpaM;+_kgz;r0f3D%4Hg+F1n8m!#G0{M}&w z#`KKWQ{CE`jbGp1z$4dIZmhMo{(dn3-t-y!^Y-39K*HbUoqrh2U!Ojqzi#X8?C%DL zo>L{dxQTLex6lCg?+1s+c-c4LwU%$;t$!FC>TKO>8<=b@Ew`JCOPf11QLZ$e{YS!z z?5Bha*+0UU1|LSK*`NK>;L!2F^Ogw%1)Y|5dYIEwqn5edCfCAqxZBOuBeXydT>c~! zA=VFzY_YR?Q#SVHd6hK4bH{Zif{QXwD%0VrlkpdP=P$O1^m}kmN@%{H$RDC3KhZ%I z>Bc;)-#=-Ba|kw6Rt4zhqORBHEiw|s8@?@6M64lKLu`ruj7&8C&aPYZn#Gm#U{I{+ zW-(<_ap_2d0jXhReLSu&IS*s`T@04iQW6>#YoY|O5NkQ&y^$$@8)rqB7}M`_^3G5a z?wca}6iul&>DB7BZ%oCPi%NkOR?t4aTx9v1hU5e2?{LerZOAPaJwwgV(Ty>*bB3d>I5 z*o~@10wz;&4|yxNV4d4vyw>~}7kLZQWxAey;jnMwLKP12wZluzP1Ppc6)=_sv=?+f zT7gbwlp_0CCv>Fka1T2%C4%Kl*u|R!4+V}<1Qmtf=mr#2Ju~nmc`ed)x5} zo!)|;hBP*;dl9QvcMb>2hOZ>tikn^1W?oHq4W>@4d0aQ4cpw?okt^tvmVlX&;7Kz| z_`3ux{8ZhAoGi+v(A;}T>TtosDw{>UhAtaI-~0b0P+t(x6Ds|pB7^KE?S&<$oh8cW z{hd3`C@@(+FfKW=o}>X8Rmd`(HxP=8B)M}X7xM8Riwoq!!Ax**(>BH(p&LmWO zmgokXK)?_3Hk(Qzgs;|`HipaD~qb@Rc^rhAo zH5dYpk#8R1*L`>PkG=XVkJ_3NB{oqbzMMdBypI^;PKvZg{$@iXClpeJt47B%A`%4U zpf7I~9o1es7g&}|)f5JRH!5`g+4>(4aB^k**@I@FQt63j?b;bdFjJPr6o}(!Z~|Q# zvo70^vk`^ds&v;+e!h2f-i=$G;@fSswp&zWJB<`1buh1s>H#VpB7V6j!6Qmxv(&-} z6(NEghSDH8X{$Aq@84SAy^EXTUSd55oIJwxV>h7qeWXD;8u47JR)u}G=$^T{z7dz zqE5Xw6u|2^d|Q!+VvrgFE|-TNkh%PVRYB|R4Vlrlwum(Mt!SonwwgeuMeV z*_3_w@i&R@CR)&|%^-$%4i>p&7_=-uIvaO{oAimialkLTgT9aE!6q#qGF;Cr?UBMY7u~WDbErDek0lVSf~6tl*VBR(jXt>7YWG zd!1-VWf+~x7XaUF-Sfb%ce&=5S_?^3tAM@8=2O+)gsQ(G2m72V)Nd|sY+qVkSqcg} zX0dGOz{W}aVscpBe@@IF$q|3mt%5G_wQe&3Wyp1iwS2@geRgF~_m6(XU5B8rA&^lG z7lx$uZ&3ZzJ0skgjp$YGzAqtO{a7bH6^zz3GmKOI^tZaNqawP`Rj#3~j9ERc4rzfs zLWPu#=n}nTyu6Qr=pCz{ND_pNAP&}H3(AJ(E>BU#K&vUQx}mg70fhHRL-<6`Bi!y# zwMxI!>a=T!QZyyxM|D1%TW^RN>9MpM{*F{P1gWfVmtgPsLf|Ocn)&oqL0_g0_^4IUR$U%1Nm$j@<>mXEl=*h#?~Z$^2!8 z7TSc?2*1-gdest~ax7NnOws4(oNWY0Su8GIWM7}VJfXZJ6`XedQh|L5IA)ys*eFxq?H^7ktAFdE#;2gNC*8_ID1dskBT4U-hXc>DV+GXk z!+^q)gsTL`wU_!W@qG#uNuY|p8V>y3ud z@aHBJdv_xD&gq*Hxifi)154ZBXgj5X}c!Gqvm6z5x zzgT^+a(RPYgstg<-5HOwq7;3Z+^&eI>L|>a2vYK134(?;3-#&-BKrTg!v3*j2HC&6 z*(48v^qi(^?XTw_4Po@>k^x~3k@?1lvf=4dIp!mRSwT#&G#IdxXazY9lsC;BGzx_x z@{W-?3+NR?f^a}Sr`?hwl6XZa`J^>~-!kL#70kIA`Y%Q~4!YH2&0I zZJKBDNTXt?CYLH2Dy-2c{Xk7)mkf_V!D`k-3yOzO3+toZNA&6H#8tj3by)~ux;j1n ziM`BAC!*&d*_eI_8IDs`&6M#wn_faeg0uokcrv6|t?NcVnzLt+`|H%2%Ty{5U zr6b`qe8ENblL{9Ue7qc1W262=-2-wo58-DR^rxmQRbB}+YdD`L75*2K7zi(1zfP^q zpXEo-guI5c`kdwCo-3iF`ufhQ2;mX6W=5-Tp)(I}{{4u3@Vao$8(_E-fI(EzLwDt<_e1v3Cy4 z8MYS>955vx?U05N!zU+vcIW%#3sx`2~-|J@eV%;Z%eUl=nxg| zSwRnbvmdc2zA0=F_MvHVkd)FUxbyM~bR0HZ8Nr@$_d8I#mqGomS-7?y>%q3GPP-z{$ejkKQ2gJN*6r8`)s|`{)gV zoWu8z-N^REzdvvzqr>OFbi^_r?FnT*YLU$UIyf{N;;~|E^-Ha4Ko;@TS#2)M>l02f zR*jlLBuE>yXN1Gk+VZQH=(=3`NSC;>7+hoS>ux;D&m6Wk}#o$ z*{-f^1Ve0P3E|vTa>gICs$%pq#`IT-2Jx&Z=|sBppq3beX9*WS2JdXeVJ!PQj+RWk zGTMbW=->y3PzYn=X2RQa5trnlFiE>#&eJ_nqM|;8Jt5JMk+Qz2h_CtuWub6C;8oY% z@JP}V(O_Pg?gtAU`dVLiB;a#^wiADOCY1e|T_;Gwq_$~*D8wx(i;N+WNum5MX7BX5BArJY#iUr%(D$OaNFmC37cIkgwX&pKKh=JWy1k<{YjdkUYkbwHr0RmC zKq9RicR4F0agAiCE3LTyiTotR!hr{6j zGu5er*etgWLj~!GDZR*AZ67wIq#U`w_;f>snr`bw0+w0Gd_$KA;}+-9F<%^i)axl$ zgE$`>$Ukvn{l@h4f`VR8TCmvk+=mo49EKt>chUpsscFaM!H?(-bH{!@yF%M9(yn0w zabnNf6H^c&s)Uy#F6bNiZ&WT93zgr5pr7IY=M&(6$oD6# zt_5_%0nxxxLwg}^^Q9dnI*$8R4wFWhz>aaU!D;n7sR+5RJ9x1I!PHf`RVW?BTH#4K zVT_a=%EwZ@9AMT#P|J|2JBR&szVx_|#DQ84__`zdU+z5MBb+eLa?{e8Kbj8RFU=hs`;X!^W#RqKez#ltn%=ua z1U_Y?IC^p!gf;{Q|>+~$uMa;C#dKm?y&vs(yZ;sM z0QiTV5X3D;me%xf+G^O5+x0=uqx0dyn8uF}-JH*;!lVtXudil^*5`Xl`UFdPjBKyqlxE3$InLaB;0IecywDNZ4`#N<2^o~DfE`T%iiGqG6 zj|=otq3&4^Hdx~%j8aJ%uAkq&)aG8ml6-$iDDWUKp6t`$ZLBwkSzK3ZXG^$+7evG~ znsS?{^%Nu}0KTI8?i%^BZ~XZj8XS+Rq{0&j(0IVzF6`zHvHX-#?Io9$`+9}6SnE{_ zJyXtq@C1&KjjLJ)pN_#v!7Kx3*Xc@!NQAtqI9lzvcuV{5~CT{(?Yx{$HDr%~GnZ12N+SiW|}`h~c(MHhmc`-?o$*`g$NT+I%3!psSN+$I)?sP7JZz*UY^(*-M zU~Od&R@3|9rI3^nisx0Ju4`7>+4}dC3AZXN3CuC%w`AdRK)d}bLL2t_Enm0Ug7gC? zWQ-&psJ2_#edi)P_C-gEsv3pG&NVbIS&a>xcF`Y$I0d~0TAQtpg#^?`DhD27 z67sV+eK#2}`d>PJpv*SPFvKkcxT!J)K+=+Y!(OaKK0_zf+F?mG5UNdtOgn6@y3?&% z)KrxV1jmc2ithBRsGntuP0J=InL!YMO3-l*E*?i}7=s>wu`N+HQ*7+b{0~Y&qyvS6 z4iv*9O5Gvo2pI0$w4gWs6&4bNU)%ojSiBgNWMz)3Jh+E?<&VV!jYD*(Rwu8v%q#ZN zO7pS25j3u;DNKSCKlGwd9AiU5+~WFW>}D#9JbtkL#1r+SC`9sAhfqlYg1k+9a+dAc zEmCZCi4+nXe~m%}<{ycaE)dummJ$Hx--y7HNFNf9zSd6)=qu+_zZRiJRl-FotGxBn!4K=&Plm+x- zjM1&cd@+Z#iL2iglKaQz@^k*q9snyDGlGgTVE{;{fFxQK2@89>5QvWxF`^JEMS3jN zIm$Ghqlo5cAi2JcRK&2nP%xt7sJ`6qs2b563At{VrLcH~=Wg|^itPS)D%FDs5b8RL z-H+k!B-Z}hTZXi^3~6r}(%v$pnX=faE*rDxV}X0ikfvDlskaPiZyC~V-G2I(A&vSx z7B2UeA#Iz+-R(C1m*Oo$n)))lWk@s2*;|G*+4kNtq~SV9#;mCCzGX=B+wqnm?M_@K zZyC~V)i{H3sKedzmLUy$;9G_?qHYPz#IV~YU?&94U_=bDI=FR;e;*v8@SGxl7BO{t ztLfpB+k}y37&)L@ck2RL;u6W3{R;XZLtFy`!-q9hI*)P-T z<;GH8^#ye$t-Qy)^iQ)LG)M@Q+f*idym<|R;x2hxNLh3%89(a#ZE0sQZfm7|hQM^% z3BH6e+v)sc7h!w8be>dDy*%4R_SAx`?e-)N6oRu?m#1ds zIZ%ih5NTc8*xDhGN?-BOe7~H!+xyF@SZmu#MwY-Y>QC!v3`JyNj%mOlc0%iVz@pDK zx7P?3Z67AYL#b019Y%G$bp_1nKor5%bD~yX#!fT%1|xt0N12Emfqa?rXA#mV2S5R6 zp8gv=XiDMYb)`GsPVT2=>hQ+IdkOaXNYk1h%Or0;U7ZN$21)>*74rKm6iDA1u5k?O zv{--o>;fIuLz)Dz@&(arB4I~JnE1MI#E#Uehgtan(WKZlE{RL+VzQD8L?HNq)e!d{ z9WL^Px&s<9EXlA8T^S8 z9&c}7y0)^l7*19d?-j)F_tt|-W8m1p^aD9T7CenNgd4DW*{*wflWLt_hc#XmfLFO2 zL@&wT&G}r+XM~1v7IzF^U)hjb*e`pB#AEW{vJD09<^97;Gss1Y{4T9qWCsaRBd3Pd(x-NP-? zRR+As?#+cWCCP~NAg!K@8%oYeJQ%}0 zPMU8l9QN{# znv{Uy#Hs#%S{c}@&DCjQNQFZRd?USb3ZG=@RMWDnN68L6%vZn#6b5P)6y8!nAWp|F znu2zObR~xUybh0voI)WxD%T}Yitl-DQM%~{;L4w6Zoy$P6TkZ432Y~OqKUFZHx zeYe@mk*$(Oa0dr)gxUSd-SX6(n-%kN$`D+Cn?Cthd-dh4S%E{>mvROyacUc7&Ma6;bYP|;0c%mJpz-5*U*e33AMG4(g+jT&4r-bstn;o+~dQ{Nvu9% zfoq1g?dymJ#gBExRYO@nme=d%7rU!Ovzds?3pq7)GG1sRqS?>Esrp&}E8Kto_TYxZ zlcg&zuyG|VWY)`qB3oOB-9`y{8`mUt z0-G4!X<-140V=@6`C;5n1w!>xnrRx@!fun(N)v}}QM}nCv{7--rL1d|S(yVyQbL1I zr_s7bmX7X)(@I{bpF6lmcR12M2(!gLLFs8oO-Wz7U`AR%3Tk+n@E8($2zU~vEUzcE zYy4m_uOz886@OF*8cTBDq<6qLs|X)xHbJ-)jkWYucrJXmZ|oE?i@c9`?#fW;Yc4t! z9;JFyLG}xK*@=D3OkWYjRHzj?0^$>KbE~TdO|*JBa;-o~;`vA$QB4+xj_k`*G&v*w zu?RuE%!hZ5Y*mUZ=1~0DHmh49(1z$#gxuRY)y}fj zu0U7ilzeE!2^^KV>*oSB%kpe2k;__^#ON&h&oaWr??szbtg1pDQ^iKdspcPWskS#E z%!Y1wT0yvJrg4cM8r-31*_RcSYUffa*cMsrE#j7AlvgMHy~(us5E0_S{v_nOLfuJC zv#;+pw+|4fpJ-pFW|;4S;t!6CyO!(8hk($ozYZMu)_F$roFO=6gpCi{aC3#I8)|ri zfhec(mAzJ~!QwgznVPS}sOkuHDGo6l8YF>V$a)UmI2(sylNe=&|2NmR3V;pWjQM}H zd^8|LfBVbe@P*uSt13j*W@c=s=Zt3Y${r#fFJ3Z^gyEI?ms0v5QCGEK`nh??g#|Aj z4nauS*Y<+QIW0eeWZYx!)qn%EfxGN_Ftr0eNC)Ex>IM430f}&!O6^CZh7b*g<9L3) z>tfDZcy-KE5?Mx|?i5>Tk>2mfs)wb;th;m`YfV;N9eY>>K*l`C!3v zdC+%Qcy_ia;@ykf6W+G|2=56?xAk>o_Y8gBFOs1~bux*%Fjm6>nD?!Ze|O^f{%_es zC-lOok~*_J4m}0mq!Znu5}RIHr{gFJ-v0b_^`l}t*DvR_{B`BMovJ)Y$m06tX*$H5 zM!%h?_f+7eLu5V;4lP=uvybz~G(qs5GM1ljLuA?Ty$Fa}h?yC!sdrk=`>w6D>B`uo zL)T^y4@uF#ihIzcG%R^5-sJoj)m5VfusD+fFg%(y)Xv8PK!w=0D7(Y<=r66P1{Q8% zq71y0wt$kX(>jcr9?VR5yHzL>SGFNt*s=$fTC=6dsC{5=Ar83*w2RwV!LFc<{@24e zANy|zV|an-3#CCmT2RcmxQy!O@HRwnAvZ-hnqgLa`N2HY@wJX5F>^_B9&e0C^f3!W z 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

2~y;r`FqUe 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ℌ>BG9>f!KqVSHXzQe5m!rHoa~dAOz; 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

uvm~=pr&&1aEX_xSl%~#-^H;3}E_-QtsALvLP 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 -import { compile, type SolcOutput, tryResolveImport } from '@parity/resolc' +import { + compile, + type SolcOutput, + tryResolveImport, + version, +} from '@parity/resolc' import solc from 'solc' import { basename, join } from '@std/path' @@ -57,12 +62,22 @@ for (const file of input) { if (!solcOnly) { if (Deno.env.get('REVIVE_BIN') === undefined) { - console.log('Compiling with revive...') + console.log(`Compiling with revive @parity/resolc: ${version()}...`) } else { + // add the result of resolc --version + + const output = new TextDecoder().decode( + ( + await new Deno.Command('resolc', { + args: ['--version'], + stdout: 'piped', + }).output() + ).stdout, + ) console.log( `Compiling with revive (using ${ Deno.env.get('REVIVE_BIN') - })...`, + } - ${output})...`, ) } const reviveOut = await compile(inputSources, { @@ -94,7 +109,10 @@ for (const file of input) { for (const error of evmOut.errors) { console.error(error.formattedMessage) } - Deno.exit(1) + + if (evmOut.errors.some((err) => err.severity !== 'warning')) { + Deno.exit(1) + } } for (const contracts of Object.values(evmOut.contracts)) { From f72b9433b05506533b8283184821655129f2116b Mon Sep 17 00:00:00 2001 From: pgherveou Date: Tue, 21 Oct 2025 09:55:49 +0200 Subject: [PATCH 2/5] rm --- abi/Errors.json | 106 --------------------- abi/Errors.ts | 106 --------------------- abi/EventExample.json | 34 ------- abi/EventExample.ts | 34 ------- abi/Flipper.json | 40 -------- abi/Flipper.ts | 40 -------- abi/FlipperCaller.json | 46 --------- abi/FlipperCaller.ts | 46 --------- abi/PiggyBank.json | 65 ------------- abi/PiggyBank.ts | 65 ------------- abi/PretraceFixture.json | 174 ---------------------------------- abi/PretraceFixture.ts | 174 ---------------------------------- abi/PretraceFixtureChild.json | 22 ----- abi/PretraceFixtureChild.ts | 22 ----- abi/Storage.json | 59 ------------ abi/Storage.ts | 59 ------------ abi/Tester.json | 72 -------------- abi/Tester.ts | 72 -------------- abi/TracingCallee.json | 39 -------- abi/TracingCallee.ts | 39 -------- abi/TracingCaller.json | 84 ---------------- abi/TracingCaller.ts | 84 ---------------- src/build-contracts.ts | 39 ++++---- 23 files changed, 16 insertions(+), 1505 deletions(-) delete mode 100644 abi/Errors.json delete mode 100644 abi/Errors.ts delete mode 100644 abi/EventExample.json delete mode 100644 abi/EventExample.ts delete mode 100644 abi/Flipper.json delete mode 100644 abi/Flipper.ts delete mode 100644 abi/FlipperCaller.json delete mode 100644 abi/FlipperCaller.ts delete mode 100644 abi/PiggyBank.json delete mode 100644 abi/PiggyBank.ts delete mode 100644 abi/PretraceFixture.json delete mode 100644 abi/PretraceFixture.ts delete mode 100644 abi/PretraceFixtureChild.json delete mode 100644 abi/PretraceFixtureChild.ts delete mode 100644 abi/Storage.json delete mode 100644 abi/Storage.ts delete mode 100644 abi/Tester.json delete mode 100644 abi/Tester.ts delete mode 100644 abi/TracingCallee.json delete mode 100644 abi/TracingCallee.ts delete mode 100644 abi/TracingCaller.json delete mode 100644 abi/TracingCaller.ts diff --git a/abi/Errors.json b/abi/Errors.json deleted file mode 100644 index 22e9076..0000000 --- a/abi/Errors.json +++ /dev/null @@ -1,106 +0,0 @@ -[ - { - "inputs": [ - { - "internalType": "string", - "name": "message", - "type": "string" - } - ], - "name": "CustomError", - "type": "error" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "newState", - "type": "bool" - } - ], - "name": "setState", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "state", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "triggerAssertError", - "outputs": [], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "triggerCustomError", - "outputs": [], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "triggerDivisionByZero", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "triggerOutOfBoundsError", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "triggerRequireError", - "outputs": [], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "triggerRevertError", - "outputs": [], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "valueMatch", - "outputs": [], - "stateMutability": "payable", - "type": "function" - } -] diff --git a/abi/Errors.ts b/abi/Errors.ts deleted file mode 100644 index 36e8816..0000000 --- a/abi/Errors.ts +++ /dev/null @@ -1,106 +0,0 @@ -export const ErrorsAbi = [ - { - 'inputs': [ - { - 'internalType': 'string', - 'name': 'message', - 'type': 'string', - }, - ], - 'name': 'CustomError', - 'type': 'error', - }, - { - 'inputs': [ - { - 'internalType': 'bool', - 'name': 'newState', - 'type': 'bool', - }, - ], - 'name': 'setState', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'state', - 'outputs': [ - { - 'internalType': 'bool', - 'name': '', - 'type': 'bool', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'triggerAssertError', - 'outputs': [], - 'stateMutability': 'pure', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'triggerCustomError', - 'outputs': [], - 'stateMutability': 'pure', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'triggerDivisionByZero', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'pure', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'triggerOutOfBoundsError', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'pure', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'triggerRequireError', - 'outputs': [], - 'stateMutability': 'pure', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'triggerRevertError', - 'outputs': [], - 'stateMutability': 'pure', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'uint256', - 'name': 'value', - 'type': 'uint256', - }, - ], - 'name': 'valueMatch', - 'outputs': [], - 'stateMutability': 'payable', - 'type': 'function', - }, -] as const diff --git a/abi/EventExample.json b/abi/EventExample.json deleted file mode 100644 index aed83c0..0000000 --- a/abi/EventExample.json +++ /dev/null @@ -1,34 +0,0 @@ -[ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "string", - "name": "message", - "type": "string" - } - ], - "name": "ExampleEvent", - "type": "event" - }, - { - "inputs": [], - "name": "triggerEvent", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } -] diff --git a/abi/EventExample.ts b/abi/EventExample.ts deleted file mode 100644 index 66e88f9..0000000 --- a/abi/EventExample.ts +++ /dev/null @@ -1,34 +0,0 @@ -export const EventExampleAbi = [ - { - 'anonymous': false, - 'inputs': [ - { - 'indexed': true, - 'internalType': 'address', - 'name': 'sender', - 'type': 'address', - }, - { - 'indexed': false, - 'internalType': 'uint256', - 'name': 'value', - 'type': 'uint256', - }, - { - 'indexed': false, - 'internalType': 'string', - 'name': 'message', - 'type': 'string', - }, - ], - 'name': 'ExampleEvent', - 'type': 'event', - }, - { - 'inputs': [], - 'name': 'triggerEvent', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, -] as const diff --git a/abi/Flipper.json b/abi/Flipper.json deleted file mode 100644 index 844fea8..0000000 --- a/abi/Flipper.json +++ /dev/null @@ -1,40 +0,0 @@ -[ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "flip", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getValue", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "value", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - } -] diff --git a/abi/Flipper.ts b/abi/Flipper.ts deleted file mode 100644 index 8ef3a50..0000000 --- a/abi/Flipper.ts +++ /dev/null @@ -1,40 +0,0 @@ -export const FlipperAbi = [ - { - 'inputs': [], - 'stateMutability': 'nonpayable', - 'type': 'constructor', - }, - { - 'inputs': [], - 'name': 'flip', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'getValue', - 'outputs': [ - { - 'internalType': 'bool', - 'name': '', - 'type': 'bool', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'value', - 'outputs': [ - { - 'internalType': 'bool', - 'name': '', - 'type': 'bool', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, -] as const diff --git a/abi/FlipperCaller.json b/abi/FlipperCaller.json deleted file mode 100644 index 6061ffd..0000000 --- a/abi/FlipperCaller.json +++ /dev/null @@ -1,46 +0,0 @@ -[ - { - "inputs": [ - { - "internalType": "address", - "name": "_flipperAddress", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "callFlip", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "callGetValue", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "flipperAddress", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } -] diff --git a/abi/FlipperCaller.ts b/abi/FlipperCaller.ts deleted file mode 100644 index 81d2ebe..0000000 --- a/abi/FlipperCaller.ts +++ /dev/null @@ -1,46 +0,0 @@ -export const FlipperCallerAbi = [ - { - 'inputs': [ - { - 'internalType': 'address', - 'name': '_flipperAddress', - 'type': 'address', - }, - ], - 'stateMutability': 'nonpayable', - 'type': 'constructor', - }, - { - 'inputs': [], - 'name': 'callFlip', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'callGetValue', - 'outputs': [ - { - 'internalType': 'bool', - 'name': '', - 'type': 'bool', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'flipperAddress', - 'outputs': [ - { - 'internalType': 'address', - 'name': '', - 'type': 'address', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, -] as const diff --git a/abi/PiggyBank.json b/abi/PiggyBank.json deleted file mode 100644 index f338585..0000000 --- a/abi/PiggyBank.json +++ /dev/null @@ -1,65 +0,0 @@ -[ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "deposit", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "getDeposit", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "withdrawAmount", - "type": "uint256" - } - ], - "name": "withdraw", - "outputs": [ - { - "internalType": "uint256", - "name": "remainingBal", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } -] diff --git a/abi/PiggyBank.ts b/abi/PiggyBank.ts deleted file mode 100644 index 44c91f3..0000000 --- a/abi/PiggyBank.ts +++ /dev/null @@ -1,65 +0,0 @@ -export const PiggyBankAbi = [ - { - 'inputs': [], - 'stateMutability': 'nonpayable', - 'type': 'constructor', - }, - { - 'inputs': [], - 'name': 'deposit', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'payable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'getDeposit', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'owner', - 'outputs': [ - { - 'internalType': 'address', - 'name': '', - 'type': 'address', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'uint256', - 'name': 'withdrawAmount', - 'type': 'uint256', - }, - ], - 'name': 'withdraw', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': 'remainingBal', - 'type': 'uint256', - }, - ], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, -] as const diff --git a/abi/PretraceFixture.json b/abi/PretraceFixture.json deleted file mode 100644 index 1b4d466..0000000 --- a/abi/PretraceFixture.json +++ /dev/null @@ -1,174 +0,0 @@ -[ - { - "inputs": [], - "stateMutability": "payable", - "type": "constructor" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "balances", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "childAddr", - "type": "address" - } - ], - "name": "callContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "createChild", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "childAddr", - "type": "address" - } - ], - "name": "delegatecallContract", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "deposit", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "getContractBalance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "getExternalBalance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "readStorage", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "str", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "value", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "withdraw", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_value", - "type": "uint256" - }, - { - "internalType": "string", - "name": "_str", - "type": "string" - } - ], - "name": "writeStorage", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } -] diff --git a/abi/PretraceFixture.ts b/abi/PretraceFixture.ts deleted file mode 100644 index 2dbea5d..0000000 --- a/abi/PretraceFixture.ts +++ /dev/null @@ -1,174 +0,0 @@ -export const PretraceFixtureAbi = [ - { - 'inputs': [], - 'stateMutability': 'payable', - 'type': 'constructor', - }, - { - 'inputs': [ - { - 'internalType': 'address', - 'name': '', - 'type': 'address', - }, - ], - 'name': 'balances', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'address', - 'name': 'childAddr', - 'type': 'address', - }, - ], - 'name': 'callContract', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'createChild', - 'outputs': [ - { - 'internalType': 'address', - 'name': '', - 'type': 'address', - }, - ], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'address', - 'name': 'childAddr', - 'type': 'address', - }, - ], - 'name': 'delegatecallContract', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'deposit', - 'outputs': [], - 'stateMutability': 'payable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'getContractBalance', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'address', - 'name': 'account', - 'type': 'address', - }, - ], - 'name': 'getExternalBalance', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'readStorage', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'str', - 'outputs': [ - { - 'internalType': 'string', - 'name': '', - 'type': 'string', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'value', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'uint256', - 'name': 'amount', - 'type': 'uint256', - }, - ], - 'name': 'withdraw', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'uint256', - 'name': '_value', - 'type': 'uint256', - }, - { - 'internalType': 'string', - 'name': '_str', - 'type': 'string', - }, - ], - 'name': 'writeStorage', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, -] as const diff --git a/abi/PretraceFixtureChild.json b/abi/PretraceFixtureChild.json deleted file mode 100644 index a002fe8..0000000 --- a/abi/PretraceFixtureChild.json +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "inputs": [], - "name": "increment", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "value", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - } -] diff --git a/abi/PretraceFixtureChild.ts b/abi/PretraceFixtureChild.ts deleted file mode 100644 index 32b6741..0000000 --- a/abi/PretraceFixtureChild.ts +++ /dev/null @@ -1,22 +0,0 @@ -export const PretraceFixtureChildAbi = [ - { - 'inputs': [], - 'name': 'increment', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'value', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, -] as const diff --git a/abi/Storage.json b/abi/Storage.json deleted file mode 100644 index 1e97d0b..0000000 --- a/abi/Storage.json +++ /dev/null @@ -1,59 +0,0 @@ -[ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "n1", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "n2", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "num", - "type": "uint256" - } - ], - "name": "write_n1_read_n2", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "num", - "type": "uint256" - } - ], - "name": "write_n2", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } -] diff --git a/abi/Storage.ts b/abi/Storage.ts deleted file mode 100644 index 13875d6..0000000 --- a/abi/Storage.ts +++ /dev/null @@ -1,59 +0,0 @@ -export const StorageAbi = [ - { - 'inputs': [], - 'stateMutability': 'nonpayable', - 'type': 'constructor', - }, - { - 'inputs': [], - 'name': 'n1', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'n2', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'uint256', - 'name': 'num', - 'type': 'uint256', - }, - ], - 'name': 'write_n1_read_n2', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'uint256', - 'name': 'num', - 'type': 'uint256', - }, - ], - 'name': 'write_n2', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, -] as const diff --git a/abi/Tester.json b/abi/Tester.json deleted file mode 100644 index 1c2cb13..0000000 --- a/abi/Tester.json +++ /dev/null @@ -1,72 +0,0 @@ -[ - { - "inputs": [], - "stateMutability": "payable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "creator", - "type": "address" - } - ], - "name": "TesterDeployed", - "type": "event" - }, - { - "inputs": [], - "name": "name", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "v", - "type": "string" - } - ], - "name": "setName", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "v", - "type": "uint256" - } - ], - "name": "setValue", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "value", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - } -] diff --git a/abi/Tester.ts b/abi/Tester.ts deleted file mode 100644 index 4b3e7ed..0000000 --- a/abi/Tester.ts +++ /dev/null @@ -1,72 +0,0 @@ -export const TesterAbi = [ - { - 'inputs': [], - 'stateMutability': 'payable', - 'type': 'constructor', - }, - { - 'anonymous': false, - 'inputs': [ - { - 'indexed': true, - 'internalType': 'address', - 'name': 'creator', - 'type': 'address', - }, - ], - 'name': 'TesterDeployed', - 'type': 'event', - }, - { - 'inputs': [], - 'name': 'name', - 'outputs': [ - { - 'internalType': 'string', - 'name': '', - 'type': 'string', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'string', - 'name': 'v', - 'type': 'string', - }, - ], - 'name': 'setName', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'uint256', - 'name': 'v', - 'type': 'uint256', - }, - ], - 'name': 'setValue', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'value', - 'outputs': [ - { - 'internalType': 'uint256', - 'name': '', - 'type': 'uint256', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, -] as const diff --git a/abi/TracingCallee.json b/abi/TracingCallee.json deleted file mode 100644 index 16a5abf..0000000 --- a/abi/TracingCallee.json +++ /dev/null @@ -1,39 +0,0 @@ -[ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "counter", - "type": "uint256" - } - ], - "name": "CalleeCalled", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "counter", - "type": "uint256" - } - ], - "name": "consumeGas", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "failingFunction", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive" - } -] diff --git a/abi/TracingCallee.ts b/abi/TracingCallee.ts deleted file mode 100644 index cdb3018..0000000 --- a/abi/TracingCallee.ts +++ /dev/null @@ -1,39 +0,0 @@ -export const TracingCalleeAbi = [ - { - 'anonymous': false, - 'inputs': [ - { - 'indexed': false, - 'internalType': 'uint256', - 'name': 'counter', - 'type': 'uint256', - }, - ], - 'name': 'CalleeCalled', - 'type': 'event', - }, - { - 'inputs': [ - { - 'internalType': 'uint256', - 'name': 'counter', - 'type': 'uint256', - }, - ], - 'name': 'consumeGas', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'failingFunction', - 'outputs': [], - 'stateMutability': 'payable', - 'type': 'function', - }, - { - 'stateMutability': 'payable', - 'type': 'receive', - }, -] as const diff --git a/abi/TracingCaller.json b/abi/TracingCaller.json deleted file mode 100644 index f43c4bd..0000000 --- a/abi/TracingCaller.json +++ /dev/null @@ -1,84 +0,0 @@ -[ - { - "inputs": [ - { - "internalType": "address payable", - "name": "_callee", - "type": "address" - } - ], - "stateMutability": "payable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "string", - "name": "message", - "type": "string" - } - ], - "name": "TraceEvent", - "type": "event" - }, - { - "inputs": [], - "name": "callee", - "outputs": [ - { - "internalType": "address payable", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "create", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "create2", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "counter", - "type": "uint256" - } - ], - "name": "start", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } -] diff --git a/abi/TracingCaller.ts b/abi/TracingCaller.ts deleted file mode 100644 index c494048..0000000 --- a/abi/TracingCaller.ts +++ /dev/null @@ -1,84 +0,0 @@ -export const TracingCallerAbi = [ - { - 'inputs': [ - { - 'internalType': 'address payable', - 'name': '_callee', - 'type': 'address', - }, - ], - 'stateMutability': 'payable', - 'type': 'constructor', - }, - { - 'anonymous': false, - 'inputs': [ - { - 'indexed': false, - 'internalType': 'uint256', - 'name': 'value', - 'type': 'uint256', - }, - { - 'indexed': false, - 'internalType': 'string', - 'name': 'message', - 'type': 'string', - }, - ], - 'name': 'TraceEvent', - 'type': 'event', - }, - { - 'inputs': [], - 'name': 'callee', - 'outputs': [ - { - 'internalType': 'address payable', - 'name': '', - 'type': 'address', - }, - ], - 'stateMutability': 'view', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'create', - 'outputs': [ - { - 'internalType': 'address', - 'name': '', - 'type': 'address', - }, - ], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [], - 'name': 'create2', - 'outputs': [ - { - 'internalType': 'address', - 'name': '', - 'type': 'address', - }, - ], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, - { - 'inputs': [ - { - 'internalType': 'uint256', - 'name': 'counter', - 'type': 'uint256', - }, - ], - 'name': 'start', - 'outputs': [], - 'stateMutability': 'nonpayable', - 'type': 'function', - }, -] as const diff --git a/src/build-contracts.ts b/src/build-contracts.ts index 8738422..c3f8e8d 100644 --- a/src/build-contracts.ts +++ b/src/build-contracts.ts @@ -12,9 +12,10 @@ import { basename, join } from '@std/path' type CompileInput = Parameters[0] const args = Deno.args -const filter = args.includes('-f') || args.includes('--filter') - ? args[args.indexOf('-f') + 1] || args[args.indexOf('--filter') + 1] - : undefined +const filter = + args.includes('-f') || args.includes('--filter') + ? args[args.indexOf('-f') + 1] || args[args.indexOf('--filter') + 1] + : undefined const solcOnly = args.includes('-s') || args.includes('--solcOnly') function evmCompile(sources: CompileInput) { @@ -72,12 +73,12 @@ for (const file of input) { args: ['--version'], stdout: 'piped', }).output() - ).stdout, + ).stdout ) console.log( - `Compiling with revive (using ${ - Deno.env.get('REVIVE_BIN') - } - ${output})...`, + `Compiling with revive (using ${Deno.env.get( + 'REVIVE_BIN' + )} - ${output})...` ) } const reviveOut = await compile(inputSources, { @@ -91,11 +92,11 @@ for (const file of input) { const bytecode = new Uint8Array( contract.evm.bytecode.object .match(/.{1,2}/g)! - .map((byte) => parseInt(byte, 16)), + .map((byte) => parseInt(byte, 16)) ) Deno.writeFileSync( join(pvmDir, `${name}.polkavm`), - bytecode, + bytecode ) } } @@ -126,7 +127,7 @@ for (const file of input) { const bytecode = new Uint8Array( bytecodeHex .match(/.{1,2}/g)! - .map((byte) => parseInt(byte, 16)), + .map((byte) => parseInt(byte, 16)) ) Deno.writeFileSync(join(evmDir, `${name}.bin`), bytecode) } @@ -134,19 +135,11 @@ for (const file of input) { const abi = contract.abi const abiName = `${name}Abi` - Deno.writeTextFileSync( - join(abiDir, `${name}.json`), - JSON.stringify(abi, null, 2), - ) - - // Format TypeScript file manually (simple formatting) - const tsContent = `export const ${abiName} = ${ - JSON.stringify( - abi, - null, - 2, - ) - } as const\n` + const tsContent = `export const ${abiName} = ${JSON.stringify( + abi, + null, + 2 + )} as const\n` Deno.writeTextFileSync(join(abiDir, `${name}.ts`), tsContent) } } From 9fa7d3127d957dddfef7143af6f5469fad3c6a7e Mon Sep 17 00:00:00 2001 From: pgherveou Date: Tue, 21 Oct 2025 09:57:00 +0200 Subject: [PATCH 3/5] rm --- evm/Errors.bin | Bin 1889 -> 0 bytes evm/EventExample.bin | Bin 466 -> 0 bytes evm/Flipper.bin | Bin 353 -> 0 bytes evm/FlipperCaller.bin | Bin 995 -> 0 bytes evm/PretraceFixture.bin | Bin 5168 -> 0 bytes evm/PretraceFixtureChild.bin | Bin 335 -> 0 bytes evm/Tester.bin | Bin 2748 -> 0 bytes evm/TracingCallee.bin | Bin 695 -> 0 bytes evm/TracingCaller.bin | Bin 2825 -> 0 bytes pvm/.gitkeep | 0 pvm/Errors.polkavm | Bin 5261 -> 0 bytes pvm/EventExample.polkavm | Bin 2617 -> 0 bytes pvm/Flipper.polkavm | Bin 2424 -> 0 bytes pvm/FlipperCaller.polkavm | Bin 4475 -> 0 bytes pvm/PretraceFixture.polkavm | Bin 16441 -> 0 bytes pvm/PretraceFixtureChild.polkavm | Bin 1867 -> 0 bytes pvm/Tester.polkavm | Bin 9358 -> 0 bytes pvm/TracingCallee.polkavm | Bin 2594 -> 0 bytes pvm/TracingCaller.polkavm | Bin 8453 -> 0 bytes 19 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 evm/Errors.bin delete mode 100644 evm/EventExample.bin delete mode 100644 evm/Flipper.bin delete mode 100644 evm/FlipperCaller.bin delete mode 100644 evm/PretraceFixture.bin delete mode 100644 evm/PretraceFixtureChild.bin delete mode 100644 evm/Tester.bin delete mode 100644 evm/TracingCallee.bin delete mode 100644 evm/TracingCaller.bin delete mode 100644 pvm/.gitkeep delete mode 100644 pvm/Errors.polkavm delete mode 100644 pvm/EventExample.polkavm delete mode 100644 pvm/Flipper.polkavm delete mode 100644 pvm/FlipperCaller.polkavm delete mode 100644 pvm/PretraceFixture.polkavm delete mode 100644 pvm/PretraceFixtureChild.polkavm delete mode 100644 pvm/Tester.polkavm delete mode 100644 pvm/TracingCallee.polkavm delete mode 100644 pvm/TracingCaller.polkavm diff --git a/evm/Errors.bin b/evm/Errors.bin deleted file mode 100644 index 2d17f6908ec3f19ee07e2bd8cbc70504d1b801f7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1889 zcmb7^UuYav6vpS?xibj?wF$e4OJf;AM4=cZwh_@nMT{aSv)ee+GKG7Oo3#xj*>*Rn z*oZrKHYxt0I!Q|vY13%INR^5-edt52)fcS~J}KB*6huMkgA#oZN#dEAoyn$}kPfr( z&AsRT&iT%{tZ>El+!i-2ZnZgIa7<`;%mt;LKgj17MX)DW&jwH?Y`#_e*zV?!OkX(E z49ZSBk||LBLV4=yuAvl=W|SYEq#Y<9LV4-Lk$+I;QU3kGzVj##+laCpH_wj!dIrzF zf?J)(Hol7TB+4Dx+cPN7p`3VW_C1te*-lUv76{7GT7}99Ag3%xiB?a?t7n1yoUDEt zuYL*CNLIg%SAPI{pXG?{Sx~M|`k>12!<|(9c?ZaCg1J4aBtDR)VD}5l0s2%-A?-B^ zxfAGAL?PWbQi6&}ZyX8B#N8Ol?na_Y6XI|j_dKX~)QICj+_QCcg~Yew$ag^P3eIyN zKiO!c()jrcGs+r|#7Pn$SCINmLS1k|xz5A1%?E8;-C+*2%LaN6Xvo2rb3uHQbKi75 zpuOloJ7+mlrfK>(^eri%Z`?$!^pFqwy>;o#D8rtm+9R9OKtI9)&VY{N3Fhg$Ud|N; z6$bGL-d>yny=F`N6oyCLp6UaxM<%fz)4`uBsLaX@K>tL@Jm?1lNO+iJgCH!LV}q3@ z*(b#k&9wT}bQ-(xj2V{V_u&muntUdfTB93OIXwLSCu%kgqy4y+nG3hGf_CF7u$u$x#|(1!(#osD8;3e=CIi-9|GYjEH*+?r0J5i_o~ zq(QxAgZe$FZ=+ET>Tl!T1Oau#1*1?Z6-!C8xkqwA zV}M;0ZB<}nK~i9sJz%e4r^7ymE#{GyQpJ=xVAmzEvzAjcy&}(nLTTiNG)j_3yGyht zd9-fKgRNRUkJcwa+qj(P=_khaC&mAd;5k7A%ZW~$bY&gEEpadh?V=anA@r|Zu7+~T z^gz2}gZ3S0FXQk%kNLHUSBA=ax(>kLXu;?&7RttOal{yck^EjGTvV1F>lv{rajbVD z5&v*kcdYkH&~LdZ$B)D&*5kN430}S%`O)%7acI?<=~wG!rvKuBKD(BKhDLPob?jjA z-Tr}n&y{y}v=|rqQ#0AZSli6&$CWparyeK2cW+*pJDtg#A3QjHY3{}Ta&a*KsM5Ge Gx&L2S{6}U0 diff --git a/evm/EventExample.bin b/evm/EventExample.bin deleted file mode 100644 index 3f3274ef98e780c25ff7eb0cc9d8558e6e09bdae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 466 zcmYdjNN@-;X%J1|3y+Wg8y%3yxUC_PK_=cZ{`0>Cs9YigKSVNt#Y`ZPK{GtwG~t0v zL-N}v{o6$n8Fa&=L0S_TOcNQ*!=f3Y;}Z=mCj`VNI0OO>U<8`qkigv-l%T*^?~$65 zldn*oUzC%=fDJST1xyGqF8+@Nh}Da>nuoM&=70KN&b#i7lL)&Pv$o;-rW&Cn{gq35 z#ExHRZU)+z$gpqH#0iOvL1ED#`zJC_SQHQt79HO>AzWef z5HKMOD26Q5h%O+C!$&}MjiRCx0wzuf0NQ!8G2wVvbW>0OkQ1Mv(8M?)AmKxNGh<7_ zrLgEp6M@427Nuksq!mXf2`TJeW~*6MU$eMO`8rIR;|@r#pn$ diff --git a/evm/FlipperCaller.bin b/evm/FlipperCaller.bin deleted file mode 100644 index b31ee15cc76694493a38aced95035a0a3b25d522..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 995 zcmbV~OK4Ov6o!+`NJ}YH2Iopq>>zF`f`|_+GFt6M(8cZ0xwkfpg9guhhp8tXzg2Q= zsZ0gMSOOpQ%?I)o$Yqb)^Hz(&RSM*_$5B?30{f_dc8Wf+Qk5-U#E)zRa>5sfWo4(z zjs190z}5r4%H97o_X<4>lEtP{tY@I%n+864ik?w$zWv15MNn9$5}od;GKz$I})N9Jcv?c2C{OWLvw-RK5MRk)L6|+nf4fGA(<$Wlunz zfZAVjEt2%5^$q{lxCXBj`Q8mU(Zv90c^xOZs)2s-c#vr@Ly;ubB?`0%^m`K~olG_e zWW5?#vZdrySi(}x67&gJwx&f|nb=G#o5a-Frn*5ZoAH6&0Cqa0mCc5cPCO?rpoU-duJ!6rtdy&`&E8(uKjKG<_xXuJNcmPGYb|+^A{&_1EhTyIrtZc CliXSW diff --git a/evm/PretraceFixture.bin b/evm/PretraceFixture.bin deleted file mode 100644 index 492961a2061a19ab3aaa3aac7ffa249f47e95b1b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5168 zcmb_g3vd)?9lvk)lDo@2Br!RRedItK9@bWdKns%cXepHnY;G=h$g2DOJrW3w;SoBH z)7tFglJKz1UI3jc&`LX<7MzO3juxweWePJ44wm8!BWMPE)aSHN+79yY_wC-^CGm(< zyqWC%Z@>Tde?P-@K0DdSnKq^CTA5G0{97Z*6U=s=TEehf6h29FzGgRr9s^08`<>(N z_RjWoz7ak~QsI(qkT0LNNqRG_DkMLXRyCv9R`RxzR=XEH_~@Du2>7%lpTqr0K2E!G zL&#%2WQ|Lv-&Qy?<2tdL4DUAMc}3+3bCe+y`(%dLIP(1}t*WjhP*E|!Eukd}vS~cQ z8!QGQj;NYx-eN2Lc?Du?JZMS8`ntT=K0h7jyM2zHTt--9kB`^*&i{sj@` zuxa*?^pJ2F{0e_oL$6wrXJ)iq9m$h2W*n|lgVvh&1MVYiscpP&9>s{SW1Scdo6*q*+C+CBX8Ic2UTccwIKEwm)1*cy>N*z z2R;ySl&+J!SDUU~xXMMoa{shZe*FKy|S^IeA$c()*=o7KJ)DU$pB9S z+&5`epq8XcfCqXG9RfHP;6e4p9Ke+TkDrU~1-LZ>s%cfve&Wr0{I%rUjid2rr=A1& z2EaQ%{*8s87y~%@(wW}_oCa{#v*+glw;OiVu63>!@OJ0n;dpxy{4eTjIS(U<&;zQbpcB^YC7$ z3S_CH&55!U|LkGDO%;eW2lEOrgLgYWN_tDx1x)FVB5!GYk@sKSyVCS>T%?8G-4&&~ zS;6Ipkh>D;@A?J#>iSQ5oGQl`C~g8?=ANT# zO}Zu$yDfva$jpX%KC6kvP0_EK%w!YtKgaGR`C+KW(Fhd9R*-l<5a`{(*S`L=Z-fuJ zou85XoK018i>5*3i@J#7m(k~~&Io(ckd@)kc&TclcA}-?yU&qN_Olf`kXX{YoDxP$6Wa&H3uRWP2 zO}n>AR6X%Q49<5siF;IW7_}i-6h?bncP-2VWS;mM8gfk8PZIF%L}-5RJkXE8>6Vw z#02Eit(0G~l6hRs;|TKt%iD!1NHtO-g&DJPs$11mxjAFnGH*aqNhuDI-yp1 z4cf&}$_t@}BE=T#6uWFqXTnslw)0okk!IYRhbZuXNrBsn0}=(&1_fqfKB=Vucikuq zKNV9=U=5BIf+M_vcPK(Rxu%W+7;gfbC{TwfLZiTwIkSgRAS;FtZ!q!ZGYb3&BzD1K zNsojWmjcH$i{&T)Q@XS%aN5NaQv7L{6z}8cgojy_B3P55V6`Vju)&q$FN36@;AGr{ zYD1X^7dXs=6N)4~(>dQ3Z^*G43a$b9)f9x{stIEZnWKW6arguU(cCaATbOYyj5?CV zFk=OG z#UL8`m=JB}cPNmKot<~xskPME z)z-SUoQZ`Qit2~A@Q)PL5AOsaZ6x)>2Mh}L71h_wqGNBs5dVk$HZphEej91YP$Wg+ zt1#LByx&HC++A*F8~o0s$YTio$U*G40{ZX!Ek!O<YoiFl@@sAML}9Is{^UQ_+UVb~ z)o&!^ZFvDZe|BI1iXZ45mQJ8f){ z*lAJMfwcrXZFIohX=A^D^3F~h>+E$jE$pJcGpm%H1jr=RCRP*>rQ&7aB@;gfaqTUsZ!!Km`dH%Fl z?5^%w*1o!}YsuJ}#HV*uA6nu&``*r9{#{!3^LfW!UB7?-Z@1Szc6s>>`>ofG?qAlm zsv~=!FL=9eO6iic;?(`)XIyye<$-gXcEnq1HmSQN&KmoNO!ui%U85V09UXM(-@Zq? AQvd(} diff --git a/evm/PretraceFixtureChild.bin b/evm/PretraceFixtureChild.bin deleted file mode 100644 index e8bb62224014a53e58974254a8c847f8068ab99b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 335 zcmYdjNN@;BV2lqnX%I~i3XhNf8y%3ysNaytpb&2v|M_16NFF4|2a!u)F%w8I2#+^S zcp%e|Y`^4_t4M-Lcti4qxevNT68yrWK_(TM}x3>L-GP>-{{c3mNc$_@D&A1eTx#6`;f76RtLaOq>{yaIYD} zm=w?iGPI#dP&DClc*3WI1!2(;ga0i`$t*}Kj!+U((48xIB!c15w|R%&Fs1BsJ-er4 e*RI=hL~8z|TTOUz`1G!n;{2RsX9f;A24et=t9(WP diff --git a/evm/Tester.bin b/evm/Tester.bin deleted file mode 100644 index dfa0cb1b3f60146dc545ec919783ff23582d172b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2748 zcmbVOZHN_B7@l*^%(!9X?&jXbwDyvkrACsjvEavw6rw5PwmYMZIOoML#6?RZl|FXn z+}ZUDaqjBc5>a556&Z*>qLdKJUn&xq{mMQN!J-5=G%($sGjs3msw-K;GWXp3zUTdZ z-e+Yf8=EF?=pE$AwSD%YTsvd(=O<@cy^Ai_k36`k_m7=*BQISYzj5!7)n}jlSvD@j zUsx2$J~=*!k`_mQm5mHGLpd~Rl6lrPXGLr4y8Om<>syx_gFR7`BUuuW(OFE0f9LuR ziT$o0L<_Ao&II*p5 zgOv7`pA@nAu1~D9qmZ7uoNz>(+wFuMxwy8|ah%=yr7KeQ(sv+sj@Y-vPQ}DN(KZh2 z7f!cp61xoJM^fZj;QDdgOl-01s}|VT4uZrc74ermN>*GXcc^|Q&rH|35}%@v5DHoDp;7|`Vo`)c76R-57FcI?Zj1k zDk?A-8?P;7eo(|weMKaGFc=Zb3QoM!^+$vSG^ku);wK6P;_teC(NU6fRa?GB{JbKg z+x1tKD;?>;t|73iWb8vOB$#R@<8Op0?pKI}Kd)PczM`L1$ZI%>>0S`mkeJ}9Eeyj5 z&H8qP`lai4v|vcz(FvndB<6Lb$p*gC6%y;ccpF=&S}<3v=pb*l2k*2}0-f$CXr*1L z5{VtMZd(pkkwu{ev&SUg%Gp-k5?u~F2yw{Jki?;&A?Ud&HDITNHDnC)0t~z(&8d}S z%=LnL`O~OynSJBD7*56lFI+Zr|CMKPY{ju; zwnWP$3!4F}gv_a~AIdt6Mp!gCmIb0nFe%s`SO!tLKa|$JUec{0_MC?smBbzfIE}E- zZ1O@=5m$>4VU$@hDFM`vnxm#fGL}FZ7OIFn;i*K(x*U|U(ne@`GhSi3yHMyb-9&5+ z;}u3I*1b_9(zC=v9y_Lyy=Yz-*n)`bdOH-|YIk9bzY= zcA4*B#I|Y4S-|8iAQ5v?p6bj+6o~+)iCv2TpaUAwrL|H9Kk+JD?nTZBAe~(u8jys0 zG4Tr5FYh4~RpVN>J8e0in_a|=^X6=bAdTwv?G+L6S^Zb@Di+m1P6*_*5pMu;0suT# z?TommfmaTzWc)uZYvN~7BIF-2?3O;Ps;XMJ?19TGDK5~K#!`_fXzw7 zkm&RW+y=TPc_g07E|X};oB-M>2vdDD@0kJ3Be9YM#Uyg*3ddGR9HqxEVsRWZ><*z| z5w&?c-5t6BBrtD%yIJYpSCjY{Y9A5btJh^ci7#T6c3U(LtQA_EmQ{QY?Q^BFDpuc@ zgWgu+PY8RkYqdwyNJ}od2AH{*QV&jb=KR~J&XgXR0h#x~*Z-zE^Y}ebow)@CHcx@- z^y%NJj;tYMaWZcJ1(<%}H5kFVC`*9RAVIU%~I4ZqnndU3;1clf8L W_ne&e>zU;n*0nC1ZB#sBO#TPr_|=;L diff --git a/evm/TracingCallee.bin b/evm/TracingCallee.bin deleted file mode 100644 index d4850151ceda433b79791e81e917a36c1c0666ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 695 zcmaJ-O=uHA7@cpohvGqNNu_9wiy%_5h_p!&1jQdj@UUHEwsg>$kJQ+Om0GP z)OuISmax&73y}56ee&0;iZRuZ??SfQl{xjbFDTsYUs}i@8+L=j`)9=h9i@wGkc&Kh zT_$1?l0$Z=t;bHOjv#Mph>(poA_T<+GLH*J+gW6b@kz?a7HXaDqQOTl*^Vd+kX?@X z54lM0x@MZ%i6~Mq5)o|KL7)H{wvDXJg)w)v;-;8tEG3{j;UaVrDTJqC9pMJ$vO;Qw_~|6VyEIOl7{hUrMOgzHc(WEJ44o89 z=c*?sJl`r#l?xSbvTR}L0?yDKy^^0+BtvkL_Kdx1a}D7~92brKl&zJfXcrPclPtA1 z$rcU^q2 R)q6YcPnHUYS!b3F{sqf3@5BHA diff --git a/evm/TracingCaller.bin b/evm/TracingCaller.bin deleted file mode 100644 index 42007d288213323010cd6cfe5feaed609d6aebbf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2825 zcmbtWeQXp(6rb7MyFgK($kj^uI6*=n@?o&8sMQ8E3L3I^!CTS|?mVt{a(K4TE0|(p zclKIr(3mZS7(xx8K~Rw(CK@FK2}(>fO^OPd5F{i5F`_^PqFC_F?0vN5ieLN3-R#c$ z_|2R5e(y1xRfk!12!;*4PqpzkJ%@9O-#B%FOm269RzyrIb-ln-!V7;^fpi#Xvw6s& zrmf^A4-Yeq0$GPn_C-w8u-jF)*R(AQC@JEL3fouiC~?z;JuA1nPw6_)?-8=qI|yv2 z#MRqf9Yuip93aOdX66IX00(k4V)D^ICm6zn5aS^iZO-CAZ;6=e+ja4c1)UakQ~>A` z2G9jSzKfW`-r^Rgl>(g@F;Ofd>NsJPrf%lFc^)K_u~-mlYa3#zR4@v4b@h$GrLo|e zSVKKV%W`PgL${rcO9KUA4Co#Q=t_)|H09y<)|{(WnudWML4=#~hZ#D_2720>WA$8P z;+F5V13*T2r(#;gNFWOgtDK!2YezTQOWqp|WT9b4yMCDw#N~2a{`$q3S8&;e%S%6X zb>Z?YL&g=zGN#!Ts?3on=7@SZVgmUrViNpo0Cj@AO(4yBlZO9{ncyBIJ)_Ggn zT%Nb->NeKCD;4HiWtgN~Dk94XMJ|#~@SJrCC8hF?e#-0d+E5#mk8JQ)rsq&;3dxLT zSxWtugL+7^l=_2rH1x*Hk)_o0xb@WyETs)IKq~_EfMhAHRI-$MsxM0w416D|)D}3P z-I-?>t%ieE9WkA7mJgBPKuaMNwSX4NK>#g1K(PZAn{H6t34Sa9XMfH`9!?hrUt1nd^TNkpSa}nt#0s-w zriIyEq8Wn!R!8Oyb`yVTS}xb?j-$Fd=fwf=&oaP26MRQ8N#v<=ZG#Q>vJ8~XHjuIT zmg2RMyR&UXa2IxoN^BT{32>aWT&CS>&OY(hWF;*|dSO7_QedHM+ zXT%DbR5w`>ABpX2mw}xu#DX|AvS#Ul)Yr^U#FvkVvMye9V=fat|AWL(Dl@e#(Q0t=B`59m4t#G0M{%l*w6|x%NhF zVnsZ)c;cwwbJri4*;*XG{9|YN!B0OZ8~?RFy=KI*j^x$V(_VagT;gzTsy-Q=M}~|i rv-3*3E2?Tj^LKTxI6bZEjPvX!y{EQ(c=4V+YYq%Ql5F~;vyakW4a|az diff --git a/pvm/.gitkeep b/pvm/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/pvm/Errors.polkavm b/pvm/Errors.polkavm deleted file mode 100644 index 336f3ff9d08205731e700f542eedd0a058cdf513..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5261 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 I@q`WiFZOI4tpET3 diff --git a/pvm/EventExample.polkavm b/pvm/EventExample.polkavm deleted file mode 100644 index 33703d276326a338d84e0f8fb57884da36eb6ac0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2617 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 F{|4DzQO^JX diff --git a/pvm/Flipper.polkavm b/pvm/Flipper.polkavm deleted file mode 100644 index d2d9753ee7e1c08f21fd1c7d23fed6ac404cff00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2424 zcmaJ>O>7&-6`mz2?T~hySw++iDaBr@RJ!(wH4%U+kd|S zsvm2}8KBHiwU%j-+JqUdbcvM6h%5n(4+UaJDxe;M%7_cN1rJ7n0z%P4`UBMMsi-Qe zZz)AG+@cG9+?lsC?|tu^_a=Su6@-`{H6BGpzl@;`RP+^pie1YwKnLIy;6*?Z&#6|%$G$$^Q<-1yLNb|O18IxwD{oEm>~0<4!V zU!IyA`rc@^;mEb@ue&ldI+Y!m93Ogf;``b0@oc6^^UQwN=lY$^HfOS9qq%&ueYe#! zI~PQ+DH-o2Z`J!Juj#ws8}ikBZB1Wm`g_xM)BDYTZKmprYF53hc4Le@=kUwExEe#= z(sZE7O!x#-L|zm;f_rN=t~6{1b#^+OMHw0_U;@^Lu?1Ph5g6+A3N`+gQrddNR7c!vLl-x+}RT<8$$ab7tW1O-AVR_7$vz}n$gtH!F;<&SJ zGV#2#ZZOf|tWzf1opr)Q*jdAjhn&>}r2%*R;am@{v(!ZXgi!3sy6c?f&NnJ26eaON<}`<-%v@@*__ zP-`x?lCwFbJWN0ku3K8d(qfioTAIm=7U&`KtIltKL1xX87|o;X6&tt351lcxZj67 z-2wRf+1vh?FuavGCdgBo-keoWBar72CzuCkrj&q3c}YdkS50b~H2c#8@4#ncmy?Hx z2Opqna0`KaU&vz=QCv+{sR2r*N#NFwrS)4{+R}P0Em_i&0acNDTGDXqRn^ke-) z73%Yxs_!wdzRmxZ6$mBK_e}!wZ8VQsQbOcc6~r z{(yORJFdFpG$EfpF0r_}&qt|h8#`4UdH7g@PsR8Zvl>i#+~gzwgs6`ITWCN3Etq@` z;aWfZcf1+o>vlE#mhSsVDd`Xp2NdNky+i3c`|>}QzW#Gq%piv`zzARv77Z#5sm2sZ zp?E_hiVP1b2XghP_fW&-dENUP*zLfsYXBQiRH|;qw5X&>TX;vp1PaGhAdZu9M87!P zOgS?J-JPk$k;nWUtaFg0*N_a^NVXLbTpjhR{yOv+TtTyqYorFpG=cig-ul}gfBhar zy#vv11C{{`zPg=hV-Dfvfc18N&hJecG`6w4sKCPT!e6r~@bg zt`BC0(NIWknLeDh4nC2Cy^s*u{Wd0@#_r&UljD zSDzx+@znh20dM84;fuOA)c9`xr776t{@$AFEJCu;mfpbHJ8TZHH3(gz~$D-@*LjstzWKJZWNl3aRf4 z2?gsjf3Rys`e9ER&yq8H%f`_XFjf|aV=h@P~pl@)k* z-GX7u%(d8!7j8zh&d$nAG-CZ0!lhGIr6tu;w&B4M&o}Bli>WVFdOBs#3^`NBVEtxK zv`jiXJI_QbODU_TrxLwawCxcX;F~R}t{bUTrL}M54WqL&tX+>To?kqFvu*K=2|Idv gdO9`j`jSmnTD0rEi5bSGBv)NF|4h6+hp z2^Cq6PJH(V^C(+KCov>eSDv(PRTF2DrJ!iAVs>nGP&Qy;Ru^z<4iFp^(~4qCfdTcF zIZ^DU-uFoP2ePe#KD@_w?|t9*$LITfU#f?nM2PrM?T=y6yJ57B@~-^P8toYuzz>iB zj{trj&;|GtzyKf%$N^pjlmX8k85yxLkUTPeWZ>EC=;YmRBiSR#yWfswazoE%lS2dc zAT=~TaBMs~b|f`4HuT)Uc;@+`fsvu-#>a-nkB_}@SJ=JZ?S03Fj*JY{Cy#-M%=6D5 zA3ySqk)hfSduChcOGieI4-Jfu9eLr{b3&`W&$92y2_pYV}x#3{L@dmFu<9^ruU+!D(6YN{;+w5ib5FWti z@DA>N?q9hbyuvT?tNa@ObN=6Xm*f~90x6&&Ao=o+I>>N$r_oMi)7EnHp^$`{4z z1-`nB^~nZ3=hBH=*V*zsuAb$}7lraAvHBxV^&PG}FI9^UeUj62SSP%$d;a$tJ=drc zudd&xYdgv-7{rz@31vg9Rxrpf8&cJB>Y7i_2|DrX`c7L1n7?z%d93G}b<(8kE&62O zu7r89`aWmtW9z`{TB|-O>ZDEAcWqm7uY}3_b+TL6AJ8ZE*cyW7pu>b%eUGh{+46)` zoo2HW+2!nk>_g;fk$hbs{h0hI6)2#%qzIl= z1y>)FO=rJO+p;Tk7tUVPh^XZRZ4zsmwHDR%J=R)S(;u+bWKF-{T9Y(=x3wl}`Yvlt z(DXLzBGyQ&wHnn(z*-G!q{Uj5HPURYN*ZahRz;2Mv{nU;_^lPJ<$TscRLkwK7Q$NY zK5IeNa*fu4q~*NU0vzkH76dKFTk}|(9UHVHtDpA zprgYwKuv}U5^WY~i(vX>+u}tc^pj?lw8YKk!71Nn@+CSg(xO05VQPT4=CdnVgNPz& z6Tl%Pp!lMSFRb`v#V5smF{vOH+N8p+ScJP3Vfh9ch*B|3TV>iN!EVFePliR35l9-7 zl-avTg?`$sQaH~yxF5YTDI~Z@D;h2sd!~%d!%>8ojtJ*MjsrY=eD4%@5W|y+U;#M_ z6P0OpKLV}m44*pA@J{9+iy#RaSXFRys(|-7OyBx%h!AB+bC@A5GGjK!7_dxfKaZ65 z?*oMG-M7)=wf$t+Ko=3EG8PT>y1gTM7Vu30N_7ro#4YJEA$(oSNi9J&jo2HgW z8yZW*JR$)D%}tQN42rNZ6DE{)3#kJC!_OjY9wpPN;O)3om`J809M3R)EqmgO85oS< zJS@8JnP1bEQQE3Cf%0H7;7ZD7sg;%tgCVWrob^qu7fYaCnglQn43dDLv~R#6mjM;P zIx+)r?mCDQzVw@XppT0EHpx>gZ56=^rF{!lT?2dw*aQQC%$T9A5J<#8NEr|bDs3WD zL`($v?~tL+1Ug1@m=b|bh_nEiKwlN8A!f(37l9HFW@+{k1UE_oHEQg_q=|@8(i$ea zW#X^X!sdiW0$OpxKW=Izw=o^i?9(cg4%da=C=n7n0wO;dv-tq3n5XSrxQ8D>d3b`VR*Nm9{6tO(De@k1V1K!*DZOT3HeWpB95 zlmux9VUphd)J%i$Vw9c=(^q6VEmi-*TV29X-0c(I@|G`2FizmVa*?AF8J0;V3`R0w zBmgl@oK5nxzxu_GZ8;8b+s4hFq zbPTRPd)ge%JIgCl^%PIj@$Hp0HSIp7YIz`&?4(Z*+Uu*DH-c{gos$pp;G09>n@wOP z_(nFjXle_AJv4O<9-!Ta@Q6`Z033;+hj<)u?32gcs(;^$?gS>znII~7DPtlwM4IOlB&A)w5lgQmfkVSIz8MuEqmaT*?=@gO`@;1sYHEZcwa6Nr|B zp6aKssPxr1osL!C;;QHD-ocJ~y)UpJ>dOu?B9o(GG8_eV0>x#3Oyi;{z6 zqIS}#!ef8A1yN7g6xAe}iD&2Sbhj|gsM-1Qf)uIo@Tdw-f;tTEY6Lw5_1}4r1Ij9$ zTYzhT4*{EXa)8_~p8ph#iC_tgRfXuvr}0kYk|1SVpcFs`NG`Db-e8NhU;`~SZ_^?p zx$3>fZ>I%veV!HxHpK9liFl;%ox?m%5{72_>2Q>$!Za-_Epc*GHAjH{KUzoR{Y?Zh zWJm={bLVA-ya#2vbAtg|K|-%HXDm;G4L5Jg~mq2I3kWLuP2TS<$(&@8Tm$>Q* zdsX9lxkq5jA_H7kg+K6o3{`}o=in+k4_Dedi@<|rn}j5-LOBJF8J2?#$L5yj;AZ(p z*qN{A_o1I$ukW;A=M3yLU}qlL<@nU+%W;CefFM&L>ljiVgfNnF8WNI}MBsfU47C4Sun2uc{=1KB>3ulhd}#Zy+vb^eJnUpod>eMXoKfKg&w&bCV9GVXhk#87 z5CKlxgxjs}qw6%22Q3VgPtPEwMI-4^l1keR4aApZ236tk&;I*>-I5)azk>pj6Gn@m zo86shc_e%948g;atzbW#X!=HP5y3#D8QP{6&1{}QQ@(4-F(~}=mxaxcO^k08abSK=0sfafU_(~7A(c`{qxi=ofSJt?V zHP2PcbLBz1uw6arNqByj>{LlxKY?b=ZtPUDJFN;&|Jz4q@8~TGR#32lf)&0Qv>z$H zSiL2#cXBV1_*YFaOak!;G^Bt2_DA(jS@8*f6k%PaC@4Nr6`q;@sP04Y4?Q&(#AXl3Lir`07wODJdwttV|{f_pojP%?wu&cYf z`wNN^JYg7yp!6ub;`jR#U+@QQBSJ+31^qoG5FQGhFodqSKNc*86r==|$Aj(uVt2y- zdbh$AUk@@q-%sFV|K9GdkiR$uswjRX7|a_}iA2d?3QY;V*{M)F7{E!h-K9`IG#k4A z$>CDSSNltp`bx%BP4%EZ7=+WigCKxY|+g)e7PVmj3?U%c| zOH=%luNm=>-&a(>yHaZUZl5A&z#vd}c1m!x^N+sin~isL+zrT`aaVV!#~(|?g9`R} PJIp4qG6Zq4SEBy`lDe!F diff --git a/pvm/PretraceFixture.polkavm b/pvm/PretraceFixture.polkavm deleted file mode 100644 index 780ec043c6af7aa8654aab1bd847a88cd3a4dc39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16441 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 diff --git a/pvm/PretraceFixtureChild.polkavm b/pvm/PretraceFixtureChild.polkavm deleted file mode 100644 index 40c703682cf80a7aace8b34c1edef0e38a86dc10..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1867 zcmZuxUu;uV7(e%}-90S>&z-cr>n7aQGOxskN<-`(kP1U~X4JbH$b2wcVYS^D+_?>Q z+B4!f-Jk`GqF?h2opbK* z``zF7oonuW6`@xYRQ*W`x*kE-(4=efeO#GY2WSCo25bey0SUlcfc?p#q2B)FSh9D& zHJp7M4Oz+l$I<9OE|pG=^^T5NBgu4XG?g6c9Z8KH9yv4$vjYbY9v(~X8%kA)Dl-rE z9Z3!yPW6tBBoB?gof;WQ^}AJh`iQH-JAJgiKQ%mLW$TZhCi3)m?ImQ$UX7|T83 z%tTmjoik&w+*)TwXSoJv2GXu^W(do9owJx_Jx(#kvWioTux!0kG+5T{6m^z$IYo_S z>zpEJl$`>|lmyX*PZNG(tHu^&tFxT+aG%Njowl!UN?qa{WIuVEoEh3r>5!B)7LgjfrsPO^9 zGnl9C?pZ;4gwGU^PwiVJpq5>Xh#VH2h;dEi!F_R>h=OK~Syw>DGnTM!0%42?s&bk! zU(dA|Z;J31gE!WsRCKJ-K}!9jT-8LUvLxYoev#pPVdGR`d2b9MX;akWLUOwoE*DRF zwqdwSQB07WA74D7Y(ZeppPXRsn>s9cWoa862)Wy>n8f8VN&Qc-+;^W72XWsSWcy|j z*hf{3s)S0DD5}K!VT?_J%Xe41mJjG&MG}FC&|)>CmK?nFm9lg~=~n!;{Dr6@MLkip z&g(LIsoFzTld7FmjZ>9Tb(pFds`g2CAZ}}YCh=aq*Ip67S9`ZXuYy;|CTaNlUYC*}iL1r49VF?KYxqw*YYTD{o_G zu0gPfOhSHJiB`PeX|26-eZ=F`hS@0Fxu=@rzy`{eQ`w+0itcl~u?JEd)!MB4}e z1CW$YBMBU^4cb0`>-So%=A)H6K` z41JKpKe!^&^GFPQi^Sm9NF0C#Z5jHu|CoJ6DlABgKYN$T4TYQ1;<<*~=RAuaEBrL! zCow;@l=Cj#ShIB5%TH+C-sfnW1Kei-1;8Zam;`?9)XF1Ip*>v2rF*am%3Aaf{m@A5WO%J zrXPgqj%V#K4S8DSol70(yPgh(cDahUwe|Ctb)u^8g*Q=SkFn<)RsFTI6!v_9zredX t!aGXgVt9&Zp{=1%sG|cml>jiFn(OF5>U6j?MXs9(+Il`r6I~^Q{snPrBaHw6 diff --git a/pvm/Tester.polkavm b/pvm/Tester.polkavm deleted file mode 100644 index fb92e9c4f88427db50be2f8dfbc5e8354050507f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9358 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 Gh5R22C*w2# diff --git a/pvm/TracingCallee.polkavm b/pvm/TracingCallee.polkavm deleted file mode 100644 index c8d73834ca2b97956f9c6472538db739d63cd603..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2594 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 Date: Tue, 21 Oct 2025 09:58:05 +0200 Subject: [PATCH 4/5] fix --- pvm/.gitkeep | 0 src/build-contracts.ts | 35 +++++++++++++++++++---------------- 2 files changed, 19 insertions(+), 16 deletions(-) create mode 100644 pvm/.gitkeep diff --git a/pvm/.gitkeep b/pvm/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/src/build-contracts.ts b/src/build-contracts.ts index c3f8e8d..c229089 100644 --- a/src/build-contracts.ts +++ b/src/build-contracts.ts @@ -12,10 +12,9 @@ import { basename, join } from '@std/path' type CompileInput = Parameters[0] const args = Deno.args -const filter = - args.includes('-f') || args.includes('--filter') - ? args[args.indexOf('-f') + 1] || args[args.indexOf('--filter') + 1] - : undefined +const filter = args.includes('-f') || args.includes('--filter') + ? args[args.indexOf('-f') + 1] || args[args.indexOf('--filter') + 1] + : undefined const solcOnly = args.includes('-s') || args.includes('--solcOnly') function evmCompile(sources: CompileInput) { @@ -73,12 +72,14 @@ for (const file of input) { args: ['--version'], stdout: 'piped', }).output() - ).stdout + ).stdout, ) console.log( - `Compiling with revive (using ${Deno.env.get( - 'REVIVE_BIN' - )} - ${output})...` + `Compiling with revive (using ${ + Deno.env.get( + 'REVIVE_BIN', + ) + } - ${output})...`, ) } const reviveOut = await compile(inputSources, { @@ -92,11 +93,11 @@ for (const file of input) { const bytecode = new Uint8Array( contract.evm.bytecode.object .match(/.{1,2}/g)! - .map((byte) => parseInt(byte, 16)) + .map((byte) => parseInt(byte, 16)), ) Deno.writeFileSync( join(pvmDir, `${name}.polkavm`), - bytecode + bytecode, ) } } @@ -127,7 +128,7 @@ for (const file of input) { const bytecode = new Uint8Array( bytecodeHex .match(/.{1,2}/g)! - .map((byte) => parseInt(byte, 16)) + .map((byte) => parseInt(byte, 16)), ) Deno.writeFileSync(join(evmDir, `${name}.bin`), bytecode) } @@ -135,11 +136,13 @@ for (const file of input) { const abi = contract.abi const abiName = `${name}Abi` - const tsContent = `export const ${abiName} = ${JSON.stringify( - abi, - null, - 2 - )} as const\n` + const tsContent = `export const ${abiName} = ${ + JSON.stringify( + abi, + null, + 2, + ) + } as const\n` Deno.writeTextFileSync(join(abiDir, `${name}.ts`), tsContent) } } From d2dd2ed2f96d0db3ea9f672f4b5aec5aa57162bd Mon Sep 17 00:00:00 2001 From: pgherveou Date: Tue, 21 Oct 2025 16:10:03 +0200 Subject: [PATCH 5/5] clean up --- .gitignore | 7 +- .prettierrc.json | 6 -- {abi => codegen/abi}/.gitkeep | 0 {evm => codegen/evm}/.gitkeep | 0 {pvm => codegen/pvm}/.gitkeep | 0 deno.json | 6 +- deno.lock | 29 +++++- src/build-contracts.ts | 184 +++++++++++++++++++++++---------- src/errors.test.ts | 2 +- src/methods.test.ts | 58 ++++++----- src/others.test.ts | 4 +- src/solc.d.ts | 2 + src/spammer.ts | 2 +- src/tracing-call-trace.test.ts | 4 +- src/tracing-prestate.test.ts | 4 +- src/util.ts | 4 +- 16 files changed, 207 insertions(+), 105 deletions(-) delete mode 100644 .prettierrc.json rename {abi => codegen/abi}/.gitkeep (100%) rename {evm => codegen/evm}/.gitkeep (100%) rename {pvm => codegen/pvm}/.gitkeep (100%) diff --git a/.gitignore b/.gitignore index acb0326..54ab843 100644 --- a/.gitignore +++ b/.gitignore @@ -7,9 +7,10 @@ yarn-error.log* pnpm-debug.log* lerna-debug.log* -abi/* -pvm/* -evm/* +codegen/abi/* +codegen/pvm/* +codegen/evm/* +*.sha256.txt node_modules dist diff --git a/.prettierrc.json b/.prettierrc.json deleted file mode 100644 index e74ed9f..0000000 --- a/.prettierrc.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "trailingComma": "es5", - "tabWidth": 4, - "semi": false, - "singleQuote": true -} diff --git a/abi/.gitkeep b/codegen/abi/.gitkeep similarity index 100% rename from abi/.gitkeep rename to codegen/abi/.gitkeep diff --git a/evm/.gitkeep b/codegen/evm/.gitkeep similarity index 100% rename from evm/.gitkeep rename to codegen/evm/.gitkeep diff --git a/pvm/.gitkeep b/codegen/pvm/.gitkeep similarity index 100% rename from pvm/.gitkeep rename to codegen/pvm/.gitkeep diff --git a/deno.json b/deno.json index e44f710..8b302fa 100644 --- a/deno.json +++ b/deno.json @@ -9,7 +9,7 @@ } }, "tasks": { - "build": "deno run -P src/build-contracts.ts && deno fmt", + "build": "deno run -P src/build-contracts.ts", "test:evm": "deno task build && USE_REVIVE=evm START_REVIVE_DEV_NODE=true START_ETH_RPC=true deno test -P", "test:pvm": "deno task build && USE_REVIVE=pvm START_REVIVE_DEV_NODE=true START_ETH_RPC=true deno test -P", "test:geth": "START_GETH=true deno test -P", @@ -19,6 +19,7 @@ "include": ["src/all-tests.ts"] }, "imports": { + "@std/cli": "jsr:@std/cli@^1.0.23", "viem": "npm:viem@^2.38.3", "viem/": "npm:/viem@^2.38.3/", "solc": "npm:solc@^0.8.30", @@ -26,7 +27,8 @@ "@std/assert": "jsr:@std/assert@^1.0.15", "@std/expect": "jsr:@std/expect@^1.0.17", "@std/testing": "jsr:@std/testing@^1.0.16", - "@std/path": "jsr:@std/path@^1.1.2" + "@std/path": "jsr:@std/path@^1.1.2", + "@std/log": "jsr:@std/log@^0.224" }, "compilerOptions": { "strict": true diff --git a/deno.lock b/deno.lock index 3cdc40f..8e56f46 100644 --- a/deno.lock +++ b/deno.lock @@ -3,11 +3,16 @@ "specifiers": { "jsr:@std/assert@^1.0.14": "1.0.15", "jsr:@std/assert@^1.0.15": "1.0.15", + "jsr:@std/cli@^1.0.23": "1.0.23", "jsr:@std/data-structures@^1.0.9": "1.0.9", "jsr:@std/expect@^1.0.17": "1.0.17", + "jsr:@std/fmt@^1.0.5": "1.0.8", + "jsr:@std/fs@^1.0.11": "1.0.19", "jsr:@std/fs@^1.0.19": "1.0.19", "jsr:@std/internal@^1.0.10": "1.0.12", "jsr:@std/internal@^1.0.12": "1.0.12", + "jsr:@std/io@~0.225.2": "0.225.2", + "jsr:@std/log@0.224": "0.224.14", "jsr:@std/path@^1.1.1": "1.1.2", "jsr:@std/path@^1.1.2": "1.1.2", "jsr:@std/testing@^1.0.16": "1.0.16", @@ -23,6 +28,12 @@ "jsr:@std/internal@^1.0.12" ] }, + "@std/cli@1.0.23": { + "integrity": "bf95b7a9425ba2af1ae5a6359daf58c508f2decf711a76ed2993cd352498ccca", + "dependencies": [ + "jsr:@std/internal@^1.0.12" + ] + }, "@std/data-structures@1.0.9": { "integrity": "033d6e17e64bf1f84a614e647c1b015fa2576ae3312305821e1a4cb20674bb4d" }, @@ -33,6 +44,9 @@ "jsr:@std/internal@^1.0.10" ] }, + "@std/fmt@1.0.8": { + "integrity": "71e1fc498787e4434d213647a6e43e794af4fd393ef8f52062246e06f7e372b7" + }, "@std/fs@1.0.19": { "integrity": "051968c2b1eae4d2ea9f79a08a3845740ef6af10356aff43d3e2ef11ed09fb06", "dependencies": [ @@ -42,6 +56,17 @@ "@std/internal@1.0.12": { "integrity": "972a634fd5bc34b242024402972cd5143eac68d8dffaca5eaa4dba30ce17b027" }, + "@std/io@0.225.2": { + "integrity": "3c740cd4ee4c082e6cfc86458f47e2ab7cb353dc6234d5e9b1f91a2de5f4d6c7" + }, + "@std/log@0.224.14": { + "integrity": "257f7adceee3b53bb2bc86c7242e7d1bc59729e57d4981c4a7e5b876c808f05e", + "dependencies": [ + "jsr:@std/fmt", + "jsr:@std/fs@^1.0.11", + "jsr:@std/io" + ] + }, "@std/path@1.1.2": { "integrity": "c0b13b97dfe06546d5e16bf3966b1cadf92e1cc83e56ba5476ad8b498d9e3038", "dependencies": [ @@ -53,7 +78,7 @@ "dependencies": [ "jsr:@std/assert@^1.0.15", "jsr:@std/data-structures", - "jsr:@std/fs", + "jsr:@std/fs@^1.0.19", "jsr:@std/internal@^1.0.12", "jsr:@std/path@^1.1.2" ] @@ -300,7 +325,9 @@ "workspace": { "dependencies": [ "jsr:@std/assert@^1.0.15", + "jsr:@std/cli@^1.0.23", "jsr:@std/expect@^1.0.17", + "jsr:@std/log@0.224", "jsr:@std/path@^1.1.2", "jsr:@std/testing@^1.0.16", "npm:@parity/resolc@~0.4.1", diff --git a/src/build-contracts.ts b/src/build-contracts.ts index c229089..7672e40 100644 --- a/src/build-contracts.ts +++ b/src/build-contracts.ts @@ -1,23 +1,82 @@ /// -import { - compile, - type SolcOutput, - tryResolveImport, - version, -} from '@parity/resolc' +import * as resolc from '@parity/resolc' import solc from 'solc' import { basename, join } from '@std/path' +import * as log from '@std/log' +import { parseArgs } from '@std/cli' + +type CompileInput = Parameters[0] +const LOG_LEVEL = (Deno.env.get('LOG_LEVEL')?.toUpperCase() ?? + 'INFO') as log.LevelName +log.setup({ + handlers: { + console: new log.ConsoleHandler(LOG_LEVEL), + }, + loggers: { + default: { + level: LOG_LEVEL, + handlers: ['console'], + }, + }, +}) + +const logger = log.getLogger() +const { filter, solcOnly, force } = parseArgs(Deno.args, { + string: ['filter'], + boolean: ['solcOnly', 'force'], +}) + +async function computeSha256(content: string): Promise { + const encoder = new TextEncoder() + const data = encoder.encode(content) + const hashBuffer = await crypto.subtle.digest('SHA-256', data) + const hashArray = Array.from(new Uint8Array(hashBuffer)) + return hashArray.map((b) => b.toString(16).padStart(2, '0')).join('') +} -type CompileInput = Parameters[0] +function readCachedHash(hashFile: string): string | null { + try { + return Deno.readTextFileSync(hashFile).trim() + } catch { + return null + } +} -const args = Deno.args -const filter = args.includes('-f') || args.includes('--filter') - ? args[args.indexOf('-f') + 1] || args[args.indexOf('--filter') + 1] - : undefined -const solcOnly = args.includes('-s') || args.includes('--solcOnly') +function writeCachedHash(hashFile: string, hash: string): void { + Deno.writeTextFileSync(hashFile, hash) +} -function evmCompile(sources: CompileInput) { +let resolcVersion = '' +async function pvmCompile(file: Deno.DirEntry, sources: CompileInput) { + if (resolcVersion === '') { + if (Deno.env.get('REVIVE_BIN') === undefined) { + resolcVersion = ` @parity/resolc: ${resolc.version().trim()}` + } else { + resolcVersion = new TextDecoder() + .decode( + ( + await new Deno.Command('resolc', { + args: ['--version'], + stdout: 'piped', + }).output() + ).stdout, + ) + .trim() + } + } + logger.info(`Compiling ${file.name} with revive ${resolcVersion}`) + return await resolc.compile(sources, { + bin: Deno.env.get('REVIVE_BIN'), + }) +} + +let solcVersion = '' +function evmCompile(file: Deno.DirEntry, sources: CompileInput) { + if (solcVersion === '') { + solcVersion = solc.version() + } + logger.info(`Compile ${file.name} with solc ${solcVersion}`) const input = { language: 'Solidity', sources, @@ -32,84 +91,87 @@ function evmCompile(sources: CompileInput) { return solc.compile(JSON.stringify(input), { import: (relativePath: string) => { - const source = Deno.readTextFileSync(tryResolveImport(relativePath)) + const source = Deno.readTextFileSync( + resolc.tryResolveImport(relativePath), + ) return { contents: source } }, }) } -console.log('Compiling contracts...') +logger.debug('Compiling contracts...') const currentDir = new URL('.', import.meta.url).pathname const rootDir = join(currentDir, '..') const contractsDir = join(rootDir, 'contracts') -const abiDir = join(rootDir, 'abi') -const pvmDir = join(rootDir, 'pvm') -const evmDir = join(rootDir, 'evm') +const codegenDir = join(rootDir, 'codegen') +const abiDir = join(codegenDir, 'abi') +const pvmDir = join(codegenDir, 'pvm') +const evmDir = join(codegenDir, 'evm') const input = Array.from(Deno.readDirSync(contractsDir)) .filter((f) => f.isFile && f.name.endsWith('.sol')) .filter((f) => !filter || f.name.includes(filter)) for (const file of input) { - console.log(`🔨 Compiling ${file.name}...`) const name = basename(file.name) + const sourceFilePath = join(contractsDir, file.name) + const sourceContent = Deno.readTextFileSync(sourceFilePath) + const sourceHash = await computeSha256(sourceContent) const inputSources = { [name]: { - content: Deno.readTextFileSync(join(contractsDir, file.name)), + content: sourceContent, }, } - if (!solcOnly) { - if (Deno.env.get('REVIVE_BIN') === undefined) { - console.log(`Compiling with revive @parity/resolc: ${version()}...`) - } else { - // add the result of resolc --version - - const output = new TextDecoder().decode( - ( - await new Deno.Command('resolc', { - args: ['--version'], - stdout: 'piped', - }).output() - ).stdout, - ) - console.log( - `Compiling with revive (using ${ - Deno.env.get( - 'REVIVE_BIN', - ) - } - ${output})...`, - ) - } - const reviveOut = await compile(inputSources, { - bin: Deno.env.get('REVIVE_BIN'), - }) + // Create marker files to track if this source has been compiled + const pvmSourceMarkerFile = join(pvmDir, `.${name}.sha256.txt`) + const pvmSourceMarkerHash = readCachedHash(pvmSourceMarkerFile) + const needsPvmCompilation = !solcOnly && + (force || pvmSourceMarkerHash !== sourceHash) + + const evmSourceMarkerFile = join(evmDir, `.${name}.sha256.txt`) + const evmSourceMarkerHash = readCachedHash(evmSourceMarkerFile) + const needsEvmCompilation = force || evmSourceMarkerHash !== sourceHash + + if (needsPvmCompilation) { + const reviveOut = await pvmCompile(file, inputSources) for (const contracts of Object.values(reviveOut.contracts)) { for (const [name, contract] of Object.entries(contracts)) { if (contract?.evm?.bytecode?.object) { - console.log(`📜 Add PVM contract ${name}`) + const pvmFile = join(pvmDir, `${name}.polkavm`) + logger.info(`📜 Add PVM contract ${name}`) const bytecode = new Uint8Array( contract.evm.bytecode.object .match(/.{1,2}/g)! .map((byte) => parseInt(byte, 16)), ) - Deno.writeFileSync( - join(pvmDir, `${name}.polkavm`), - bytecode, - ) + Deno.writeFileSync(pvmFile, bytecode) } } } + writeCachedHash(pvmSourceMarkerFile, sourceHash) + } else if (!solcOnly) { + logger.debug( + `⏭️ Skipping PVM compilation for ${file.name} (unchanged)`, + ) + } + + if (!needsEvmCompilation) { + logger.debug( + `⏭️ Skipping EVM compilation for ${file.name} (unchanged)`, + ) + continue } - console.log(`Compile with solc ${file.name}`) - const evmOut = JSON.parse(evmCompile(inputSources)) as SolcOutput + const evmOut = JSON.parse( + evmCompile(file, inputSources), + ) as resolc.SolcOutput if (evmOut.errors) { for (const error of evmOut.errors) { - console.error(error.formattedMessage) + logger.error(error.formattedMessage) } if (evmOut.errors.some((err) => err.severity !== 'warning')) { @@ -119,21 +181,24 @@ for (const file of input) { for (const contracts of Object.values(evmOut.contracts)) { for (const [name, contract] of Object.entries(contracts)) { - console.log(`📜 Add EVM contract ${name}`) + const evmFile = join(evmDir, `${name}.bin`) + const abiFile = join(abiDir, `${name}.ts`) // Only write bytecode if it exists and is not empty if (contract.evm?.bytecode?.object) { const bytecodeHex = contract.evm.bytecode.object if (bytecodeHex.length > 0) { + logger.info(`📜 Add EVM contract ${name}`) const bytecode = new Uint8Array( bytecodeHex .match(/.{1,2}/g)! .map((byte) => parseInt(byte, 16)), ) - Deno.writeFileSync(join(evmDir, `${name}.bin`), bytecode) + Deno.writeFileSync(evmFile, bytecode) } } + logger.info(`📜 Add ABI ${name}`) const abi = contract.abi const abiName = `${name}Abi` const tsContent = `export const ${abiName} = ${ @@ -143,7 +208,14 @@ for (const file of input) { 2, ) } as const\n` - Deno.writeTextFileSync(join(abiDir, `${name}.ts`), tsContent) + Deno.writeTextFileSync(abiFile, tsContent) } } + + // Mark that we've compiled this source file for EVM + writeCachedHash(evmSourceMarkerFile, sourceHash) + + if (needsEvmCompilation || needsPvmCompilation) { + logger.info(`✅ Compiled ${file.name} successfully`) + } } diff --git a/src/errors.test.ts b/src/errors.test.ts index f60bee4..c8d7330 100644 --- a/src/errors.test.ts +++ b/src/errors.test.ts @@ -6,7 +6,7 @@ import { sanitizeOpts as opts, } from './util.ts' import { expect } from '@std/expect' -import { ErrorsAbi } from '../abi/Errors.ts' +import { ErrorsAbi } from '../codegen/abi/Errors.ts' // Initialize test environment const env = await getEnv() diff --git a/src/methods.test.ts b/src/methods.test.ts index 2e6d8b3..44e8bc2 100644 --- a/src/methods.test.ts +++ b/src/methods.test.ts @@ -12,7 +12,7 @@ import { sanitizeOpts as opts, } from './util.ts' import { expect } from '@std/expect' -import { TesterAbi } from '../abi/Tester.ts' +import { TesterAbi } from '../codegen/abi/Tester.ts' // Initialize test environment const env = await getEnv() @@ -80,7 +80,7 @@ Deno.test('eth_getBalance', opts, async () => { expect(balance).toEqual(parseEther('2')) }) -Deno.test('eth_getBlockByHash and eth_getBlockByNumber', opts, async () => { +Deno.test('eth_getBlockBy', opts, async () => { const { blockNumber, blockHash } = await getTesterReceipt() const by_number = await env.serverWallet.getBlock({ blockNumber, @@ -93,23 +93,24 @@ Deno.test('eth_getBlockByHash and eth_getBlockByNumber', opts, async () => { expect(by_hash).toEqual(by_number) }) -Deno.test( - 'eth_getBlockTransactionCountByHash and eth_getBlockTransactionCountByNumber', - opts, - async () => { - const { blockNumber, blockHash } = await getTesterReceipt() - const byNumber = await env.serverWallet.getBlockTransactionCount({ +Deno.test('eth_getBlockTransactionCount', opts, async (t) => { + const { blockNumber, blockHash } = await getTesterReceipt() + + await t.step('ByNumber', async () => { + const count = await env.serverWallet.getBlockTransactionCount({ blockNumber, }) + expect(count).toBeGreaterThanOrEqual(1) + }) - const byHash = await env.serverWallet.getBlockTransactionCount({ + await t.step('ByHash', async () => { + const count = await env.serverWallet.getBlockTransactionCount({ blockHash, }) - expect(byNumber).toEqual(byHash) - expect(byNumber).toBeGreaterThanOrEqual(1) - }, -) + expect(count).toBeGreaterThanOrEqual(1) + }) +}) Deno.test('eth_getCode', opts, async () => { // Existing contract @@ -176,30 +177,33 @@ Deno.test('eth_getStorageAt', opts, async () => { ) }) -Deno.test( - 'get_transaction_by_block_hash_and_index, eth_getTransactionByBlockNumberAndIndex and eth_getTransactionByHash', - opts, - async () => { - const { - transactionHash: hash, - blockHash, - transactionIndex: index, - blockNumber, - } = await getTesterReceipt() - const byTxHash = await env.serverWallet.getTransaction({ hash }) - expect(byTxHash).toBeTruthy() +Deno.test('eth_getTransactionBy', opts, async (t) => { + const { + transactionHash: hash, + blockHash, + transactionIndex: index, + blockNumber, + } = await getTesterReceipt() + + const byTxHash = await env.serverWallet.getTransaction({ hash }) + t.step('eth_getTransactionByHash', () => expect(byTxHash).toBeTruthy()) + + await t.step('get_transaction_by_block_hash_and_index', async () => { const byBlockHash = await env.serverWallet.getTransaction({ blockHash, index, }) expect(byBlockHash).toEqual(byTxHash) + }) + + await t.step('eth_getTransactionByBlockNumberAndIndex', async () => { const byBlockNumber = await env.serverWallet.getTransaction({ blockNumber, index, }) expect(byBlockNumber).toEqual(byTxHash) - }, -) + }) +}) Deno.test('eth_getTransactionCount', opts, async () => { const count = await env.serverWallet.getTransactionCount( diff --git a/src/others.test.ts b/src/others.test.ts index 23ad972..fa00cc0 100644 --- a/src/others.test.ts +++ b/src/others.test.ts @@ -7,8 +7,8 @@ import { } from './util.ts' import { expect } from '@std/expect' import { decodeEventLog, encodeFunctionData, parseEther } from 'viem' -import { ErrorsAbi } from '../abi/Errors.ts' -import { EventExampleAbi } from '../abi/EventExample.ts' +import { ErrorsAbi } from '../codegen/abi/Errors.ts' +import { EventExampleAbi } from '../codegen/abi/EventExample.ts' // Initialize test environment const env = await getEnv() diff --git a/src/solc.d.ts b/src/solc.d.ts index c5e18cb..26fba28 100644 --- a/src/solc.d.ts +++ b/src/solc.d.ts @@ -75,6 +75,8 @@ declare module 'solc' { } } + export function version(): string + // Main exported functions export function compile( input: string | CompileInput, diff --git a/src/spammer.ts b/src/spammer.ts index 335ef71..eccaee0 100644 --- a/src/spammer.ts +++ b/src/spammer.ts @@ -5,7 +5,7 @@ import { wait, waitForHealth, } from './util.ts' -import { FlipperAbi } from '../abi/Flipper.ts' +import { FlipperAbi } from '../codegen/abi/Flipper.ts' if (Deno.env.get('START_REVIVE_DEV_NODE')) { const nodePath = Deno.env.get('REVIVE_DEV_NODE_PATH') ?? diff --git a/src/tracing-call-trace.test.ts b/src/tracing-call-trace.test.ts index ea66b22..30ecfc3 100644 --- a/src/tracing-call-trace.test.ts +++ b/src/tracing-call-trace.test.ts @@ -10,8 +10,8 @@ import { import { assertSnapshot } from '@std/testing/snapshot' import { expect } from '@std/expect' import { encodeFunctionData, parseEther } from 'viem' -import { TracingCallerAbi } from '../abi/TracingCaller.ts' -import { TracingCalleeAbi } from '../abi/TracingCallee.ts' +import { TracingCallerAbi } from '../codegen/abi/TracingCaller.ts' +import { TracingCalleeAbi } from '../codegen/abi/TracingCallee.ts' // Initialize test environment const env = await getEnv() diff --git a/src/tracing-prestate.test.ts b/src/tracing-prestate.test.ts index 8c20b81..dba0024 100644 --- a/src/tracing-prestate.test.ts +++ b/src/tracing-prestate.test.ts @@ -12,8 +12,8 @@ import { import { assertSnapshot } from '@std/testing/snapshot' import { expect } from '@std/expect' import { encodeFunctionData, type Hex, parseEther } from 'viem' -import { PretraceFixtureAbi } from '../abi/PretraceFixture.ts' -import { PretraceFixtureChildAbi } from '../abi/PretraceFixtureChild.ts' +import { PretraceFixtureAbi } from '../codegen/abi/PretraceFixture.ts' +import { PretraceFixtureChildAbi } from '../codegen/abi/PretraceFixtureChild.ts' // Initialize test environment const env = await getEnv() diff --git a/src/util.ts b/src/util.ts index ef88419..50de3dc 100644 --- a/src/util.ts +++ b/src/util.ts @@ -25,8 +25,8 @@ export const sanitizeOpts = { export function getByteCode(name: string, evm: boolean): Hex { const bytecode = evm - ? Deno.readFileSync(`evm/${name}.bin`) - : Deno.readFileSync(`pvm/${name}.polkavm`) + ? Deno.readFileSync(`codegen/evm/${name}.bin`) + : Deno.readFileSync(`codegen/pvm/${name}.polkavm`) return `0x${ Array.from(bytecode) .map((b: number) => b.toString(16).padStart(2, '0'))