0 txs
1 call
constructor
No constructor.
functions
compressProof
viewfunction compressProof(uint256[8] proof) view returns (uint256[4] compressed)
hashPublicValues
purefunction hashPublicValues(bytes publicValues) pure returns (bytes32)
VERIFIER_HASH
purefunction VERIFIER_HASH() pure returns (bytes32)
Verify
viewfunction Verify(uint256[8] proof, uint256[2] input) view
verifyCompressedProof
viewfunction verifyCompressedProof(uint256[4] compressedProof, uint256[2] input) view
verifyProof
viewfunction verifyProof(bytes32 programVKey, bytes publicValues, bytes proofBytes) view
VERSION
purefunction VERSION() pure returns (string)
events
No events.
errors
InvalidProof
error InvalidProof()
ProofInvalid
error ProofInvalid()
PublicInputNotInField
error PublicInputNotInField()
WrongVerifierSelector
error WrongVerifierSelector(bytes4 received, bytes4 expected)
creation bytecode
0x608060405234801561001057600080fd5b50611888806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80636b61d8e71161005b5780636b61d8e7146100ec578063eddf243c146100ff578063f11817b214610112578063ffa1ad741461012557600080fd5b80632a5104361461008257806341493c60146100b757806344f63692146100cc575b600080fd5b7f090690902a12d1d02c07a1ad25aa76bded5f6499e12a11ba127669501b5539985b6040519081526020015b60405180910390f35b6100ca6100c5366004611499565b61014d565b005b6100df6100da366004611525565b610270565b6040516100ae9190611549565b6100a46100fa36600461157a565b6102cd565b6100ca61010d3660046115cd565b610336565b6100ca610120366004611604565b6105b5565b6040805180820182526006815265076332e302e360d41b602082015290516100ae919061163f565b600061015c600482848661168d565b610165916116b7565b90507f090690902a12d1d02c07a1ad25aa76bded5f6499e12a11ba127669501b5539986290690960e41b6001600160e01b03198316146101d05760405163988066a160e01b81526001600160e01b031980841660048301528216602482015260440160405180910390fd5b60006101dc87876102cd565b90506101e66113d7565b8881526020810182905260006101ff866004818a61168d565b81019061020c91906116e7565b604051633b77c90f60e21b8152909150309063eddf243c906102349084908690600401611774565b60006040518083038186803b15801561024c57600080fd5b505afa158015610260573d6000803e3d6000fd5b5050505050505050505050505050565b6102786113f5565b61028b82358360015b60200201356108d3565b81526102a96060830135604084013560a085013560808601356109c7565b602083015260408201526102c360c0830135836007610281565b6060820152919050565b60006001600160fd1b0360001b600284846040516102ec9291906117d2565b602060405180830381855afa158015610309573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061032c91906117e2565b1690505b92915050565b60008061034283610cbe565b9150915060006040516101008682377f21ab438b0ad9688f8d9afc96ed0ab25e6ab7f19ed6f7d58a9dc136d68de55e3e6101008201527f2d1f461ca03a65528393919e9e412f6b82d7096e44fa039bd7642a5112188af76101208201527f100f76d4ac45886c1334d58716121dc0ffa8463738f3f2adf793e15b8ecd7e1d6101408201527f2bf21e8bb2f9419034373c2156cdd7bddf273519dcd7f674ef21e2748ced89f26101608201527f2d4d9aa7e302d9df41749d5507949d05dbea33fbb16c643b22f599a2be6df2e26101808201527f14bedd503c37ceb061d8ec60209fe345ce89830a19230301f076caff004d19266101a08201527f0967032fcbf776d1afc985f88877f182d38480a653f2decaa9794cbc3bf3060c6101c08201527f0e187847ad4c798374d0d6732bf501847dd68bc0e071241e0213bc7fc13db7ab6101e08201527e1752a100a72fdf1e5a5d6ea841cc20ec838bccfcf7bd559e79f1c9c759b6a06102008201527f192a8cc13cd9f762871f21e43451c6ca9eeab2cb2987c4e366a185c25dac2e7f61022082015283610240820152826102608201527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c26102808201527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed6102a08201527f275dc4a288d1afb3cbb1ac09187524c7db36395df7be3b99e673b13a075a65ec6102c08201527f1d9befcd05a5323e6da4d435f3b617cdb3af83285c2df711ef39c01571827f9d6102e08201526020816103008360085afa9051169050806105ae57604051631ff3747d60e21b815260040160405180910390fd5b5050505050565b6105bd611413565b6000806105d085825b6020020135610e79565b909250905060008080806105ec60408a013560208b0135610f1e565b929650909450925090506000806106048b60036105c6565b915091506000806106148c610cbe565b8b8d5260208d018b905260408d0189905260608d018a905260808d0187905260a08d0188905260c08d0186905260e08d018590527f21ab438b0ad9688f8d9afc96ed0ab25e6ab7f19ed6f7d58a9dc136d68de55e3e6101008e01527f2d1f461ca03a65528393919e9e412f6b82d7096e44fa039bd7642a5112188af76101208e01527f100f76d4ac45886c1334d58716121dc0ffa8463738f3f2adf793e15b8ecd7e1d6101408e01527f2bf21e8bb2f9419034373c2156cdd7bddf273519dcd7f674ef21e2748ced89f26101608e01527f2d4d9aa7e302d9df41749d5507949d05dbea33fbb16c643b22f599a2be6df2e26101808e01527f14bedd503c37ceb061d8ec60209fe345ce89830a19230301f076caff004d19266101a08e01527f0967032fcbf776d1afc985f88877f182d38480a653f2decaa9794cbc3bf3060c6101c08e01527f0e187847ad4c798374d0d6732bf501847dd68bc0e071241e0213bc7fc13db7ab6101e08e01527e1752a100a72fdf1e5a5d6ea841cc20ec838bccfcf7bd559e79f1c9c759b6a06102008e01527f192a8cc13cd9f762871f21e43451c6ca9eeab2cb2987c4e366a185c25dac2e7f6102208e01526102408d018290526102608d018190527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c26102808e01527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed6102a08e01527f275dc4a288d1afb3cbb1ac09187524c7db36395df7be3b99e673b13a075a65ec6102c08e01527f1d9befcd05a5323e6da4d435f3b617cdb3af83285c2df711ef39c01571827f9d6102e08e015290925090506000610888611432565b6020816103008f60085afa91508115806108a457508051600114155b156108c257604051631ff3747d60e21b815260040160405180910390fd5b505050505050505050505050505050565b60006000805160206118338339815191528310158061090057506000805160206118338339815191528210155b1561091e57604051631ff3747d60e21b815260040160405180910390fd5b8215801561092a575081155b1561093757506000610330565b6000610976600080516020611833833981519152600360008051602061183383398151915287600080516020611833833981519152898a090908611104565b905080830361098b575050600182901b610330565b61099481611168565b83036109a7575050600182811b17610330565b604051631ff3747d60e21b815260040160405180910390fd5b5092915050565b600080600080516020611833833981519152861015806109f557506000805160206118338339815191528510155b80610a0e57506000805160206118338339815191528410155b80610a2757506000805160206118338339815191528310155b15610a4557604051631ff3747d60e21b815260040160405180910390fd5b82848688171717600003610a5e57506000905080610cb5565b60008080600080516020611833833981519152610a8a6003600080516020611833833981519152611811565b6000805160206118338339815191528a8c0909905060006000805160206118338339815191528a6000805160206118338339815191528c8d0909905060006000805160206118338339815191528a6000805160206118338339815191528c8d09099050600080516020611833833981519152806000805160206118338339815191528c860984087f2b149d40ceb8aaae81be18991be06ac3b5b4c5e559dbefa33267e6dc24a138e5089450610b83600080516020611833833981519152806000805160206118338339815191528e870984087f2fcd3ac2a640a154eb23960892a85a68f031ca0c8344b23a577dcf1052b9e77508611168565b9350505050600080610bd460008051602061183383398151915280610baa57610baa6117fb565b60008051602061183383398151915285860960008051602061183383398151915287880908611104565b9050610c216000805160206118338339815191527f183227397098d014dc2822db40c0ac2ecbc0b548b438e5469e10460b6c3e7ea460008051602061183383398151915284880809611181565b15915050610c308383836111cb565b90935091508683148015610c4357508186145b15610c6d5780610c54576000610c57565b60025b60ff1660028a901b176000179450879350610cb1565b610c7683611168565b87148015610c8b5750610c8882611168565b86145b156109a75780610c9c576000610c9f565b60025b60ff1660028a901b1760011794508793505b5050505b94509492505050565b6000806000600190506040516040810160007f0251859caefe66b516c5549d3768d1ba94146083cb044026abebc9908991924883527f2c1e789b2dcafdaa6853d0934c4443d223b8f050ce3466d068f2ab7efa29bc0360208401527f13a264f6a5d0e3938bea4e4431d417f2980774db501085ceafd0d7e76a7f128b82527f155351b5ccccb7a37222f2b82fa4a968f33523326364fe52bb87d1ea3f47c6976020830152863590508060408301527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f000000181108416935060408260608460075afa8416935060408360808560065afa841693507f03777818388f77b4065a87d01e141b5fec2ee452d1ada3493892aca2c4da5d4082527f0fb2382a8c87c5992ee8385e493ffd96983c8c42c5545a4daaab264f482865b56020830152602087013590508060408301527f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f00000018110841693505060408160608360075afa831692505060408160808360065afa81516020909201519194509092501680610e735760405163a54f8e2760e01b815260040160405180910390fd5b50915091565b60008082600003610e8f57506000928392509050565b600183811c9250808416146000805160206118338339815191528310610ec857604051631ff3747d60e21b815260040160405180910390fd5b610f056000805160206118338339815191526003600080516020611833833981519152866000805160206118338339815191528889090908611104565b91508015610e7357610f1682611168565b915050915091565b600080808085158015610f2f575084155b15610f45575060009250829150819050806110fb565b600286811c9450859350600180881614908088161460008051602061183383398151915286101580610f8557506000805160206118338339815191528510155b15610fa357604051631ff3747d60e21b815260040160405180910390fd5b6000600080516020611833833981519152610fcd6003600080516020611833833981519152611811565b600080516020611833833981519152888a090990506000600080516020611833833981519152886000805160206118338339815191528a8b090990506000600080516020611833833981519152886000805160206118338339815191528a8b09099050600080516020611833833981519152806000805160206118338339815191528a860984087f2b149d40ceb8aaae81be18991be06ac3b5b4c5e559dbefa33267e6dc24a138e50896506110c6600080516020611833833981519152806000805160206118338339815191528c870984087f2fcd3ac2a640a154eb23960892a85a68f031ca0c8344b23a577dcf1052b9e77508611168565b95506110d38787866111cb565b909750955084156110f5576110e787611168565b96506110f286611168565b95505b50505050505b92959194509250565b6000611130827f0c19139cb84c680a6e14116da060561765e05aa45a1c72a34f082305b61f3f52611312565b9050816000805160206118338339815191528283091461116357604051631ff3747d60e21b815260040160405180910390fd5b919050565b6000805160206118338339815191529081900681030690565b6000806111ae837f0c19139cb84c680a6e14116da060561765e05aa45a1c72a34f082305b61f3f52611312565b905082600080516020611833833981519152828309149392505050565b600080806111fd60008051602061183383398151915280878809600080516020611833833981519152898a0908611104565b905083156112115761120e81611168565b90505b61125c6000805160206118338339815191527f183227397098d014dc2822db40c0ac2ecbc0b548b438e5469e10460b6c3e7ea4600080516020611833833981519152848a0809611104565b925060008051602061183383398151915261128860008051602061183383398151915260028609611377565b860991506000805160206118338339815191526112b5600080516020611833833981519152848509611168565b60008051602061183383398151915285860908861415806112eb5750600080516020611833833981519152808385096002098514155b1561130957604051631ff3747d60e21b815260040160405180910390fd5b50935093915050565b600080604051602081526020808201526020604082015284606082015283608082015260008051602061183383398151915260a082015260208160c08360055afa905192509050806109c057604051631ff3747d60e21b815260040160405180910390fd5b60006113a3827f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd45611312565b905060008051602061183383398151915281830960011461116357604051631ff3747d60e21b815260040160405180910390fd5b60405180604001604052806002906020820280368337509192915050565b60405180608001604052806004906020820280368337509192915050565b6040518061030001604052806018906020820280368337509192915050565b60405180602001604052806001906020820280368337509192915050565b60008083601f84011261146257600080fd5b50813567ffffffffffffffff81111561147a57600080fd5b60208301915083602082850101111561149257600080fd5b9250929050565b6000806000806000606086880312156114b157600080fd5b85359450602086013567ffffffffffffffff808211156114d057600080fd5b6114dc89838a01611450565b909650945060408801359150808211156114f557600080fd5b5061150288828901611450565b969995985093965092949392505050565b80610100810183101561033057600080fd5b6000610100828403121561153857600080fd5b6115428383611513565b9392505050565b60808101818360005b6004811015611571578151835260209283019290910190600101611552565b50505092915050565b6000806020838503121561158d57600080fd5b823567ffffffffffffffff8111156115a457600080fd5b6115b085828601611450565b90969095509350505050565b806040810183101561033057600080fd5b60008061014083850312156115e157600080fd5b6115eb8484611513565b91506115fb8461010085016115bc565b90509250929050565b60008060c0838503121561161757600080fd5b608083018481111561162857600080fd5b83925061163585826115bc565b9150509250929050565b600060208083528351808285015260005b8181101561166c57858101830151858201604001528201611650565b506000604082860101526040601f19601f8301168501019250505092915050565b6000808585111561169d57600080fd5b838611156116aa57600080fd5b5050820193919092039150565b6001600160e01b031981358181169160048510156116df5780818660040360031b1b83161692505b505092915050565b60006101008083850312156116fb57600080fd5b83601f84011261170a57600080fd5b60405181810181811067ffffffffffffffff8211171561173a57634e487b7160e01b600052604160045260246000fd5b60405290830190808583111561174f57600080fd5b845b83811015611769578035825260209182019101611751565b509095945050505050565b6101408101818460005b600881101561179d57815183526020928301929091019060010161177e565b50505061010082018360005b60028110156117c85781518352602092830192909101906001016117a9565b5050509392505050565b8183823760009101908152919050565b6000602082840312156117f457600080fd5b5051919050565b634e487b7160e01b600052601260045260246000fd5b8181038181111561033057634e487b7160e01b600052601160045260246000fdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47a2646970667358221220316eee19bc8f1aeecff5231c6d6058f85cfcf9207e63aa8d11b9f242bff757f264736f6c63430008140033