0 txs
1 call
constructor
No constructor.
functions
compressProof
viewfunction compressProof(uint256[8] proof) view returns (uint256[4] compressed)
verifyCompressedProof
viewfunction verifyCompressedProof(uint256[4] compressedProof, uint256[1] input) view
verifyProof
viewfunction verifyProof(uint256[8] proof, uint256[1] input) view
events
No events.
errors
ProofInvalid
error ProofInvalid()
PublicInputNotInField
error PublicInputNotInField()
creation bytecode
0x608060405234801561001057600080fd5b506112d0806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80631b81f8291461004657806344f636921461005b578063ce6c832c14610084575b600080fd5b61005961005436600461117c565b610097565b005b61006e6100693660046111b3565b610317565b60405161007b91906111d7565b60405180910390f35b610059610092366004611208565b610374565b6000806100a383610692565b9150915060006040516101008682377f303311dbb68f3eb2f7d5d5492d652628854a62e03f3ce330c556a9ad9e332e376101008201527f2476ba47be5872d81c550d26e004cfbcd587e4dfa1504bcec29bc1c75fc06ace6101208201527f093c71251b3a199c46b07b7597b76e17b756c8e67f3eb5035865d8344ab2bd0f6101408201527f2484cf06562aaa3a24112b675993ffd4326167ac38bc70a6e221ae5ff45aac386101608201527f13a2057266f7e731d13cfd611f3ad08deadcdb86c515e918c9f7df79d94198ec6101808201527f0b6389d464410f8a16819e6feed36285039fcde73931278d60e80580c09170f86101a08201527f069ba38ebad051c9056e14a666a36fa3ac0b2e80460a763e003e6a7f0b17ef726101c08201527f145d0769512c8aa78af79fbc82846ef1f0796417efe704ada1c51d29563b78d96101e08201527f03535c56c114f6d23b50e453ba8f0ae97f09fe6afc999a687337e84087d652f46102008201527f197370403e505f9ac1c92e9e55d80d8a3f671e3403ffe10cc95723b075f25b1461022082015283610240820152826102608201527f2e7b05ab9fb39bf54978022efaceee8a728dadd62dece276a4f6e4a5d03c95e46102808201527f08b610b13663abb3e4f6f02e9e78dc1b3d4cc2a709a2c371ee378f20d6901e896102a08201527f022f25d57d61f82726e617d032892fdebee273bb8a4d3eee6eba891c1b9207f46102c08201527f160ea3283598699517d8397ca7678b52e3d17f0eb4de0d715a1ee4936e4692616102e08201526020816103008360085afa90511690508061031057604051631ff3747d60e21b815260040160405180910390fd5b5050505050565b61031f6110fe565b61033282358360015b60200201356107b4565b81526103506060830135604084013560a085013560808601356108a9565b6020830152604082015261036a60c0830135836007610328565b6060820152919050565b60008061038784825b6020020135610ba0565b909250905060008080806103a3604089013560208a0135610c45565b929650909450925090506000806103bb8a600361037d565b915091506000806103cb8b610692565b915091506103d761111c565b8a8152602081018a905260408101889052606081018990526080810186905260a0810187905260c0810185905260e081018490527f303311dbb68f3eb2f7d5d5492d652628854a62e03f3ce330c556a9ad9e332e376101008201527f2476ba47be5872d81c550d26e004cfbcd587e4dfa1504bcec29bc1c75fc06ace6101208201527f093c71251b3a199c46b07b7597b76e17b756c8e67f3eb5035865d8344ab2bd0f6101408201527f2484cf06562aaa3a24112b675993ffd4326167ac38bc70a6e221ae5ff45aac386101608201527f13a2057266f7e731d13cfd611f3ad08deadcdb86c515e918c9f7df79d94198ec6101808201527f0b6389d464410f8a16819e6feed36285039fcde73931278d60e80580c09170f86101a08201527f069ba38ebad051c9056e14a666a36fa3ac0b2e80460a763e003e6a7f0b17ef726101c08201527f145d0769512c8aa78af79fbc82846ef1f0796417efe704ada1c51d29563b78d96101e08201527f03535c56c114f6d23b50e453ba8f0ae97f09fe6afc999a687337e84087d652f46102008201527f197370403e505f9ac1c92e9e55d80d8a3f671e3403ffe10cc95723b075f25b14610220820152610240810183905261026081018290527f2e7b05ab9fb39bf54978022efaceee8a728dadd62dece276a4f6e4a5d03c95e46102808201527f08b610b13663abb3e4f6f02e9e78dc1b3d4cc2a709a2c371ee378f20d6901e896102a08201527f022f25d57d61f82726e617d032892fdebee273bb8a4d3eee6eba891c1b9207f46102c08201527f160ea3283598699517d8397ca7678b52e3d17f0eb4de0d715a1ee4936e4692616102e0820152600061064761113b565b6020816103008560085afa915081158061066357508051600114155b1561068157604051631ff3747d60e21b815260040160405180910390fd5b505050505050505050505050505050565b6000806000600190506040516040810160007f2858a3aeb6520c642abef2982373cf5047e9cbebc6a40a8bcd80d28d1468df8283527f164b66a05bb67f3bdf82fc36c2884388695d5e5e3fb0a9f5df95b354ab5e6ba160208401527f2097af14cf221159436f2a8e2e03f1470ae12603cfa8ae39f637ad16d351d24f82527f128bbf0871e0ef0b4536b5c5edf856b9bb506a6b75f4b8c3187fa93f55c4d1b76020830152863590508060408301527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f00000018110841693505060408160608360075afa831692505060408160808360065afa815160209092015191945090925016806107ae5760405163a54f8e2760e01b815260040160405180910390fd5b50915091565b600060008051602061127b833981519152831015806107e1575060008051602061127b8339815191528210155b156107ff57604051631ff3747d60e21b815260040160405180910390fd5b8215801561080b575081155b15610818575060006108a3565b600061085760008051602061127b833981519152600360008051602061127b8339815191528760008051602061127b833981519152898a090908610e2b565b905080830361086c575050600182901b6108a3565b61087581610e8f565b8303610888575050600182811b176108a3565b604051631ff3747d60e21b815260040160405180910390fd5b505b92915050565b60008060008051602061127b833981519152861015806108d7575060008051602061127b8339815191528510155b806108f0575060008051602061127b8339815191528410155b80610909575060008051602061127b8339815191528310155b1561092757604051631ff3747d60e21b815260040160405180910390fd5b8284868817171760000361094057506000905080610b97565b6000808060008051602061127b83398151915261096c600360008051602061127b833981519152611259565b60008051602061127b8339815191528a8c09099050600060008051602061127b8339815191528a60008051602061127b8339815191528c8d09099050600060008051602061127b8339815191528a60008051602061127b8339815191528c8d0909905060008051602061127b8339815191528060008051602061127b8339815191528c860984087f2b149d40ceb8aaae81be18991be06ac3b5b4c5e559dbefa33267e6dc24a138e5089450610a6560008051602061127b8339815191528060008051602061127b8339815191528e870984087f2fcd3ac2a640a154eb23960892a85a68f031ca0c8344b23a577dcf1052b9e77508610e8f565b9350505050600080610ab660008051602061127b83398151915280610a8c57610a8c611243565b60008051602061127b83398151915285860960008051602061127b83398151915287880908610e2b565b9050610b0360008051602061127b8339815191527f183227397098d014dc2822db40c0ac2ecbc0b548b438e5469e10460b6c3e7ea460008051602061127b83398151915284880809610ea8565b15915050610b12838383610ef2565b90935091508683148015610b2557508186145b15610b4f5780610b36576000610b39565b60025b60ff1660028a901b176000179450879350610b93565b610b5883610e8f565b87148015610b6d5750610b6a82610e8f565b86145b156108885780610b7e576000610b81565b60025b60ff1660028a901b1760011794508793505b5050505b94509492505050565b60008082600003610bb657506000928392509050565b600183811c92508084161460008051602061127b8339815191528310610bef57604051631ff3747d60e21b815260040160405180910390fd5b610c2c60008051602061127b833981519152600360008051602061127b8339815191528660008051602061127b8339815191528889090908610e2b565b915080156107ae57610c3d82610e8f565b915050915091565b600080808085158015610c56575084155b15610c6c57506000925082915081905080610e22565b600286811c9450859350600180881614908088161460008051602061127b83398151915286101580610cac575060008051602061127b8339815191528510155b15610cca57604051631ff3747d60e21b815260040160405180910390fd5b600060008051602061127b833981519152610cf4600360008051602061127b833981519152611259565b60008051602061127b833981519152888a09099050600060008051602061127b8339815191528860008051602061127b8339815191528a8b09099050600060008051602061127b8339815191528860008051602061127b8339815191528a8b0909905060008051602061127b8339815191528060008051602061127b8339815191528a860984087f2b149d40ceb8aaae81be18991be06ac3b5b4c5e559dbefa33267e6dc24a138e5089650610ded60008051602061127b8339815191528060008051602061127b8339815191528c870984087f2fcd3ac2a640a154eb23960892a85a68f031ca0c8344b23a577dcf1052b9e77508610e8f565b9550610dfa878786610ef2565b90975095508415610e1c57610e0e87610e8f565b9650610e1986610e8f565b95505b50505050505b92959194509250565b6000610e57827f0c19139cb84c680a6e14116da060561765e05aa45a1c72a34f082305b61f3f52611039565b90508160008051602061127b83398151915282830914610e8a57604051631ff3747d60e21b815260040160405180910390fd5b919050565b60008051602061127b8339815191529081900681030690565b600080610ed5837f0c19139cb84c680a6e14116da060561765e05aa45a1c72a34f082305b61f3f52611039565b90508260008051602061127b833981519152828309149392505050565b60008080610f2460008051602061127b8339815191528087880960008051602061127b833981519152898a0908610e2b565b90508315610f3857610f3581610e8f565b90505b610f8360008051602061127b8339815191527f183227397098d014dc2822db40c0ac2ecbc0b548b438e5469e10460b6c3e7ea460008051602061127b833981519152848a0809610e2b565b925060008051602061127b833981519152610faf60008051602061127b8339815191526002860961109e565b8609915060008051602061127b833981519152610fdc60008051602061127b833981519152848509610e8f565b60008051602061127b8339815191528586090886141580611012575060008051602061127b833981519152808385096002098514155b1561103057604051631ff3747d60e21b815260040160405180910390fd5b50935093915050565b600080604051602081526020808201526020604082015284606082015283608082015260008051602061127b83398151915260a082015260208160c08360055afa905192509050806108a157604051631ff3747d60e21b815260040160405180910390fd5b60006110ca827f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd45611039565b905060008051602061127b833981519152818309600114610e8a57604051631ff3747d60e21b815260040160405180910390fd5b60405180608001604052806004906020820280368337509192915050565b6040518061030001604052806018906020820280368337509192915050565b60405180602001604052806001906020820280368337509192915050565b8061010081018310156108a357600080fd5b80602081018310156108a357600080fd5b600080610120838503121561119057600080fd5b61119a8484611159565b91506111aa84610100850161116b565b90509250929050565b600061010082840312156111c657600080fd5b6111d08383611159565b9392505050565b60808101818360005b60048110156111ff5781518352602092830192909101906001016111e0565b50505092915050565b60008060a0838503121561121b57600080fd5b608083018481111561122c57600080fd5b839250611239858261116b565b9150509250929050565b634e487b7160e01b600052601260045260246000fd5b818103818111156108a357634e487b7160e01b600052601160045260246000fdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47a2646970667358221220c47f5eacbf641611ab4c4077138ea3631ab9d55775b0f9a6e95e5c176e0e565364736f6c63430008120033