- curl -s -X POST -H "Content-Type: application/json" --data '{"method":"eth_getTransactionByHash","params":["0x2f0ce26dd454211f84df373e7b37be2d683cb71532bc6d0ec63d6fcdbaa4c5e3"], "id":1,"jsonrpc":"2.0"}' $L1_ENDPOINT | jq .result.input -r > FflonkVerifier.sol.explorer.bytecode
+ curl -s -X POST -H "Content-Type: application/json" --data '{"method":"eth_getTransactionByHash","params":["0x6cc2cbf18cefe30ec2b4776b525e187f06f88bb52fe94c1b0dd2629b199fd9c9"], "id":1,"jsonrpc":"2.0"}' $L1_ENDPOINT | jq .result.input -r > FflonkVerifier.sol.explorer.bytecode
```
## Compare bytecodes
@@ -264,8 +266,8 @@ sha256sum FflonkVerifier.sol.*.bytecode
The result should be:
```
-34c11f41d424eb821b42630183c4b97dc8689163276ca50095e5918202950703 FflonkVerifier.sol.compiled.bytecode
-34c11f41d424eb821b42630183c4b97dc8689163276ca50095e5918202950703 FflonkVerifier.sol.explorer.bytecode
+27270e1846e7e8512ab9cc311a96a1425a03adda282b18d5beb521dfe09c3d22 FflonkVerifier.sol.compiled.bytecode
+27270e1846e7e8512ab9cc311a96a1425a03adda282b18d5beb521dfe09c3d22 FflonkVerifier.sol.explorer.bytecode
```
## Generated files hash
@@ -280,90 +282,96 @@ The result should be:
buildstoragerom |
storage_sm_rom.json | 676c3f58263fc284bc53ef949dd1acedcfb090f3287ee080b2a277ed2157894a |
buildconstants |
-zkevm.const | 3d0c910c9bfa143209e8f545e23e2e98b29f4f5a40c04001fc8254aee9f121c7 |
+zkevm.const | ca00d4c994f4793c14b19a9a26f17f170165b9177ada598f94a416604a6ec0b8 |
buildstarkinfo |
zkevm.starkstruct.json | 284b6ce275c637af4a0b4b10cd83a881c6f1b21e21ad7ea2276379ed8393b099 |
zkevm.starkinfo.json | cd4615be096817d14b3b19780897ad39f5cd26f83e5d17518dae7688563fcb54 |
buildconstanttree |
-zkevm.verkey.json | 7d024c2295c3bc478de5a71c4006ede5731420236651e29a384609c913c8eee9 |
-zkevm.consttree | 3d0c910c9bfa143209e8f545e23e2e98b29f4f5a40c04001fc8254aee9f121c7 |
+zkevm.verkey.json | 466b663f730c032b235e7c9ac57d4492bdeea51af8b62bc204ef20700de88c6d |
+zkevm.consttree | ca00d4c994f4793c14b19a9a26f17f170165b9177ada598f94a416604a6ec0b8 |
gencircom |
-zkevm.verifier.circom | e832840aa97ca0e47a448f24ac7019ea80bfb6e9354cbe2fd7a6dada1d5d807b |
+zkevm.verifier.circom | 4a9abd5c5d31f3675cac455fb4e8e06a1f524d86e4e6e18f32f0090f017c9f6d |
compilecircom |
-zkevm.verifier.r1cs | 25f656f632964f8c7800c4d222f34a6e94a576c9b4f3b81fbc2ba6f03889719f |
-zkevm.verifier.sym | e32fc039e6bb550f7d2e375804b0679c6761d488111e6aa9b3b3a638af08ec36 |
+zkevm.verifier.r1cs | 3ed36eec0462885d480e6e3023f91e0265aad8c5556aa33d6c7b34e866e59605 |
+zkevm.verifier.sym | 57803c3774b227440b0cae55bace553a198ec675d8bdae72b37bbc2a59b7d9c9 |
c12a_setup |
c12a.pil | 13b74f6e33dcbfcb9aa1a5eb7a93691635f51f33aa91e7c867dec11509c93f4d |
-c12a.const | 5fffa6480307f60c9c1202539ae39051cbcb72863bb8e2db5bebf74a2d048f9b |
+c12a.const | 96b15b147af5ffcf08f2692d6bcbc149ca46521f80a2d5476da017c78c673cb7 |
c12a.exec | 6fe8e529645f1b72de3851ecd50dde6b830846c4cd3af0b83267151b11ec45e1 |
c12a_buildstarkinfo |
c12a.starkstruct.json | c8ceea75f0aa05fdbdb20ac41b224355fde07a0dbeecd6649ff8c2636b9a759c |
c12a.starkinfo.json | c05b27f4538e8071a0e8045faeb8a6de8771053587ad657b07c9401b9597a663 |
c12a_buildconstanttree |
-c12a.verkey.json | e6a963de090b49ce93c058ffe5438f209091186987b5fc162d6e9122bf86f333 |
-c12a.consttree | 5fffa6480307f60c9c1202539ae39051cbcb72863bb8e2db5bebf74a2d048f9b |
+c12a.verkey.json | 20f9ed1d602fe5155c0c93f342fda579987cd85b9011fd8658a427ffd09e7468 |
+c12a.consttree | 96b15b147af5ffcf08f2692d6bcbc149ca46521f80a2d5476da017c78c673cb7 |
c12a_gencircom |
-c12a.verifier.circom | 306ef5102ad64e14cb385e7e888dce3fccd73dbd55aa443c1561152779fdf9dd |
+c12a.verifier.circom | 63c0537db15875dd0e61696c5b97344424f1a1dffaa201ae04bded78feb5bb0e |
recursive1_gencircom |
recursive1.circom | 83543e99e0a1f660761fa8a06310dfd9b69d0c0a358a73b6baec55d9587234e5 |
recursive1_compile |
-recursive1.r1cs | bf748272be6aeba8eb8dc3146e68a9eb938c7139d690be1e94a506a4d756eec8 |
-recursive1.sym | 646bc2e3ca5da30c1221039c1e37af2ed46a2f8f7023d65a41cb80c7de5882a9 |
+recursive1.r1cs | 9ef158594515431ac644c0b79cc9b3ca441754ea98529e1ae2db176ccced110a |
+recursive1.sym | f2db344f3289e513fc8a9cacc68b697a39a410fae834bdc8feabee7b394cabc0 |
recursive1_setup |
recursive1.pil | 94ea2856942dd0745e2d6443c6988a4fdc65ac2c3173633e897e02b6d7eaad8b |
-recursive1.const | bba22272d800b85e67e3b0360dbd67f972804129a8f5ee4a434a26976a3bc8a4 |
+recursive1.const | f81f9d99dc7be4ec8ce515a0d58958e10d09aaefabd778164fc4f076bbf273d0 |
recursive1.exec | 359e6e221cefd35827960ff5cf9cd506ba5e2a5ec92c33312a5903ce087aa155 |
recursive1_buildstarkinfo |
recursive.starkstruct.json | 8bc8b44a7e493e447af7c04d1a362c2198f3e9b29e425248b7646c36b67fd02c |
recursive1.starkinfo.json | ab63b4008c2b2e769519ff3df4ba6130d66b8d6778c0ba0fb7724d5a4a9e2841 |
recursive1_buildconstanttree |
-recursive1.verkey.json | 44f3b6afb36a458031e327d2119a15689ec38eb10ccff729dfda0bae3bf16921 |
-recursive1.consttree | bba22272d800b85e67e3b0360dbd67f972804129a8f5ee4a434a26976a3bc8a4 |
+recursive1.verkey.json | 883d526a0a9027641307a56f3cf94bbd3072d98413273f424c5026951277aec6 |
+recursive1.consttree | f81f9d99dc7be4ec8ce515a0d58958e10d09aaefabd778164fc4f076bbf273d0 |
recursive1_verifier_gencircom |
recursive1.verifier.circom | 835cf0a8c4706ced7395957a8bef1e00b70d1007586c9fccf107f12b4936dea5 |
recursive2_gencircom |
-recursive2.circom | 0c03000a9a56601a086fc5c91e9119e2e63fa699fe9d5f362b506c2d3602449f |
+recursive2.circom | c936419331d9d07aacdc912002d30bce42baa2c05a956b51d12580c82276803a |
recursive2_compile |
-recursive2.r1cs | 2fdd9f433b07c90a367dbc2335b7921c1ef242e6466fc5a25b8ebcf8660ff77a |
+recursive2.r1cs | b2c0f5fb9ccda0474e246cdeca3e34fc5907cd5b34f15f2192b163fb53062376 |
recursive2.sym | a47d475bcb09309b2100bfc19ce4c4baa9cee2699373290569617d71fcf51a64 |
recursive2_setup |
recursive2.pil | 94ea2856942dd0745e2d6443c6988a4fdc65ac2c3173633e897e02b6d7eaad8b |
-recursive2.const | 7ee905f3949c67af84f417ce2b996b2946b7bf1d4557f8a67f9d7f7ab9540902 |
+recursive2.const | 381fcf6ad4237bdbf878473f854053849a7decfbaab6c846624c41d3000ef5b8 |
recursive2.exec | f32201da15042d9167dc8dd6707c2920d7d2e772d411566739ac874bdbf269fb |
recursive2_buildstarkinfo |
recursive2.starkinfo.json | ab63b4008c2b2e769519ff3df4ba6130d66b8d6778c0ba0fb7724d5a4a9e2841 |
recursive2_buildconstanttree |
-recursive2.verkey.json | fc3f0d4aaf11bb001102a37e397262aa62a02b6ca001b5c00ba9fccdfb06dda6 |
-recursive2.consttree | 7ee905f3949c67af84f417ce2b996b2946b7bf1d4557f8a67f9d7f7ab9540902 |
+recursive2.verkey.json | a2477ca847f493163113860a42ecede027bc67b4935e5ab30f2e825009363a47 |
+recursive2.consttree | 381fcf6ad4237bdbf878473f854053849a7decfbaab6c846624c41d3000ef5b8 |
recursive2_verifier_gencircom |
recursive2.verifier.circom | 835cf0a8c4706ced7395957a8bef1e00b70d1007586c9fccf107f12b4936dea5 |
recursivef_gencircom |
-recursivef.circom | 84f7538268a29a67e7836691b1706f9228fe73f4d890eee7f65f3ddcfc3aafc3 |
+recursivef.circom | 68ba6079a221f4cfe3afd071e8df62c38309f34d0633f5574cf76750d8fe2066 |
recursivef_compile |
-recursivef.r1cs | 2861953db44082184ee7a1dcff9b37ab131e3d58cc5539cfe258c6d23f505f8c |
+recursivef.r1cs | f45f7a9caa97913263f81ba31630dd615403f9fe3d72478a270b65b1be8a468e |
recursivef.sym | fcbe9cd852065f1224a82f8b595d2c7aaa9fdbc616ef9048714105d69d988cd7 |
recursivef_setup |
recursivef.pil | 62527bfc12f535e8fa3a6dd7055bc595b27fc491f7203987108ee3d13283dbfe |
-recursivef.const | 0f32c1d45e2e7390cd21bcfadb1be399ea02f6c91c76aaca963a7ee1f131ba41 |
+recursivef.const | a74d6e18aab5a524c0e1ea87001cdd88cb20fcf8a957e831d28b58b116cb358d |
recursivef.exec | 1751c8a070d68cc64aa7d932a1785330da24139e547805e583f5407c5600715e |
recursivef_buildstarkinfo |
recursivef.starkstruct.json | ba99ad986178db98b1a867bb9d8592fa6ba5c29d9233fd939d01424425ce6cba |
recursivef.starkinfo.json | 8d6e9503550ad8bdde303af5b37ad0320171d4f180fc11323b58fbf8d82bb1a6 |
recursivef_buildconstanttree |
-recursivef.verkey.json | 3e16829b5af0ea65a5f49724d96ed429e1d4da088d4b0c1556093632f94e6bbc |
-recursivef.consttree | 0f32c1d45e2e7390cd21bcfadb1be399ea02f6c91c76aaca963a7ee1f131ba41 |
+recursivef.verkey.json | f41c6973c1a71970af291da4177f11f1b7accda7654c63169c607efeef5981e6 |
+recursivef.consttree | a74d6e18aab5a524c0e1ea87001cdd88cb20fcf8a957e831d28b58b116cb358d |
recursivef_verifier_gencircom |
-recursivef.verifier.circom | 68406381a2d730ede86e41ce80f4c214cabb83fd307768b43d5b407978f94c04 |
+recursivef.verifier.circom | 3607ed5c1ec397aaa35a09122128d57896b0b9ae648a273721f23c82f69eca30 |
final_gencircom |
final.circom | 74a06304ce73b282a520c358baead152dad790b0aa6b7031f6ba8c00166be459 |
final_compile |
-final.r1cs | bf28b9d2adff923fbf2505a116bf5c29f116b1187fcae972bc78d1f254963380 |
+final.r1cs | 8980408e97bd37a12dcb3cca90309421a25b17d899a9021a7eb55d86c46b4eb5 |
final.sym | 9c20071021039f3f82b3ecb471402949cbbc290812da97f47aae4b13ad73342d |
fflonk_setup |
-final.fflonk.zkey | b0a674854e811c9d935cfae6fa0cc4b0efbba7014365b06d026b0bc3667a0c7b |
+final.fflonk.zkey | 95f221bb359705463b02c43e7c7fc3928676dfc4e2a788504d2009a598f144ee |
fflonk_evk |
-final.fflonk.verkey.json | 44b4d3ac1331dd17246611687f7c65f659d377c34467df1d49e2e558c3aad1ad |
-dependencies.txt | bb198945774e109721e2bde02a369edf96d21a0533f4bf9882a472dadd90d117 |
+final.fflonk.verkey.json | 65fe92de992fa6a8e43760dd4c7629d700dd9cb4ef8c4210581b6e277fec104a |
+dependencies.txt | 1201d73ded9420e99e434147a91f82200781bb6b6348dfca6439f315b9612672 |
fflonk_solidity |
-final.fflonk.verifier.sol | 8ae7baadd9f2ffb07862b0a74c20e1ad1cc2d4136e416ce5beac82a4e9a44923 |
+final.fflonk.verifier.sol | 9bf2d96c589a64ba8ebde36f280993d1dc0ac3ca3cac1d09b5550055b8a523e8 |
+
+
+
+sed "s/^0x//;s/\([0-9a-f]\{40\}\)/\1\n/g" ~/contract/FflonkVerifier.sol.compiled.bytecode | head
+sed "s/^0x//;s/\([0-9a-f]\{40\}\)/\1\n/g" ~/contract/FflonkVerifier.sol.compiled.bytecode | tail
+
\ No newline at end of file