@vlayer/sdk 0.1.0-nightly-20250205-089c880 → 0.1.0-nightly-20250205-99d0df9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/abi/TestVerifierRouterDeployer.d.ts +239 -0
- package/dist/abi/TestVerifierRouterDeployer.d.ts.map +1 -0
- package/dist/abi/TestVerifierRouterDeployer.js +345 -0
- package/dist/abi/TestVerifierRouterDeployer.js.map +1 -0
- package/dist/config/deploy.d.ts +3 -1
- package/dist/config/deploy.d.ts.map +1 -1
- package/dist/config/deploy.js +56 -2
- package/dist/config/deploy.js.map +1 -1
- package/dist/config/getConfig.d.ts.map +1 -1
- package/dist/config/getConfig.js +9 -4
- package/dist/config/getConfig.js.map +1 -1
- package/dist/config/types.d.ts +5 -0
- package/dist/config/types.d.ts.map +1 -1
- package/package.json +1 -1
@@ -0,0 +1,239 @@
|
|
1
|
+
declare const _default: {
|
2
|
+
readonly abi: readonly [{
|
3
|
+
readonly type: "constructor";
|
4
|
+
readonly inputs: readonly [{
|
5
|
+
readonly name: "imageIds";
|
6
|
+
readonly type: "bytes32[]";
|
7
|
+
readonly internalType: "bytes32[]";
|
8
|
+
}];
|
9
|
+
readonly stateMutability: "nonpayable";
|
10
|
+
}, {
|
11
|
+
readonly type: "function";
|
12
|
+
readonly name: "VERIFIER_ROUTER";
|
13
|
+
readonly inputs: readonly [];
|
14
|
+
readonly outputs: readonly [{
|
15
|
+
readonly name: "";
|
16
|
+
readonly type: "address";
|
17
|
+
readonly internalType: "contract ProofVerifierRouter";
|
18
|
+
}];
|
19
|
+
readonly stateMutability: "view";
|
20
|
+
}];
|
21
|
+
readonly bytecode: {
|
22
|
+
readonly object: "0x60a060405234801561000f575f5ffd5b50604051615fd5380380615fd583398101604081905261002e916102ab565b5f303060405161003d90610263565b6001600160a01b03928316815291166020820152604001604051809103905ff08015801561006d573d5f5f3e3d5ffd5b5090505f5b82518110156100fb57816001600160a01b03166384cf84e184838151811061009c5761009c610372565b60200260200101516040518263ffffffff1660e01b81526004016100c291815260200190565b5f604051808303815f87803b1580156100d9575f5ffd5b505af11580156100eb573d5f5f3e3d5ffd5b5050600190920191506100729050565b5060405163f2fde38b60e01b81523360048201526001600160a01b0382169063f2fde38b906024015f604051808303815f87803b15801561013a575f5ffd5b505af115801561014c573d5f5f3e3d5ffd5b505060405163ada8f91960e01b81523360048201526001600160a01b038416925063ada8f91991506024015f604051808303815f87803b15801561018e575f5ffd5b505af11580156101a0573d5f5f3e3d5ffd5b50505050806040516101b190610270565b6001600160a01b039091168152602001604051809103905ff0801580156101da573d5f5f3e3d5ffd5b50816040516101e89061027d565b6001600160a01b039091168152602001604051809103905ff080158015610211573d5f5f3e3d5ffd5b5060405161021e9061028a565b6001600160a01b03928316815291166020820152604001604051809103905ff08015801561024e573d5f5f3e3d5ffd5b506001600160a01b0316608052506103869050565b61111b8061043d83390190565b6113ad8061155883390190565b612f1c8061290583390190565b6107b48061582183390190565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156102bb575f5ffd5b81516001600160401b038111156102d0575f5ffd5b8201601f810184136102e0575f5ffd5b80516001600160401b038111156102f9576102f9610297565b604051600582901b90603f8201601f191681016001600160401b038111828210171561032757610327610297565b604052918252602081840181019290810187841115610344575f5ffd5b6020850194505b838510156103675784518082526020958601959093500161034b565b509695505050505050565b634e487b7160e01b5f52603260045260245ffd5b60805160a261039b5f395f602e015260a25ff3fe6080604052348015600e575f5ffd5b50600436106026575f3560e01c806304e278ea14602a575b5f5ffd5b60507f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f3fea26469706673582212202a3be3e56b48ba34d410a6389f3227aee336b15d67f1c52e166ad0ed790f3e5b64736f6c634300081c0033608060405234801561000f575f5ffd5b5060405161111b38038061111b83398101604081905261002e916101b7565b6100385f8361006b565b506100637fb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e8261006b565b5050506101e8565b5f8061007784846100a1565b90508015610098575f8481526001602052604090206100969084610148565b505b90505b92915050565b5f828152602081815260408083206001600160a01b038516845290915281205460ff16610141575f838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556100f93390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600161009b565b505f61009b565b5f610098836001600160a01b0384165f81815260018301602052604081205461014157508154600181810184555f84815260208082209093018490558454848252828601909352604090209190915561009b565b80516001600160a01b03811681146101b2575f5ffd5b919050565b5f5f604083850312156101c8575f5ffd5b6101d18361019c565b91506101df6020840161019c565b90509250929050565b610f26806101f55f395ff3fe608060405234801561000f575f5ffd5b5060043610610132575f3560e01c8063853b5d19116100b4578063c5df91b511610079578063c5df91b5146102d0578063ca0d5358146102e3578063ca15c873146102f6578063d547741f14610309578063e58378bb1461031c578063f2fde38b14610330575f5ffd5b8063853b5d19146102655780639010d07c1461027857806391d14854146102a3578063a217fddf146102b6578063ada8f919146102bd575f5ffd5b80632f2ff15d116100fa5780632f2ff15d146101ef57806336568abe14610202578063755e936f1461021557806381e4c9a31461022857806384cf84e114610252575f5ffd5b806301ffc9a7146101365780631af6c4311461015e578063248a9ca3146101805780632505a3bd146101b05780632ad82eea146101da575b5f5ffd5b610149610144366004610cb5565b610343565b60405190151581526020015b60405180910390f35b61014961016c366004610cdc565b5f9081526003602052604090205460ff1690565b6101a261018e366004610cdc565b5f9081526020819052604090206001015490565b604051908152602001610155565b6101496101be366004610d7e565b80516020918201205f9081526004909152604090205460ff1690565b6101ed6101e8366004610d7e565b61036d565b005b6101ed6101fd366004610de6565b610441565b6101ed610210366004610de6565b61046b565b6101ed610223366004610d7e565b6104a3565b610149610236366004610d7e565b80516020918201205f9081526002909152604090205460ff1690565b6101ed610260366004610cdc565b610566565b6101ed610273366004610d7e565b610631565b61028b610286366004610e10565b6106f3565b6040516001600160a01b039091168152602001610155565b6101496102b1366004610de6565b610711565b6101a25f81565b6101ed6102cb366004610e30565b610739565b6101ed6102de366004610cdc565b610750565b6101ed6102f1366004610d7e565b610815565b6101a2610304366004610cdc565b6108d8565b6101ed610317366004610de6565b6108ee565b6101a25f516020610ed15f395f51905f5281565b6101ed61033e366004610e30565b610912565b5f6001600160e01b03198216635a05180f60e01b148061036757506103678261095e565b92915050565b5f516020610ed15f395f51905f5261038481610992565b81516020808401919091205f818152600490925260409091205460ff16156103ea5760405162461bcd60e51b815260206004820152601460248201527312d95e481a5cc8185b1c9958591e481d985b1a5960621b60448201526064015b60405180910390fd5b5f8181526004602052604090819020805460ff191660011790555133907fcbfa55581c230aeb174d969838d927cdd297755dfb967a33134312f1377ee71d90610434908690610e77565b60405180910390a2505050565b5f8281526020819052604090206001015461045b81610992565b610465838361099c565b50505050565b6001600160a01b03811633146104945760405163334bd91960e11b815260040160405180910390fd5b61049e82826109cf565b505050565b5f516020610ed15f395f51905f526104ba81610992565b81516020808401919091205f818152600290925260409091205460ff1661051f5760405162461bcd60e51b815260206004820152601960248201527843616e6e6f74207265766f6b6520696e76616c6964206b657960381b60448201526064016103e1565b5f8181526002602052604090819020805460ff191690555133907f66e43f8252a3257fe010a4fd6ae50f57624762cc64a6eceadb04b18cfdefac7d90610434908690610e77565b5f516020610ed15f395f51905f5261057d81610992565b5f8281526003602052604090205460ff16156105db5760405162461bcd60e51b815260206004820152601c60248201527f496d616765494420697320616c726561647920737570706f727465640000000060448201526064016103e1565b5f8281526003602052604090819020805460ff19166001179055517f010120d82c0c66b257c0ea628d405b1d3c2d37bb8dd9141f6c5c12cb0375c572906106259084815260200190565b60405180910390a15050565b5f516020610ed15f395f51905f5261064881610992565b81516020808401919091205f818152600290925260409091205460ff16156106a95760405162461bcd60e51b815260206004820152601460248201527312d95e481a5cc8185b1c9958591e481d985b1a5960621b60448201526064016103e1565b5f8181526002602052604090819020805460ff191660011790555133907f0a249d4766726d36cb6d6ac22cf998dc9fc02bb4ff9fda73ec1e3061c8a1db0990610434908690610e77565b5f82815260016020526040812061070a90836109fa565b9392505050565b5f918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b6107435f82610441565b61074d5f3361046b565b50565b5f516020610ed15f395f51905f5261076781610992565b5f8281526003602052604090205460ff166107ce5760405162461bcd60e51b815260206004820152602160248201527f43616e6e6f74207265766f6b6520756e737570706f7274656420496d616765496044820152601160fa1b60648201526084016103e1565b5f8281526003602052604090819020805460ff19169055517f4072861add20da436ef0a8274b90d102aea17b603f972cc8196d51f1a5d56179906106259084815260200190565b5f516020610ed15f395f51905f5261082c81610992565b81516020808401919091205f818152600490925260409091205460ff166108915760405162461bcd60e51b815260206004820152601960248201527843616e6e6f74207265766f6b6520696e76616c6964206b657960381b60448201526064016103e1565b5f8181526004602052604090819020805460ff191690555133907f69c40cdda8ad6e074bf320a4a76804a6652eb5231bda91b690dcb98010b2707990610434908690610e77565b5f81815260016020526040812061036790610a05565b5f8281526020819052604090206001015461090881610992565b61046583836109cf565b5f61092a5f516020610ed15f395f51905f525f6106f3565b90506109435f516020610ed15f395f51905f52826108ee565b61095a5f516020610ed15f395f51905f5283610441565b5050565b5f6001600160e01b03198216637965db0b60e01b148061036757506301ffc9a760e01b6001600160e01b0319831614610367565b61074d8133610a0e565b5f5f6109a88484610a47565b9050801561070a575f8481526001602052604090206109c79084610ad6565b509392505050565b5f5f6109db8484610aea565b9050801561070a575f8481526001602052604090206109c79084610b53565b5f61070a8383610b67565b5f610367825490565b610a188282610711565b61095a5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016103e1565b5f610a528383610711565b610acf575f838152602081815260408083206001600160a01b03861684529091529020805460ff19166001179055610a873390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610367565b505f610367565b5f61070a836001600160a01b038416610b8d565b5f610af58383610711565b15610acf575f838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610367565b5f61070a836001600160a01b038416610bd2565b5f825f018281548110610b7c57610b7c610e89565b905f5260205f200154905092915050565b5f818152600183016020526040812054610acf57508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610367565b5f8181526001830160205260408120548015610cac575f610bf4600183610e9d565b85549091505f90610c0790600190610e9d565b9050808214610c66575f865f018281548110610c2557610c25610e89565b905f5260205f200154905080875f018481548110610c4557610c45610e89565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080610c7757610c77610ebc565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610367565b5f915050610367565b5f60208284031215610cc5575f5ffd5b81356001600160e01b03198116811461070a575f5ffd5b5f60208284031215610cec575f5ffd5b5035919050565b634e487b7160e01b5f52604160045260245ffd5b5f5f67ffffffffffffffff841115610d2157610d21610cf3565b50604051601f19601f85018116603f0116810181811067ffffffffffffffff82111715610d5057610d50610cf3565b604052838152905080828401851015610d67575f5ffd5b838360208301375f60208583010152509392505050565b5f60208284031215610d8e575f5ffd5b813567ffffffffffffffff811115610da4575f5ffd5b8201601f81018413610db4575f5ffd5b610dc384823560208401610d07565b949350505050565b80356001600160a01b0381168114610de1575f5ffd5b919050565b5f5f60408385031215610df7575f5ffd5b82359150610e0760208401610dcb565b90509250929050565b5f5f60408385031215610e21575f5ffd5b50508035926020909101359150565b5f60208284031215610e40575f5ffd5b61070a82610dcb565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f61070a6020830184610e49565b634e487b7160e01b5f52603260045260245ffd5b8181038181111561036757634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603160045260245ffdfeb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214ea26469706673582212208144a6467d99aa78f3e478b2842d9c407aded885a7f330f329eb85d95f974d3964736f6c634300081c003360e060405234801561000f575f5ffd5b506040516113ad3803806113ad83398101604081905261002e91610115565b6001600160a01b03811660c0526100436100b8565b1561006157604051633d23e4d160e11b815260040160405180910390fd5b60405163deafbeef60e01b9061007690610108565b6001600160e01b03199091168152602001604051809103905ff0801580156100a0573d5f5f3e3d5ffd5b506001600160a01b031660a052506001608052610142565b5f46600114806100c8575046600a145b806100d4575046612105145b806100e057504661a4b1145b806100ec57504661a4ba145b806100f75750466089145b80610103575046610144145b905090565b6108af80610afe83390190565b5f60208284031215610125575f5ffd5b81516001600160a01b038116811461013b575f5ffd5b9392505050565b60805160a05160c0516109796101855f395f8181609f01528181610111015261049001525f8181605e015261016d01525f818160dd015261020201526109795ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c806308c84e70146100595780633fd66f221461009d5780634bc8e31c146100c35780639a44ea84146100d8578063f4cbae941461010c575b5f5ffd5b6100807f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b7f0000000000000000000000000000000000000000000000000000000000000000610080565b6100d66100d136600461060b565b610133565b005b6100ff7f000000000000000000000000000000000000000000000000000000000000000081565b6040516100949190610675565b6100807f000000000000000000000000000000000000000000000000000000000000000081565b61014a610145368690038601866107b6565b610200565b61016361015c368690038601866107b6565b8383610293565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663ab750e756101a96101a436889003880188610855565b610552565b866101400135866040518463ffffffff1660e01b81526004016101ce93929190610877565b5f6040518083038186803b1580156101e4575f5ffd5b505afa1580156101f6573d5f5f3e3d5ffd5b5050505050505050565b7f0000000000000000000000000000000000000000000000000000000000000000600181111561023257610232610661565b815160400151600181111561024957610249610661565b146102905760405162461bcd60e51b8152602060048201526012602482015271496e76616c69642070726f6f66206d6f646560701b60448201526064015b60405180910390fd5b50565b816001600160a01b031683606001515f01516001600160a01b0316146102ec5760405162461bcd60e51b815260206004820152600e60248201526d24b73b30b634b210383937bb32b960911b6044820152606401610287565b806001600160e01b0319168360600151602001516001600160e01b0319161461034a5760405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b21039b2b632b1ba37b960811b6044820152606401610287565b43836060015160400151106103b15760405162461bcd60e51b815260206004820152602760248201527f496e76616c696420626c6f636b206e756d6265723a20626c6f636b2066726f6d6044820152662066757475726560c81b6064820152608401610287565b436101008460600151604001516103c891906108ba565b10156104225760405162461bcd60e51b815260206004820152602360248201527f496e76616c696420626c6f636b206e756d6265723a20626c6f636b20746f6f206044820152621bdb1960ea1b6064820152608401610287565b60608084015160408101519101519040146104745760405162461bcd60e51b8152602060048201526012602482015271092dcecc2d8d2c840c4d8dec6d640d0c2e6d60731b6044820152606401610287565b6020830151604051631af6c43160e01b815260048101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631af6c43190602401602060405180830381865afa1580156104dd573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061050191906108df565b61054d5760405162461bcd60e51b815260206004820152601760248201527f556e737570706f727465642043616c6c477565737449640000000000000000006044820152606401610287565b505050565b606060018260400151600181111561056c5761056c610661565b036105ad5750602081810151519151604080516001600160e01b03199092169282019290925260248082019390935281518082039093018352604401905290565b81516020808401516040516105c39392016108fe565b6040516020818303038152906040529050919050565b919050565b80356001600160a01b03811681146105d9575f5ffd5b80356001600160e01b0319811681146105d9575f5ffd5b5f5f5f5f848603610260811215610620575f5ffd5b61020081121561062e575f5ffd5b50849350610200840135925061064761022085016105de565b915061065661024086016105f4565b905092959194509250565b634e487b7160e01b5f52602160045260245ffd5b602081016002831061069557634e487b7160e01b5f52602160045260245ffd5b91905290565b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff811182821017156106d2576106d261069b565b60405290565b604051610100810167ffffffffffffffff811182821017156106d2576106d261069b565b6040516080810167ffffffffffffffff811182821017156106d2576106d261069b565b8035600281106105d9575f5ffd5b5f610140828403121561073e575f5ffd5b6107466106af565b9050610751826105f4565b815282603f830112610761575f5ffd5b6107696106d8565b8061012084018581111561077b575f5ffd5b602085015b81811015610798578035845260209384019301610780565b508160208501526107a88161071f565b604085015250505092915050565b5f818303610200811280156107c9575f5ffd5b506107d26106fc565b6107dc858561072d565b815261014084013560208201526101608401356040820152608061017f1983011215610806575f5ffd5b61080e6106fc565b915061081d61018085016105de565b825261082c6101a085016105f4565b60208301526101c084013560408301526101e09093013560608083019190915283015250919050565b5f6101408284031215610866575f5ffd5b610870838361072d565b9392505050565b606081525f84518060608401528060208701608085015e5f608082850101526080601f19601f830116840101915050836020830152826040830152949350505050565b808201808211156108d957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f602082840312156108ef575f5ffd5b81518015158114610870575f5ffd5b6001600160e01b0319831681525f6004820183825b6008811015610932578151835260209283019290910190600101610913565b50505061010482019050939250505056fea264697066735822122054c192be77332b47bb8956220352d1dd1dd666eea70bf7f7563c1e39af378abf64736f6c634300081c003360a060405234801561000f575f5ffd5b506040516108af3803806108af83398101604081905261002e91610040565b6001600160e01b03191660805261006e565b5f60208284031215610050575f5ffd5b81516001600160e01b031981168114610067575f5ffd5b9392505050565b6080516108166100995f395f8181605e0152818160ea015281816101f4015261025801526108165ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c8063053c238d146100595780631599ead51461009e5780633a115bb1146100b357806366cf0e4b14610145578063ab750e7514610158575b5f5ffd5b6100807f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160e01b031990911681526020015b60405180910390f35b6100b16100ac3660046105b6565b61016b565b005b6101386100c13660046105ed565b60408051808201909152606081525f6020820152604080518082019091526001600160e01b03197f000000000000000000000000000000000000000000000000000000000000000016606082015260648101839052806084810160408051601f198184030181529190528152602001929092525090565b6040516100959190610604565b61013861015336600461064d565b610185565b6100b161016636600461066d565b6101b5565b61018261017882806106e7565b83602001356101d2565b50565b60408051808201909152606081525f60208201526101ae6100c16101a985856102f5565b61037f565b9392505050565b6101cc84846101c76101a986866102f5565b6101d2565b50505050565b6101df60045f8486610731565b6101e891610758565b6001600160e01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160e01b0319161461028b5761022f60045f8486610731565b61023891610758565b604051632e2ce35360e21b81526001600160e01b031991821660048201527f0000000000000000000000000000000000000000000000000000000000000000909116602482015260440160405180910390fd5b60408051602081018390520160408051601f1981840301815291905280516020909101206102bc8360048187610731565b6040516102ca929190610790565b6040518091039020146102f05760405163439cc0cd60e01b815260040160405180910390fd5b505050565b6102fd610574565b6040805160a0810182528481527fa3acc27117418996340b84e5a90f3ef4c49d22c79e44aad822ec9c313e1eb8e26020820152815180830183529091820190805f81526020015f60ff1681525081526020015f5f1b815260200161037660405180604001604052808681526020015f5f1b8152506104df565b90529392505050565b5f6002806040516103a8907172697363302e52656365697074436c61696d60701b815260120190565b602060405180830381855afa1580156103c3573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906103e691906107b3565b606084015184516020860151608087015160408801515160189060028111156104115761041161079f565b60408a810151602090810151825191820199909952908101969096526060860194909452608085019290925260a084015263ffffffff909116901b60e01b6001600160e01b03191660c082015260f89190911b6001600160f81b03191660c4820152600160fa1b60c882015260ca015b60408051601f198184030181529082905261049b916107ca565b602060405180830381855afa1580156104b6573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906104d991906107b3565b92915050565b5f600280604051610502906b1c9a5cd8cc0b93dd5d1c1d5d60a21b8152600c0190565b602060405180830381855afa15801561051d573d5f5f3e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061054091906107b3565b83516020808601516040805192830194909452928101919091526060810191909152600160f91b6080820152608201610481565b6040518060a001604052805f81526020015f81526020016105a4604080518082019091525f808252602082015290565b81526020015f81526020015f81525090565b5f602082840312156105c6575f5ffd5b813567ffffffffffffffff8111156105dc575f5ffd5b8201604081850312156101ae575f5ffd5b5f602082840312156105fd575f5ffd5b5035919050565b602081525f82516040602084015280518060608501528060208301608086015e5f60808286010152602085015160408501526080601f19601f8301168501019250505092915050565b5f5f6040838503121561065e575f5ffd5b50508035926020909101359150565b5f5f5f5f60608587031215610680575f5ffd5b843567ffffffffffffffff811115610696575f5ffd5b8501601f810187136106a6575f5ffd5b803567ffffffffffffffff8111156106bc575f5ffd5b8760208284010111156106cd575f5ffd5b602091820198909750908601359560400135945092505050565b5f5f8335601e198436030181126106fc575f5ffd5b83018035915067ffffffffffffffff821115610716575f5ffd5b60200191503681900382131561072a575f5ffd5b9250929050565b5f5f8585111561073f575f5ffd5b8386111561074b575f5ffd5b5050820193919092039150565b80356001600160e01b03198116906004841015610789576001600160e01b0319600485900360031b81901b82161691505b5092915050565b818382375f9101908152919050565b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156107c3575f5ffd5b5051919050565b5f82518060208501845e5f92019182525091905056fea2646970667358221220f60a9ae93de91b6b9140b6bf34d600015071e7e66bd3163c0cda0da6cc20f2b464736f6c634300081c003360e060405234801561000f575f5ffd5b50604051612f1c380380612f1c83398101604081905261002e916100d3565b6001600160a01b03811660c0525f6080526040517f8cdad9242664be3112aba377c5425a4df735eb1c6966472b561d2855932c0469907f04446e66d300eb7fb45c9726bb53c793dda407a62e9601618bb43c5c14657ac09061008f906100c6565b9182526020820152604001604051809103905ff0801580156100b3573d5f5f3e3d5ffd5b506001600160a01b031660a05250610100565b61246080610abc83390190565b5f602082840312156100e3575f5ffd5b81516001600160a01b03811681146100f9575f5ffd5b9392505050565b60805160a05160c0516109796101435f395f8181609f01528181610111015261049001525f8181605e015261016d01525f818160dd015261020201526109795ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c806308c84e70146100595780633fd66f221461009d5780634bc8e31c146100c35780639a44ea84146100d8578063f4cbae941461010c575b5f5ffd5b6100807f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b7f0000000000000000000000000000000000000000000000000000000000000000610080565b6100d66100d136600461060b565b610133565b005b6100ff7f000000000000000000000000000000000000000000000000000000000000000081565b6040516100949190610675565b6100807f000000000000000000000000000000000000000000000000000000000000000081565b61014a610145368690038601866107b6565b610200565b61016361015c368690038601866107b6565b8383610293565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663ab750e756101a96101a436889003880188610855565b610552565b866101400135866040518463ffffffff1660e01b81526004016101ce93929190610877565b5f6040518083038186803b1580156101e4575f5ffd5b505afa1580156101f6573d5f5f3e3d5ffd5b5050505050505050565b7f0000000000000000000000000000000000000000000000000000000000000000600181111561023257610232610661565b815160400151600181111561024957610249610661565b146102905760405162461bcd60e51b8152602060048201526012602482015271496e76616c69642070726f6f66206d6f646560701b60448201526064015b60405180910390fd5b50565b816001600160a01b031683606001515f01516001600160a01b0316146102ec5760405162461bcd60e51b815260206004820152600e60248201526d24b73b30b634b210383937bb32b960911b6044820152606401610287565b806001600160e01b0319168360600151602001516001600160e01b0319161461034a5760405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b21039b2b632b1ba37b960811b6044820152606401610287565b43836060015160400151106103b15760405162461bcd60e51b815260206004820152602760248201527f496e76616c696420626c6f636b206e756d6265723a20626c6f636b2066726f6d6044820152662066757475726560c81b6064820152608401610287565b436101008460600151604001516103c891906108ba565b10156104225760405162461bcd60e51b815260206004820152602360248201527f496e76616c696420626c6f636b206e756d6265723a20626c6f636b20746f6f206044820152621bdb1960ea1b6064820152608401610287565b60608084015160408101519101519040146104745760405162461bcd60e51b8152602060048201526012602482015271092dcecc2d8d2c840c4d8dec6d640d0c2e6d60731b6044820152606401610287565b6020830151604051631af6c43160e01b815260048101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631af6c43190602401602060405180830381865afa1580156104dd573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061050191906108df565b61054d5760405162461bcd60e51b815260206004820152601760248201527f556e737570706f727465642043616c6c477565737449640000000000000000006044820152606401610287565b505050565b606060018260400151600181111561056c5761056c610661565b036105ad5750602081810151519151604080516001600160e01b03199092169282019290925260248082019390935281518082039093018352604401905290565b81516020808401516040516105c39392016108fe565b6040516020818303038152906040529050919050565b919050565b80356001600160a01b03811681146105d9575f5ffd5b80356001600160e01b0319811681146105d9575f5ffd5b5f5f5f5f848603610260811215610620575f5ffd5b61020081121561062e575f5ffd5b50849350610200840135925061064761022085016105de565b915061065661024086016105f4565b905092959194509250565b634e487b7160e01b5f52602160045260245ffd5b602081016002831061069557634e487b7160e01b5f52602160045260245ffd5b91905290565b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff811182821017156106d2576106d261069b565b60405290565b604051610100810167ffffffffffffffff811182821017156106d2576106d261069b565b6040516080810167ffffffffffffffff811182821017156106d2576106d261069b565b8035600281106105d9575f5ffd5b5f610140828403121561073e575f5ffd5b6107466106af565b9050610751826105f4565b815282603f830112610761575f5ffd5b6107696106d8565b8061012084018581111561077b575f5ffd5b602085015b81811015610798578035845260209384019301610780565b508160208501526107a88161071f565b604085015250505092915050565b5f818303610200811280156107c9575f5ffd5b506107d26106fc565b6107dc858561072d565b815261014084013560208201526101608401356040820152608061017f1983011215610806575f5ffd5b61080e6106fc565b915061081d61018085016105de565b825261082c6101a085016105f4565b60208301526101c084013560408301526101e09093013560608083019190915283015250919050565b5f6101408284031215610866575f5ffd5b610870838361072d565b9392505050565b606081525f84518060608401528060208701608085015e5f608082850101526080601f19601f830116840101915050836020830152826040830152949350505050565b808201808211156108d957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f602082840312156108ef575f5ffd5b81518015158114610870575f5ffd5b6001600160e01b0319831681525f6004820183825b6008811015610932578151835260209283019290910190600101610913565b50505061010482019050939250505056fea2646970667358221220872fbb54f457541ca9955a3cec7fbd47c888fe38acad5aebd93b4d0c52e3c0d464736f6c634300081c0033610100604052348015610010575f5ffd5b5060405161246038038061246083398101604081905261002f91611047565b610038826102b9565b6001600160801b031990811660a0521660805260c08190526040517f72697363302e47726f74683136526563656970745665726966696572506172618152656d657465727360d01b60208201526002908190602601602060405180830381855afa1580156100a8573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906100cb9190611069565b8361021b845f8190506008817eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff16901b6008827fff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff0016901c1790506010817dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff16901b6010827fffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff000016901c1790506020817bffffffff00000000ffffffff00000000ffffffff00000000ffffffff16901b6020827fffffffff00000000ffffffff00000000ffffffff00000000ffffffff0000000016901c17905060408177ffffffffffffffff0000000000000000ffffffffffffffff16901b6040827fffffffffffffffff0000000000000000ffffffffffffffff000000000000000016901c179050608081901b608082901c179050919050565b610223610425565b60408051602081019590955284019290925260608301526080820152600360f81b60a082015260a20160408051601f198184030181529082905261026691611097565b602060405180830381855afa158015610281573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102a49190611069565b6001600160e01b03191660e052506111359050565b5f808061040b845f8190506008817eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff16901b6008827fff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff0016901c1790506010817dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff16901b6010827fffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff000016901c1790506020817bffffffff00000000ffffffff00000000ffffffff00000000ffffffff16901b6020827fffffffff00000000ffffffff00000000ffffffff00000000ffffffff0000000016901c17905060408177ffffffffffffffff0000000000000000ffffffffffffffff16901b6040827fffffffffffffffff0000000000000000ffffffffffffffff000000000000000016901c179050608081901b608082901c179050919050565b608081901b956001600160801b0319909116945092505050565b60408051600680825260e082019092525f918291906020820160c08036833701905050905060027f12ac9a25dcd5e1a832a9061a082c15dd1d61aa9c4d553505739d0f5d65dc3be47f025aa744581ebe7ad91731911c898569106ff5a2d30f3eee2b23c60ee980acd46040516020016104a8929190918252602082015260400190565b60408051601f19818403018152908290526104c291611097565b602060405180830381855afa1580156104dd573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105009190611069565b815f81518110610512576105126110a9565b60200260200101818152505060027f0707b920bc978c02f292fae2036e057be54294114ccc3c8769d883f688a1423f7f2e32a094b7589554f7bc357bf63481acd2d55555c203383782a4650787ff664260405160200161057c929190918252602082015260400190565b60408051601f198184030181529082905261059691611097565b602060405180830381855afa1580156105b1573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105d49190611069565b816001815181106105e7576105e76110a9565b60200260200101818152505060027f0bca36e2cbe6394b3e249751853f961511011c7148e336f4fd974644850fc3477f2ede7c9acf48cf3a3729fa3d68714e2a8435d4fa6db8f7f409c153b1fcdf9b8b604051602001610651929190918252602082015260400190565b60408051601f198184030181529082905261066b91611097565b602060405180830381855afa158015610686573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906106a99190611069565b816002815181106106bc576106bc6110a9565b60200260200101818152505060027f1b8af999dbfbb3927c091cc2aaf201e488cbacc3e2c6b6fb5a25f9112e04f2a77f2b91a26aa92e1b6f5722949f192a81c850d586d81a60157f3e9cf04f679cccd6604051602001610726929190918252602082015260400190565b60408051601f198184030181529082905261074091611097565b602060405180830381855afa15801561075b573d5f5f3e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061077e9190611069565b81600381518110610791576107916110a9565b60200260200101818152505060027f2b5f494ed674235b8ac1750bdfd5a7615f002d4a1dcefeddd06eda5a076ccd0d7f2fe520ad2020aab9cbba817fcbb9a863b8a76ff88f14f912c5e71665b2ad5e826040516020016107fb929190918252602082015260400190565b60408051601f198184030181529082905261081591611097565b602060405180830381855afa158015610830573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906108539190611069565b81600481518110610866576108666110a9565b60200260200101818152505060027f0f1c3c0d5d9da0fa03666843cde4e82e869ba5252fce3c25d5940320b1c4d4937f214bfcff74f425f6fe8c0d07b307482d8bc8bb2f3608f68287aa01bd0b69e8096040516020016108d0929190918252602082015260400190565b60408051601f19818403018152908290526108ea91611097565b602060405180830381855afa158015610905573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906109289190611069565b8160058151811061093b5761093b6110a9565b60200260200101818152505060028060405161097a907f72697363305f67726f746831362e566572696679696e674b65790000000000008152601a0190565b602060405180830381855afa158015610995573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906109b89190611069565b60027f2d4d9aa7e302d9df41749d5507949d05dbea33fbb16c643b22f599a2be6df2e27f14bedd503c37ceb061d8ec60209fe345ce89830a19230301f076caff004d1926604051602001610a16929190918252602082015260400190565b60408051601f1981840301815290829052610a3091611097565b602060405180830381855afa158015610a4b573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610a6e9190611069565b604080517f0967032fcbf776d1afc985f88877f182d38480a653f2decaa9794cbc3bf3060c60208201527f0e187847ad4c798374d0d6732bf501847dd68bc0e071241e0213bc7fc13db7ab918101919091527f304cfbd1e08a704a99f5e847d93f8c3caafddec46b7a0d379da69a4d112346a760608201527f1739c1b1a457a8c7313123d24d2f9192f896b7c63eea05a9d57f06547ad0cec8608082015260029060a00160408051601f1981840301815290829052610b2c91611097565b602060405180830381855afa158015610b47573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610b6a9190611069565b604080517f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260208201527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed918101919091527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60608201527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa608082015260029060a00160408051601f1981840301815290829052610c2891611097565b602060405180830381855afa158015610c43573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610c669190611069565b604080517f03b03cd5effa95ac9bee94f1f5ef907157bda4812ccf0b4c91f42bb629f83a1c60208201527f1aa085ff28179a12d922dba0547057ccaae94b9d69cfaa4e60401fea7f3e0333918101919091527f110c10134f200b19f6490846d518c9aea868366efb7228ca5c91d2940d03076260608201527f1e60f31fcbf757e837e867178318832d0b2d74d59e2fea1c7142df187d3fc6d3608082015260029060a00160408051601f1981840301815290829052610d2491611097565b602060405180830381855afa158015610d3f573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610d629190611069565b610ddb6002604051610d97907f72697363305f67726f746831362e566572696679696e674b65792e49430000008152601d0190565b602060405180830381855afa158015610db2573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610dd59190611069565b88610e6f565b6040805160208101979097528601949094526060850192909252608084015260a083015260c0820152600560f81b60e082015260e20160408051601f1981840301815290829052610e2b91611097565b602060405180830381855afa158015610e46573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610e699190611069565b91505090565b5f80805b8351811015610ec857610ebe85858360018851610e9091906110bd565b610e9a91906110bd565b81518110610eaa57610eaa6110a9565b602002602001015184610ed260201b60201c565b9150600101610e73565b5090505b92915050565b6040805160028082526060820183525f928392919060208301908036833701905050905083815f81518110610f0957610f096110a9565b6020026020010181815250508281600181518110610f2957610f296110a9565b6020908102919091010152610f3e8582610f47565b95945050505050565b604080515f80825260208201909252610f61848483610f69565b949350505050565b5f5f610f7b845161101160201b60201c565b90505f60088261ffff16901c60088361ffff16901b1760f01b9050600286868684604051602001610faf94939291906110dc565b60408051601f1981840301815290829052610fc991611097565b602060405180830381855afa158015610fe4573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906110079190611069565b9695505050505050565b5f61ffff821115611043576040516306dfcc6560e41b8152601060048201526024810183905260440160405180910390fd5b5090565b5f5f60408385031215611058575f5ffd5b505080516020909101519092909150565b5f60208284031215611079575f5ffd5b5051919050565b5f81518060208401855e5f93019283525090919050565b5f6110a28284611080565b9392505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610ecc57634e487b7160e01b5f52601160045260245ffd5b8481525f602082018551602087015f5b8281101561110a5781518452602093840193909101906001016110ec565b5050506111178186611080565b6001600160f01b031994909416845250506002909101949350505050565b60805160a05160c05160e0516112d76111895f395f8181608e01528181610808015261086c01525f818160e8015261094301525f8181610140015261090a01525f818161018001526108e201526112d75ff3fe608060405234801561000f575f5ffd5b5060043610610085575f3560e01c80638989fa2e116100585780638989fa2e1461013b5780639181e4b11461017b578063ab750e75146101a2578063ffa1ad74146101b5575f5ffd5b8063053c238d146100895780631599ead5146100ce578063258038e2146100e357806334baeab914610118575b5f5ffd5b6100b07f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160e01b031990911681526020015b60405180910390f35b6100e16100dc366004610e1c565b6101e6565b005b61010a7f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100c5565b61012b610126366004610e6a565b610200565b60405190151581526020016100c5565b6101627f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160801b031990911681526020016100c5565b6101627f000000000000000000000000000000000000000000000000000000000000000081565b6100e16101b0366004610ecc565b6107c4565b6101d9604051806040016040528060058152602001640312e322e360dc1b81525081565b6040516100c59190610f46565b6101fd6101f38280610f7b565b83602001356107e6565b50565b5f610755565b7f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f000000181106101fd575f5f5260205ff35b5f60405183815284602082015285604082015260408160608360076107d05a03fa915081610265575f5f5260205ff35b825160408201526020830151606082015260408360808360066107d05a03fa91505080610294575f5f5260205ff35b5050505050565b7f12ac9a25dcd5e1a832a9061a082c15dd1d61aa9c4d553505739d0f5d65dc3be485527f025aa744581ebe7ad91731911c898569106ff5a2d30f3eee2b23c60ee980acd460208601525f608086018661033787357f2e32a094b7589554f7bc357bf63481acd2d55555c203383782a4650787ff66427f0707b920bc978c02f292fae2036e057be54294114ccc3c8769d883f688a1423f84610235565b61038760208801357f2ede7c9acf48cf3a3729fa3d68714e2a8435d4fa6db8f7f409c153b1fcdf9b8b7f0bca36e2cbe6394b3e249751853f961511011c7148e336f4fd974644850fc34784610235565b6103d760408801357f2b91a26aa92e1b6f5722949f192a81c850d586d81a60157f3e9cf04f679cccd67f1b8af999dbfbb3927c091cc2aaf201e488cbacc3e2c6b6fb5a25f9112e04f2a784610235565b61042760608801357f2fe520ad2020aab9cbba817fcbb9a863b8a76ff88f14f912c5e71665b2ad5e827f2b5f494ed674235b8ac1750bdfd5a7615f002d4a1dcefeddd06eda5a076ccd0d84610235565b61047760808801357f214bfcff74f425f6fe8c0d07b307482d8bc8bb2f3608f68287aa01bd0b69e8097f0f1c3c0d5d9da0fa03666843cde4e82e869ba5252fce3c25d5940320b1c4d49384610235565b50823581527f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4760208401357f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4703066020820152833560408201526020840135606082015260408401356080820152606084013560a08201527f2d4d9aa7e302d9df41749d5507949d05dbea33fbb16c643b22f599a2be6df2e260c08201527f14bedd503c37ceb061d8ec60209fe345ce89830a19230301f076caff004d192660e08201527f0967032fcbf776d1afc985f88877f182d38480a653f2decaa9794cbc3bf3060c6101008201527f0e187847ad4c798374d0d6732bf501847dd68bc0e071241e0213bc7fc13db7ab6101208201527f304cfbd1e08a704a99f5e847d93f8c3caafddec46b7a0d379da69a4d112346a76101408201527f1739c1b1a457a8c7313123d24d2f9192f896b7c63eea05a9d57f06547ad0cec86101608201525f87015161018082015260205f018701516101a08201527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c26101c08201527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed6101e08201527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b6102008201527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa610220820152843561024082015260208501356102608201527f03b03cd5effa95ac9bee94f1f5ef907157bda4812ccf0b4c91f42bb629f83a1c6102808201527f1aa085ff28179a12d922dba0547057ccaae94b9d69cfaa4e60401fea7f3e03336102a08201527f110c10134f200b19f6490846d518c9aea868366efb7228ca5c91d2940d0307626102c08201527f1e60f31fcbf757e837e867178318832d0b2d74d59e2fea1c7142df187d3fc6d36102e08201526020816103008360086107d05a03fa9051169695505050505050565b604051610380810160405261076c5f840135610206565b6107796020840135610206565b6107866040840135610206565b6107936060840135610206565b6107a06080840135610206565b6107ad60a0840135610206565b6107ba818486888a61029b565b9050805f5260205ff35b6107e084846107db6107d686866109fa565b610a86565b6107e6565b50505050565b6107f360045f8486610fc5565b6107fc91610fec565b6001600160e01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160e01b0319161461089f5761084360045f8486610fc5565b61084c91610fec565b604051632e2ce35360e21b81526001600160e01b031991821660048201527f0000000000000000000000000000000000000000000000000000000000000000909116602482015260440160405180910390fd5b5f5f6108aa83610be0565b90925090505f6108bd8560048189610fc5565b8101906108ca91906110e1565b8051602080830151604080850151815160a0810183527f0000000000000000000000000000000000000000000000000000000000000000608090811c82527f0000000000000000000000000000000000000000000000000000000000000000811c9582019590955289851c8184015288851c60608201527f00000000000000000000000000000000000000000000000000000000000000009481019490945290516334baeab960e01b81529495505f9430946334baeab99461099294919391926004016111be565b602060405180830381865afa1580156109ad573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109d19190611241565b9050806109f15760405163439cc0cd60e01b815260040160405180910390fd5b50505050505050565b610a02610dda565b6040805160a0810182528481527fa3acc27117418996340b84e5a90f3ef4c49d22c79e44aad822ec9c313e1eb8e26020820152815180830183529091820190805f81526020015f60ff1681525081526020015f5f1b8152602001610a7b60405180604001604052808681526020015f5f1b815250610d45565b905290505b92915050565b5f600280604051610aaf907172697363302e52656365697074436c61696d60701b815260120190565b602060405180830381855afa158015610aca573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610aed9190611274565b60608401518451602086015160808701516040880151516018906002811115610b1857610b18611260565b60408a810151602090810151825191820199909952908101969096526060860194909452608085019290925260a084015263ffffffff909116901b60e01b6001600160e01b03191660c082015260f89190911b6001600160f81b03191660c4820152600160fa1b60c882015260ca015b60408051601f1981840301815290829052610ba29161128b565b602060405180830381855afa158015610bbd573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610a809190611274565b5f8080610d2b845f8190506008817eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff16901b6008827fff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff0016901c1790506010817dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff16901b6010827fffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff000016901c1790506020817bffffffff00000000ffffffff00000000ffffffff00000000ffffffff16901b6020827fffffffff00000000ffffffff00000000ffffffff00000000ffffffff0000000016901c17905060408177ffffffffffffffff0000000000000000ffffffffffffffff16901b60408277ffffffffffffffff0000000000000000ffffffffffffffff1916901c179050608081901b608082901c179050919050565b608081901b956001600160801b0319909116945092505050565b5f600280604051610d68906b1c9a5cd8cc0b93dd5d1c1d5d60a21b8152600c0190565b602060405180830381855afa158015610d83573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610da69190611274565b83516020808601516040805192830194909452928101919091526060810191909152600160f91b6080820152608201610b88565b6040518060a001604052805f81526020015f8152602001610e0a604080518082019091525f808252602082015290565b81526020015f81526020015f81525090565b5f60208284031215610e2c575f5ffd5b813567ffffffffffffffff811115610e42575f5ffd5b820160408185031215610e53575f5ffd5b9392505050565b8060408101831015610a80575f5ffd5b5f5f5f5f6101a08587031215610e7e575f5ffd5b610e888686610e5a565b935060c0850186811115610e9a575f5ffd5b604086019350610eaa8782610e5a565b925050856101a086011115610ebd575f5ffd5b50919490935090916101000190565b5f5f5f5f60608587031215610edf575f5ffd5b843567ffffffffffffffff811115610ef5575f5ffd5b8501601f81018713610f05575f5ffd5b803567ffffffffffffffff811115610f1b575f5ffd5b876020828401011115610f2c575f5ffd5b602091820198909750908601359560400135945092505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f5f8335601e19843603018112610f90575f5ffd5b83018035915067ffffffffffffffff821115610faa575f5ffd5b602001915036819003821315610fbe575f5ffd5b9250929050565b5f5f85851115610fd3575f5ffd5b83861115610fdf575f5ffd5b5050820193919092039150565b80356001600160e01b0319811690600484101561101d576001600160e01b0319600485900360031b81901b82161691505b5092915050565b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff8111828210171561105b5761105b611024565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561108a5761108a611024565b604052919050565b5f82601f8301126110a1575f5ffd5b6110ab6040611061565b8060408401858111156110bc575f5ffd5b845b818110156110d65780358452602093840193016110be565b509095945050505050565b5f6101008284031280156110f3575f5ffd5b506110fc611038565b6111068484611092565b815283605f840112611116575f5ffd5b604061112181611061565b8060c0860187811115611132575f5ffd5b604087015b81811015611158576111498982611092565b84526020909301928401611137565b508160208601526111698882611092565b604086015250929695505050505050565b805f5b60028110156107e057815184526020938401939091019060010161117d565b805f5b60058110156107e057815184526020938401939091019060010161119f565b6101a081016111cd828761117a565b60408201855f5b600281101561121a578151835f5b60028110156112015782518252602092830192909101906001016111e2565b50505060409290920191602091909101906001016111d4565b50505061122a60c083018561117a565b61123861010083018461119c565b95945050505050565b5f60208284031215611251575f5ffd5b81518015158114610e53575f5ffd5b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215611284575f5ffd5b5051919050565b5f82518060208501845e5f92019182525091905056fea26469706673582212202a001cf42514057842304ec6ca3a486e5970fa3eb64fd673c04a9333313cce3a64736f6c634300081c003360c060405234801561000f575f5ffd5b506040516107b43803806107b483398101604081905261002e9161018b565b816001600160a01b0316633fd66f226040518163ffffffff1660e01b8152600401602060405180830381865afa15801561006a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061008e91906101c3565b6001600160a01b0316816001600160a01b0316633fd66f226040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100d3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100f791906101c3565b6001600160a01b03161461015d5760405162461bcd60e51b8152602060048201526024808201527f5665726966696572732073686f756c64207573652073616d65207265706f7369604482015263746f727960e01b606482015260840160405180910390fd5b6001600160a01b039182166080521660a0526101e5565b6001600160a01b0381168114610188575f5ffd5b50565b5f5f6040838503121561019c575f5ffd5b82516101a781610174565b60208401519092506101b881610174565b809150509250929050565b5f602082840312156101d3575f5ffd5b81516101de81610174565b9392505050565b60805160a05161059c6102185f395f818160530152818160d8015261024f01525f818160b301526101a3015261059c5ff3fe608060405234801561000f575f5ffd5b506004361061004a575f3560e01c806319f9dd0a1461004e5780633fd66f22146100915780634bc8e31c14610099578063d06da682146100ae575b5f5ffd5b6100757f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b6100756100d5565b6100ac6100a73660046102f0565b61015b565b005b6100757f000000000000000000000000000000000000000000000000000000000000000081565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633fd66f226040518163ffffffff1660e01b8152600401602060405180830381865afa158015610132573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101569190610348565b905090565b600161017661016f368790038701876103ed565b6040015190565b60018111156101875761018761036a565b0361020f576040516312f238c760e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690634bc8e31c906101de908790879087908790600401610478565b5f6040518083038186803b1580156101f4575f5ffd5b505afa158015610206573d5f5f3e3d5ffd5b505050506102b7565b5f61022261016f368790038701876103ed565b60018111156102335761023361036a565b036102b7576040516312f238c760e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690634bc8e31c9061028a908790879087908790600401610478565b5f6040518083038186803b1580156102a0575f5ffd5b505afa1580156102b2573d5f5f3e3d5ffd5b505050505b50505050565b6001600160a01b03811681146102d1575f5ffd5b50565b80356001600160e01b0319811681146102eb575f5ffd5b919050565b5f5f5f5f848603610260811215610305575f5ffd5b610200811215610313575f5ffd5b50849350610200840135925061022084013561032e816102bd565b915061033d61024086016102d4565b905092959194509250565b5f60208284031215610358575f5ffd5b8151610363816102bd565b9392505050565b634e487b7160e01b5f52602160045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff811182821017156103b5576103b561037e565b60405290565b604051610100810167ffffffffffffffff811182821017156103b5576103b561037e565b8035600281106102eb575f5ffd5b5f6101408284031280156103ff575f5ffd5b50610408610392565b610411836102d4565b815283603f840112610421575f5ffd5b6104296103bb565b8061012085018681111561043b575f5ffd5b602086015b81811015610458578035845260209384019301610440565b50816020850152610468816103df565b6040850152509195945050505050565b61026081016001600160e01b031961048f876102d4565b1682526101006020870160208401376104ab61012087016103df565b600281106104c757634e487b7160e01b5f52602160045260245ffd5b610120830152610140868101359083015261016080870135908301526101808601356104f2816102bd565b6001600160a01b03166101808301526001600160e01b03196105176101a088016102d4565b166101a08301526101c086810135908301526101e0808701359083015261020082018590526001600160a01b0384166102208301526001600160e01b031983166102408301529594505050505056fea2646970667358221220ee2d9c330642bcbddbae38effa11507849f2fb7e8fa0c06c4df4d70ce445a27964736f6c634300081c0033";
|
23
|
+
readonly sourceMap: "232:585:27:-:0;;;333:482;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;382:21;429:4;444;406:44;;;;;:::i;:::-;-1:-1:-1;;;;;1508:32:28;;;1490:51;;1577:32;;1572:2;1557:18;;1550:60;1478:2;1463:18;406:44:27;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;382:68:27;-1:-1:-1;465:9:27;460:112;484:8;:15;480:1;:19;460:112;;;520:10;-1:-1:-1;;;;;520:28:27;;549:8;558:1;549:11;;;;;;;;:::i;:::-;;;;;;;520:41;;;;;;;;;;;;;1899:25:28;;1887:2;1872:18;;1753:177;520:41:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;501:3:27;;;;;-1:-1:-1;460:112:27;;-1:-1:-1;460:112:27;;-1:-1:-1;581:40:27;;-1:-1:-1;;;581:40:27;;610:10;581:40;;;2081:51:28;-1:-1:-1;;;;;581:28:27;;;;;2054:18:28;;581:40:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;631:40:27;;-1:-1:-1;;;631:40:27;;660:10;631:40;;;2081:51:28;-1:-1:-1;;;;;631:28:27;;;-1:-1:-1;631:28:27;;-1:-1:-1;2054:18:28;;631:40:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;758:10;736:33;;;;;:::i;:::-;-1:-1:-1;;;;;2099:32:28;;;2081:51;;2069:2;2054:18;736:33:27;;;;;;;;;;;;;;;;;;;;;;;796:10;771:36;;;;;:::i;:::-;-1:-1:-1;;;;;2099:32:28;;;2081:51;;2069:2;2054:18;771:36:27;;;;;;;;;;;;;;;;;;;;;;;712:96;;;;;:::i;:::-;-1:-1:-1;;;;;1508:32:28;;;1490:51;;1577:32;;1572:2;1557:18;;1550:60;1478:2;1463:18;712:96:27;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;682:126:27;;;-1:-1:-1;232:585:27;;-1:-1:-1;232:585:27;;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;:::o;14:127:28:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:1165;241:6;294:2;282:9;273:7;269:23;265:32;262:52;;;310:1;307;300:12;262:52;337:16;;-1:-1:-1;;;;;365:30:28;;362:50;;;408:1;405;398:12;362:50;431:22;;484:4;476:13;;472:27;-1:-1:-1;462:55:28;;513:1;510;503:12;462:55;540:9;;-1:-1:-1;;;;;561:30:28;;558:56;;;594:18;;:::i;:::-;676:2;670:9;637:1;633:14;;;;730:2;722:11;;-1:-1:-1;;718:25:28;706:38;;-1:-1:-1;;;;;759:34:28;;795:22;;;756:62;753:88;;;821:18;;:::i;:::-;857:2;850:22;907;;;957:2;987:11;;;983:20;;;907:22;945:15;;1015:19;;;1012:39;;;1047:1;1044;1037:12;1012:39;1079:2;1075;1071:11;1060:22;;1091:189;1107:6;1102:3;1099:15;1091:189;;;1197:10;;1220:18;;;1267:2;1124:12;;;;1197:10;;-1:-1:-1;1258:12:28;1091:189;;;-1:-1:-1;1299:6:28;146:1165;-1:-1:-1;;;;;;146:1165:28:o;1621:127::-;1682:10;1677:3;1673:20;1670:1;1663:31;1713:4;1710:1;1703:15;1737:4;1734:1;1727:15;2370:355;232:585:27;;;;;;;;;;;;";
|
24
|
+
readonly linkReferences: {};
|
25
|
+
};
|
26
|
+
readonly deployedBytecode: {
|
27
|
+
readonly object: "0x6080604052348015600e575f5ffd5b50600436106026575f3560e01c806304e278ea14602a575b5f5ffd5b60507f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f3fea26469706673582212202a3be3e56b48ba34d410a6389f3227aee336b15d67f1c52e166ad0ed790f3e5b64736f6c634300081c0033";
|
28
|
+
readonly sourceMap: "232:585:27:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;274:52;;;;;;;;-1:-1:-1;;;;;206:32:28;;;188:51;;176:2;161:18;274:52:27;;;;;;";
|
29
|
+
readonly linkReferences: {};
|
30
|
+
readonly immutableReferences: {
|
31
|
+
readonly "5475": readonly [{
|
32
|
+
readonly start: 46;
|
33
|
+
readonly length: 32;
|
34
|
+
}];
|
35
|
+
};
|
36
|
+
};
|
37
|
+
readonly methodIdentifiers: {
|
38
|
+
readonly "VERIFIER_ROUTER()": "04e278ea";
|
39
|
+
};
|
40
|
+
readonly rawMetadata: "{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"imageIds\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"VERIFIER_ROUTER\",\"outputs\":[{\"internalType\":\"contract ProofVerifierRouter\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/testing/TestVerifierRouterDeployer.sol\":\"TestVerifierRouterDeployer\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin-contracts-5.0.1/=dependencies/@openzeppelin-contracts-5.0.1/\",\":@openzeppelin-contracts-5.1.0/=dependencies/risc0-ethereum-1.2.0/dependencies/@openzeppelin-contracts-5.1.0/\",\":forge-std-1.9.4/=dependencies/forge-std-1.9.4/\",\":forge-std/=dependencies/risc0-ethereum-1.2.0/dependencies/forge-std-1.9.4/src/\",\":openzeppelin-contracts/=dependencies/@openzeppelin-contracts-5.0.1/\",\":risc0-ethereum-1.2.0/=dependencies/risc0-ethereum-1.2.0/\"]},\"sources\":{\"dependencies/@openzeppelin-contracts-5.0.1/access/AccessControl.sol\":{\"keccak256\":\"0xa0e92d42942f4f57c5be50568dac11e9d00c93efcb458026e18d2d9b9b2e7308\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://46326c0bb1e296b67185e81c918e0b40501b8b6386165855df0a3f3c634b6a80\",\"dweb:/ipfs/QmTwyrDYtsxsk6pymJTK94PnEpzsmkpUxFuzEiakDopy4Z\"]},\"dependencies/@openzeppelin-contracts-5.0.1/access/IAccessControl.sol\":{\"keccak256\":\"0xb6b36edd6a2999fd243ff226d6cbf84bd71af2432bbd0dfe19392996a1d9cb41\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1fd2f35495652e57e3f99bc6c510bc5f7dd398a176ea2e72d8ed730aebc6ca26\",\"dweb:/ipfs/QmTQV6X4gkikTib49cho5iDX3JvSQbdsoEChoDwrk3CbbH\"]},\"dependencies/@openzeppelin-contracts-5.0.1/access/extensions/AccessControlEnumerable.sol\":{\"keccak256\":\"0xb1c906fcd870fc8dfedb63bfb1bc58b4d2a7469bc13cc44d996fda430693850a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd98c7779af61b220166cf952a05f6aca82ec859744d407d29043f8100adfb9c\",\"dweb:/ipfs/Qmd6ftRk6cJgdooybM6F1X26R4SSUeNksv6Gni2NwEnKDw\"]},\"dependencies/@openzeppelin-contracts-5.0.1/access/extensions/IAccessControlEnumerable.sol\":{\"keccak256\":\"0xc1435f102633849858e75d7bed14c636f25448ceb3406d82992b0f2df52f4306\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ce1815e3a1da24f91b8e2ec24cf09d0d46e0fbeddcbe2cb0d8b2e05b91ceb7b3\",\"dweb:/ipfs/QmYTy1AQB5EV5jwuGsB49yykng2oG3x5ss4bDjFNxk3He4\"]},\"dependencies/@openzeppelin-contracts-5.0.1/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"]},\"dependencies/@openzeppelin-contracts-5.0.1/utils/introspection/ERC165.sol\":{\"keccak256\":\"0x9e8778b14317ba9e256c30a76fd6c32b960af621987f56069e1e819c77c6a133\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1777404f1dcd0fac188e55a288724ec3c67b45288e49cc64723e95e702b49ab8\",\"dweb:/ipfs/QmZFdC626GButBApwDUvvTnUzdinevC3B24d7yyh57XkiA\"]},\"dependencies/@openzeppelin-contracts-5.0.1/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"]},\"dependencies/@openzeppelin-contracts-5.0.1/utils/math/SafeCast.sol\":{\"keccak256\":\"0xe19a4d5f31d2861e7344e8e535e2feafb913d806d3e2b5fe7782741a2a7094fe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4aed79c0fa6f0546ed02f2f683e8f77f0fd2ed7eb34d8bbf3d373c9a6d95b13c\",\"dweb:/ipfs/QmWqVz6UAVqmnWU5pqYPt1o6iDEZyPaBraAA3rKfTTSfYj\"]},\"dependencies/@openzeppelin-contracts-5.0.1/utils/structs/EnumerableSet.sol\":{\"keccak256\":\"0x86c1470cbfd878491e5de030072b647352d36bd27122cffb928970b1945282aa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ad85dd393ee0a1917c57046abc5155f51f77844b2c6a42c05c1b8dd26d6ff3c1\",\"dweb:/ipfs/QmNqYc8To2NdnpP6E1tGz7t6A7beuENde5yovwov5pW1fA\"]},\"dependencies/risc0-ethereum-1.2.0/src/IRiscZeroSelectable.sol\":{\"keccak256\":\"0x39019bc9524b46ce9818d4d46a0fec57015ef0484858228bcb3b1c45efc7db19\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://964ecb93cae8853bf4781bdc8cb2cf1049dff5c052da6b798759487093b1c4ab\",\"dweb:/ipfs/QmXfKLM74E3Y4m5y4JiVJdZjmkzCmHPTqS1aqSJ9vdSXyA\"]},\"dependencies/risc0-ethereum-1.2.0/src/IRiscZeroVerifier.sol\":{\"keccak256\":\"0xae73e91e4d2829b0a88176584d876382b4b7540ff07c62cb947cdf9ea43d5cf3\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://f2dd7da39a6f9b100fc1dcde565d799462cdc7d27722d2265317c3a01619c818\",\"dweb:/ipfs/Qmd3k3kcvrtfkLqVza4jHodbFH8wvq5vmfPtwekBKtPjmz\"]},\"dependencies/risc0-ethereum-1.2.0/src/StructHash.sol\":{\"keccak256\":\"0xce612be2064752d2df89cfa2e9f73bba1ad891438d11d6fa7fc1285350b12fdd\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://5915dac04779e37024e87f723f9ee2eecc87e9e1162f37d73d5502aced9fb484\",\"dweb:/ipfs/QmRLFdpKoUZeNTNditFTrE72g7sryCVnERE14duRgXHSJs\"]},\"dependencies/risc0-ethereum-1.2.0/src/Util.sol\":{\"keccak256\":\"0x230a9a58bb2b0c68d4921ecc3672783f941890a2fa3a238dbe5188cfb7658b82\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://586cb5296c564761609ca8aaae5b1fbbdb19ab1e174f7197f602572d9e82b70c\",\"dweb:/ipfs/QmWxDmucSfg3Wgdk1rVcheDHwkziTsXWvKpKSCnxtpQBqg\"]},\"dependencies/risc0-ethereum-1.2.0/src/groth16/ControlID.sol\":{\"keccak256\":\"0xf54137d0a508d47c0ecb9d4f1ab478726d79b97943e48ca3abcb47d3fdfd8f95\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://9563419ad6cd8ddadd12c2714ff06395d0cae6b330dec77fc943b7097494bea7\",\"dweb:/ipfs/QmRCPFrtzu8RZJe3YnwKK6YwhJLih23T4gag1smnzHT5W8\"]},\"dependencies/risc0-ethereum-1.2.0/src/groth16/Groth16Verifier.sol\":{\"keccak256\":\"0xaadc5747c8c88bba828e692020e880ef31d38964d3e419099e3d3a194312ea62\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://a0ad76c8785d08afaf315d027f6e3031c3200760c872de66f5a02d8a4364b228\",\"dweb:/ipfs/QmW2kF7ukKqstmCT5M33U8bvw3AXqP8yaCbWycb7v4Nsef\"]},\"dependencies/risc0-ethereum-1.2.0/src/groth16/RiscZeroGroth16Verifier.sol\":{\"keccak256\":\"0x2eaa58d71a6f53446dc2889279cfec755541970ae8b07f1adced29481b75d5ac\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://ede637fde23140c135ae3bf7545a29071f80ae4d143491da4b8797b99dffcd78\",\"dweb:/ipfs/QmX4P3R6ktbdy4bfcJ92GfzUfLw8PC8RAH65Yhpa7dnqS4\"]},\"dependencies/risc0-ethereum-1.2.0/src/test/RiscZeroMockVerifier.sol\":{\"keccak256\":\"0x78d0c64eed6d901237c1e9f3a6cffe0a7632ff68b3f571b72e00f43322621453\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://290d76f572ffc0537155f26b1447ac4a1e690409a6d1d92d84b8ecb6a4ac60ac\",\"dweb:/ipfs/QmQ7rgKtTRaKjzYGZLfgJUFCDCWGMNPr6rWNc5AdDrX4JA\"]},\"src/CallAssumptions.sol\":{\"keccak256\":\"0xc3d0b9470794038f8018094138ab2d6fae7d639b8e213889a1a591f92f855025\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://a14b286d81c22817c91a87bece4e6a038fcfb798179fcbc782f7dd8fc9e174b7\",\"dweb:/ipfs/QmPZTBbCHZfscMYaqfuQ3WiVdKbBemj5wpgb8bFhygGj8K\"]},\"src/Proof.sol\":{\"keccak256\":\"0x32db566314f73f696e2ff0839ca7a41c9f04d74c96f2d8604c53f92dccfa3a43\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://2ea032ed2a364dd97eeebe7df93cf252913284ea76a1fa1478d9436a916a83f3\",\"dweb:/ipfs/QmW873QftHexSzpEqmAVJ9vUd1cJD584qTa7mzqkhhipMZ\"]},\"src/Repository.sol\":{\"keccak256\":\"0xd346825794a205b260f3e58e83ced657fffd0819fe78e24e96310f34fc9f5a0d\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://8185cb6e16f51ff98aa9bb2e0cc003bc1bea796ebc6425a114bb1b767123a928\",\"dweb:/ipfs/Qmb5UppxkVtDePuMs8Kj3SDgw2oPYcDEtZH81CKrXLhZku\"]},\"src/Seal.sol\":{\"keccak256\":\"0xa61c6146260bd3006392ec7b91bfb46c1d73493ff5a01c9ce702b8c90f1a392c\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://ebf725dc623c0b6d3f8e74c2eb625d662303c22ba646fab710a4fbdf20d5e3c3\",\"dweb:/ipfs/Qmat3kzvD19kLMHRmomknHzJnDdQfyU5pQDbhP5BsZTSvg\"]},\"src/proof_verifier/ChainId.sol\":{\"keccak256\":\"0x755479916bf59498ad41df7f120f3a0b8da0ec1d00a3ea96024d8647011a73e2\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://3fca7683409d8ab96c18c0616c7a1de692282e9d1b5d7006649960c3dffe964e\",\"dweb:/ipfs/QmNo77eW4FTV7knkxgMf8z9pvb9A7xQf5eoARtcPPffjn6\"]},\"src/proof_verifier/FakeProofVerifier.sol\":{\"keccak256\":\"0x12727eeb39e9fb2f95a80cd79865701a86bb11f5220a1b30ad94f5f8f04e658f\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://af702f85ff6101562fd768c604480981377b94c66657efa5f2cfc59716f25df1\",\"dweb:/ipfs/QmUrZz1CzgGQQH8LaWg3cKVqH9BuDuBfhX38mq66YFQZKo\"]},\"src/proof_verifier/Groth16ProofVerifier.sol\":{\"keccak256\":\"0x9d20d28f7281d6d7cae608e3e07f485a1ebab01385ea6f6c9f14732388ca19e5\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://0222b49b98a410ceaaf3780e57527b85f529977dd0ff3e978fda1963d1b61e02\",\"dweb:/ipfs/QmbWuATM3kezBjPaYws1Czbqd5NPDnRkAKPvwHSBXANsQw\"]},\"src/proof_verifier/IProofVerifier.sol\":{\"keccak256\":\"0xf48514ae0258f907c64cafb92d583cdbe704b4c0269da56f7336c3ec5bab0e82\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://a79c7bd455e908906b557c6cc7db2b6ec77d9f650a1ac0f4295c68e95894e193\",\"dweb:/ipfs/QmdLufVnM7uAVWLtVwdVKsLMVg2b1iKWKLN9AdJYAy4JHP\"]},\"src/proof_verifier/ProofVerifierBase.sol\":{\"keccak256\":\"0x66f28abed63945dc6055e605176bc38da3f7fe040f7f42b1ef79c9030f2d4e75\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://76fa3565277af4edd785cb55778cd71959288ecd1c87634b16ae3a053e1a006d\",\"dweb:/ipfs/QmVarQXiK5KtLmzNo7ben9gPCHqXspfe29LApcEumgv7cD\"]},\"src/proof_verifier/ProofVerifierRouter.sol\":{\"keccak256\":\"0x57847e7cfea1dea540f57906316f8dcfc5116ed9d3e7f8eb44c6ffaf7345f446\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://ec1dafe1aec7724dbcf1b7fd1a9996e32a6366da759c07acfda408c29e63bd81\",\"dweb:/ipfs/QmcvqbizyceFHECiBCesJY3TbbZdGx4PiDm5zFzwtaMZA1\"]},\"src/testing/TestVerifierRouterDeployer.sol\":{\"keccak256\":\"0xc10d1a4317ac83f9424809947b86f2d6d033df596ae0fea49c4f8a2b8ec57618\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://c8a5b61760d8dd9e3314a816bb5f06e68ae3b897afa7bef3886038db130d66a6\",\"dweb:/ipfs/QmccPnr5FodeXkDhHis4LMJ8Ai71HNEMVqiWKvBzuiPiAA\"]}},\"version\":1}";
|
41
|
+
readonly metadata: {
|
42
|
+
readonly compiler: {
|
43
|
+
readonly version: "0.8.28+commit.7893614a";
|
44
|
+
};
|
45
|
+
readonly language: "Solidity";
|
46
|
+
readonly output: {
|
47
|
+
readonly abi: readonly [{
|
48
|
+
readonly inputs: readonly [{
|
49
|
+
readonly internalType: "bytes32[]";
|
50
|
+
readonly name: "imageIds";
|
51
|
+
readonly type: "bytes32[]";
|
52
|
+
}];
|
53
|
+
readonly stateMutability: "nonpayable";
|
54
|
+
readonly type: "constructor";
|
55
|
+
}, {
|
56
|
+
readonly inputs: readonly [];
|
57
|
+
readonly stateMutability: "view";
|
58
|
+
readonly type: "function";
|
59
|
+
readonly name: "VERIFIER_ROUTER";
|
60
|
+
readonly outputs: readonly [{
|
61
|
+
readonly internalType: "contract ProofVerifierRouter";
|
62
|
+
readonly name: "";
|
63
|
+
readonly type: "address";
|
64
|
+
}];
|
65
|
+
}];
|
66
|
+
readonly devdoc: {
|
67
|
+
readonly kind: "dev";
|
68
|
+
readonly methods: {};
|
69
|
+
readonly version: 1;
|
70
|
+
};
|
71
|
+
readonly userdoc: {
|
72
|
+
readonly kind: "user";
|
73
|
+
readonly methods: {};
|
74
|
+
readonly version: 1;
|
75
|
+
};
|
76
|
+
};
|
77
|
+
readonly settings: {
|
78
|
+
readonly remappings: readonly ["@openzeppelin-contracts-5.0.1/=dependencies/@openzeppelin-contracts-5.0.1/", "@openzeppelin-contracts-5.1.0/=dependencies/risc0-ethereum-1.2.0/dependencies/@openzeppelin-contracts-5.1.0/", "forge-std-1.9.4/=dependencies/forge-std-1.9.4/", "forge-std/=dependencies/risc0-ethereum-1.2.0/dependencies/forge-std-1.9.4/src/", "openzeppelin-contracts/=dependencies/@openzeppelin-contracts-5.0.1/", "risc0-ethereum-1.2.0/=dependencies/risc0-ethereum-1.2.0/"];
|
79
|
+
readonly optimizer: {
|
80
|
+
readonly enabled: true;
|
81
|
+
readonly runs: 200;
|
82
|
+
};
|
83
|
+
readonly metadata: {
|
84
|
+
readonly bytecodeHash: "ipfs";
|
85
|
+
};
|
86
|
+
readonly compilationTarget: {
|
87
|
+
readonly "src/testing/TestVerifierRouterDeployer.sol": "TestVerifierRouterDeployer";
|
88
|
+
};
|
89
|
+
readonly evmVersion: "cancun";
|
90
|
+
readonly libraries: {};
|
91
|
+
};
|
92
|
+
readonly sources: {
|
93
|
+
readonly "dependencies/@openzeppelin-contracts-5.0.1/access/AccessControl.sol": {
|
94
|
+
readonly keccak256: "0xa0e92d42942f4f57c5be50568dac11e9d00c93efcb458026e18d2d9b9b2e7308";
|
95
|
+
readonly urls: readonly ["bzz-raw://46326c0bb1e296b67185e81c918e0b40501b8b6386165855df0a3f3c634b6a80", "dweb:/ipfs/QmTwyrDYtsxsk6pymJTK94PnEpzsmkpUxFuzEiakDopy4Z"];
|
96
|
+
readonly license: "MIT";
|
97
|
+
};
|
98
|
+
readonly "dependencies/@openzeppelin-contracts-5.0.1/access/IAccessControl.sol": {
|
99
|
+
readonly keccak256: "0xb6b36edd6a2999fd243ff226d6cbf84bd71af2432bbd0dfe19392996a1d9cb41";
|
100
|
+
readonly urls: readonly ["bzz-raw://1fd2f35495652e57e3f99bc6c510bc5f7dd398a176ea2e72d8ed730aebc6ca26", "dweb:/ipfs/QmTQV6X4gkikTib49cho5iDX3JvSQbdsoEChoDwrk3CbbH"];
|
101
|
+
readonly license: "MIT";
|
102
|
+
};
|
103
|
+
readonly "dependencies/@openzeppelin-contracts-5.0.1/access/extensions/AccessControlEnumerable.sol": {
|
104
|
+
readonly keccak256: "0xb1c906fcd870fc8dfedb63bfb1bc58b4d2a7469bc13cc44d996fda430693850a";
|
105
|
+
readonly urls: readonly ["bzz-raw://bd98c7779af61b220166cf952a05f6aca82ec859744d407d29043f8100adfb9c", "dweb:/ipfs/Qmd6ftRk6cJgdooybM6F1X26R4SSUeNksv6Gni2NwEnKDw"];
|
106
|
+
readonly license: "MIT";
|
107
|
+
};
|
108
|
+
readonly "dependencies/@openzeppelin-contracts-5.0.1/access/extensions/IAccessControlEnumerable.sol": {
|
109
|
+
readonly keccak256: "0xc1435f102633849858e75d7bed14c636f25448ceb3406d82992b0f2df52f4306";
|
110
|
+
readonly urls: readonly ["bzz-raw://ce1815e3a1da24f91b8e2ec24cf09d0d46e0fbeddcbe2cb0d8b2e05b91ceb7b3", "dweb:/ipfs/QmYTy1AQB5EV5jwuGsB49yykng2oG3x5ss4bDjFNxk3He4"];
|
111
|
+
readonly license: "MIT";
|
112
|
+
};
|
113
|
+
readonly "dependencies/@openzeppelin-contracts-5.0.1/utils/Context.sol": {
|
114
|
+
readonly keccak256: "0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2";
|
115
|
+
readonly urls: readonly ["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12", "dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"];
|
116
|
+
readonly license: "MIT";
|
117
|
+
};
|
118
|
+
readonly "dependencies/@openzeppelin-contracts-5.0.1/utils/introspection/ERC165.sol": {
|
119
|
+
readonly keccak256: "0x9e8778b14317ba9e256c30a76fd6c32b960af621987f56069e1e819c77c6a133";
|
120
|
+
readonly urls: readonly ["bzz-raw://1777404f1dcd0fac188e55a288724ec3c67b45288e49cc64723e95e702b49ab8", "dweb:/ipfs/QmZFdC626GButBApwDUvvTnUzdinevC3B24d7yyh57XkiA"];
|
121
|
+
readonly license: "MIT";
|
122
|
+
};
|
123
|
+
readonly "dependencies/@openzeppelin-contracts-5.0.1/utils/introspection/IERC165.sol": {
|
124
|
+
readonly keccak256: "0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b";
|
125
|
+
readonly urls: readonly ["bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df", "dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL"];
|
126
|
+
readonly license: "MIT";
|
127
|
+
};
|
128
|
+
readonly "dependencies/@openzeppelin-contracts-5.0.1/utils/math/SafeCast.sol": {
|
129
|
+
readonly keccak256: "0xe19a4d5f31d2861e7344e8e535e2feafb913d806d3e2b5fe7782741a2a7094fe";
|
130
|
+
readonly urls: readonly ["bzz-raw://4aed79c0fa6f0546ed02f2f683e8f77f0fd2ed7eb34d8bbf3d373c9a6d95b13c", "dweb:/ipfs/QmWqVz6UAVqmnWU5pqYPt1o6iDEZyPaBraAA3rKfTTSfYj"];
|
131
|
+
readonly license: "MIT";
|
132
|
+
};
|
133
|
+
readonly "dependencies/@openzeppelin-contracts-5.0.1/utils/structs/EnumerableSet.sol": {
|
134
|
+
readonly keccak256: "0x86c1470cbfd878491e5de030072b647352d36bd27122cffb928970b1945282aa";
|
135
|
+
readonly urls: readonly ["bzz-raw://ad85dd393ee0a1917c57046abc5155f51f77844b2c6a42c05c1b8dd26d6ff3c1", "dweb:/ipfs/QmNqYc8To2NdnpP6E1tGz7t6A7beuENde5yovwov5pW1fA"];
|
136
|
+
readonly license: "MIT";
|
137
|
+
};
|
138
|
+
readonly "dependencies/risc0-ethereum-1.2.0/src/IRiscZeroSelectable.sol": {
|
139
|
+
readonly keccak256: "0x39019bc9524b46ce9818d4d46a0fec57015ef0484858228bcb3b1c45efc7db19";
|
140
|
+
readonly urls: readonly ["bzz-raw://964ecb93cae8853bf4781bdc8cb2cf1049dff5c052da6b798759487093b1c4ab", "dweb:/ipfs/QmXfKLM74E3Y4m5y4JiVJdZjmkzCmHPTqS1aqSJ9vdSXyA"];
|
141
|
+
readonly license: "Apache-2.0";
|
142
|
+
};
|
143
|
+
readonly "dependencies/risc0-ethereum-1.2.0/src/IRiscZeroVerifier.sol": {
|
144
|
+
readonly keccak256: "0xae73e91e4d2829b0a88176584d876382b4b7540ff07c62cb947cdf9ea43d5cf3";
|
145
|
+
readonly urls: readonly ["bzz-raw://f2dd7da39a6f9b100fc1dcde565d799462cdc7d27722d2265317c3a01619c818", "dweb:/ipfs/Qmd3k3kcvrtfkLqVza4jHodbFH8wvq5vmfPtwekBKtPjmz"];
|
146
|
+
readonly license: "Apache-2.0";
|
147
|
+
};
|
148
|
+
readonly "dependencies/risc0-ethereum-1.2.0/src/StructHash.sol": {
|
149
|
+
readonly keccak256: "0xce612be2064752d2df89cfa2e9f73bba1ad891438d11d6fa7fc1285350b12fdd";
|
150
|
+
readonly urls: readonly ["bzz-raw://5915dac04779e37024e87f723f9ee2eecc87e9e1162f37d73d5502aced9fb484", "dweb:/ipfs/QmRLFdpKoUZeNTNditFTrE72g7sryCVnERE14duRgXHSJs"];
|
151
|
+
readonly license: "Apache-2.0";
|
152
|
+
};
|
153
|
+
readonly "dependencies/risc0-ethereum-1.2.0/src/Util.sol": {
|
154
|
+
readonly keccak256: "0x230a9a58bb2b0c68d4921ecc3672783f941890a2fa3a238dbe5188cfb7658b82";
|
155
|
+
readonly urls: readonly ["bzz-raw://586cb5296c564761609ca8aaae5b1fbbdb19ab1e174f7197f602572d9e82b70c", "dweb:/ipfs/QmWxDmucSfg3Wgdk1rVcheDHwkziTsXWvKpKSCnxtpQBqg"];
|
156
|
+
readonly license: "Apache-2.0";
|
157
|
+
};
|
158
|
+
readonly "dependencies/risc0-ethereum-1.2.0/src/groth16/ControlID.sol": {
|
159
|
+
readonly keccak256: "0xf54137d0a508d47c0ecb9d4f1ab478726d79b97943e48ca3abcb47d3fdfd8f95";
|
160
|
+
readonly urls: readonly ["bzz-raw://9563419ad6cd8ddadd12c2714ff06395d0cae6b330dec77fc943b7097494bea7", "dweb:/ipfs/QmRCPFrtzu8RZJe3YnwKK6YwhJLih23T4gag1smnzHT5W8"];
|
161
|
+
readonly license: "Apache-2.0";
|
162
|
+
};
|
163
|
+
readonly "dependencies/risc0-ethereum-1.2.0/src/groth16/Groth16Verifier.sol": {
|
164
|
+
readonly keccak256: "0xaadc5747c8c88bba828e692020e880ef31d38964d3e419099e3d3a194312ea62";
|
165
|
+
readonly urls: readonly ["bzz-raw://a0ad76c8785d08afaf315d027f6e3031c3200760c872de66f5a02d8a4364b228", "dweb:/ipfs/QmW2kF7ukKqstmCT5M33U8bvw3AXqP8yaCbWycb7v4Nsef"];
|
166
|
+
readonly license: "GPL-3.0";
|
167
|
+
};
|
168
|
+
readonly "dependencies/risc0-ethereum-1.2.0/src/groth16/RiscZeroGroth16Verifier.sol": {
|
169
|
+
readonly keccak256: "0x2eaa58d71a6f53446dc2889279cfec755541970ae8b07f1adced29481b75d5ac";
|
170
|
+
readonly urls: readonly ["bzz-raw://ede637fde23140c135ae3bf7545a29071f80ae4d143491da4b8797b99dffcd78", "dweb:/ipfs/QmX4P3R6ktbdy4bfcJ92GfzUfLw8PC8RAH65Yhpa7dnqS4"];
|
171
|
+
readonly license: "GPL-3.0";
|
172
|
+
};
|
173
|
+
readonly "dependencies/risc0-ethereum-1.2.0/src/test/RiscZeroMockVerifier.sol": {
|
174
|
+
readonly keccak256: "0x78d0c64eed6d901237c1e9f3a6cffe0a7632ff68b3f571b72e00f43322621453";
|
175
|
+
readonly urls: readonly ["bzz-raw://290d76f572ffc0537155f26b1447ac4a1e690409a6d1d92d84b8ecb6a4ac60ac", "dweb:/ipfs/QmQ7rgKtTRaKjzYGZLfgJUFCDCWGMNPr6rWNc5AdDrX4JA"];
|
176
|
+
readonly license: "Apache-2.0";
|
177
|
+
};
|
178
|
+
readonly "src/CallAssumptions.sol": {
|
179
|
+
readonly keccak256: "0xc3d0b9470794038f8018094138ab2d6fae7d639b8e213889a1a591f92f855025";
|
180
|
+
readonly urls: readonly ["bzz-raw://a14b286d81c22817c91a87bece4e6a038fcfb798179fcbc782f7dd8fc9e174b7", "dweb:/ipfs/QmPZTBbCHZfscMYaqfuQ3WiVdKbBemj5wpgb8bFhygGj8K"];
|
181
|
+
readonly license: "Apache-2.0";
|
182
|
+
};
|
183
|
+
readonly "src/Proof.sol": {
|
184
|
+
readonly keccak256: "0x32db566314f73f696e2ff0839ca7a41c9f04d74c96f2d8604c53f92dccfa3a43";
|
185
|
+
readonly urls: readonly ["bzz-raw://2ea032ed2a364dd97eeebe7df93cf252913284ea76a1fa1478d9436a916a83f3", "dweb:/ipfs/QmW873QftHexSzpEqmAVJ9vUd1cJD584qTa7mzqkhhipMZ"];
|
186
|
+
readonly license: "UNLICENSED";
|
187
|
+
};
|
188
|
+
readonly "src/Repository.sol": {
|
189
|
+
readonly keccak256: "0xd346825794a205b260f3e58e83ced657fffd0819fe78e24e96310f34fc9f5a0d";
|
190
|
+
readonly urls: readonly ["bzz-raw://8185cb6e16f51ff98aa9bb2e0cc003bc1bea796ebc6425a114bb1b767123a928", "dweb:/ipfs/Qmb5UppxkVtDePuMs8Kj3SDgw2oPYcDEtZH81CKrXLhZku"];
|
191
|
+
readonly license: "UNLICENSED";
|
192
|
+
};
|
193
|
+
readonly "src/Seal.sol": {
|
194
|
+
readonly keccak256: "0xa61c6146260bd3006392ec7b91bfb46c1d73493ff5a01c9ce702b8c90f1a392c";
|
195
|
+
readonly urls: readonly ["bzz-raw://ebf725dc623c0b6d3f8e74c2eb625d662303c22ba646fab710a4fbdf20d5e3c3", "dweb:/ipfs/Qmat3kzvD19kLMHRmomknHzJnDdQfyU5pQDbhP5BsZTSvg"];
|
196
|
+
readonly license: "UNLICENSED";
|
197
|
+
};
|
198
|
+
readonly "src/proof_verifier/ChainId.sol": {
|
199
|
+
readonly keccak256: "0x755479916bf59498ad41df7f120f3a0b8da0ec1d00a3ea96024d8647011a73e2";
|
200
|
+
readonly urls: readonly ["bzz-raw://3fca7683409d8ab96c18c0616c7a1de692282e9d1b5d7006649960c3dffe964e", "dweb:/ipfs/QmNo77eW4FTV7knkxgMf8z9pvb9A7xQf5eoARtcPPffjn6"];
|
201
|
+
readonly license: "UNLICENSED";
|
202
|
+
};
|
203
|
+
readonly "src/proof_verifier/FakeProofVerifier.sol": {
|
204
|
+
readonly keccak256: "0x12727eeb39e9fb2f95a80cd79865701a86bb11f5220a1b30ad94f5f8f04e658f";
|
205
|
+
readonly urls: readonly ["bzz-raw://af702f85ff6101562fd768c604480981377b94c66657efa5f2cfc59716f25df1", "dweb:/ipfs/QmUrZz1CzgGQQH8LaWg3cKVqH9BuDuBfhX38mq66YFQZKo"];
|
206
|
+
readonly license: "UNLICENSED";
|
207
|
+
};
|
208
|
+
readonly "src/proof_verifier/Groth16ProofVerifier.sol": {
|
209
|
+
readonly keccak256: "0x9d20d28f7281d6d7cae608e3e07f485a1ebab01385ea6f6c9f14732388ca19e5";
|
210
|
+
readonly urls: readonly ["bzz-raw://0222b49b98a410ceaaf3780e57527b85f529977dd0ff3e978fda1963d1b61e02", "dweb:/ipfs/QmbWuATM3kezBjPaYws1Czbqd5NPDnRkAKPvwHSBXANsQw"];
|
211
|
+
readonly license: "UNLICENSED";
|
212
|
+
};
|
213
|
+
readonly "src/proof_verifier/IProofVerifier.sol": {
|
214
|
+
readonly keccak256: "0xf48514ae0258f907c64cafb92d583cdbe704b4c0269da56f7336c3ec5bab0e82";
|
215
|
+
readonly urls: readonly ["bzz-raw://a79c7bd455e908906b557c6cc7db2b6ec77d9f650a1ac0f4295c68e95894e193", "dweb:/ipfs/QmdLufVnM7uAVWLtVwdVKsLMVg2b1iKWKLN9AdJYAy4JHP"];
|
216
|
+
readonly license: "UNLICENSED";
|
217
|
+
};
|
218
|
+
readonly "src/proof_verifier/ProofVerifierBase.sol": {
|
219
|
+
readonly keccak256: "0x66f28abed63945dc6055e605176bc38da3f7fe040f7f42b1ef79c9030f2d4e75";
|
220
|
+
readonly urls: readonly ["bzz-raw://76fa3565277af4edd785cb55778cd71959288ecd1c87634b16ae3a053e1a006d", "dweb:/ipfs/QmVarQXiK5KtLmzNo7ben9gPCHqXspfe29LApcEumgv7cD"];
|
221
|
+
readonly license: "UNLICENSED";
|
222
|
+
};
|
223
|
+
readonly "src/proof_verifier/ProofVerifierRouter.sol": {
|
224
|
+
readonly keccak256: "0x57847e7cfea1dea540f57906316f8dcfc5116ed9d3e7f8eb44c6ffaf7345f446";
|
225
|
+
readonly urls: readonly ["bzz-raw://ec1dafe1aec7724dbcf1b7fd1a9996e32a6366da759c07acfda408c29e63bd81", "dweb:/ipfs/QmcvqbizyceFHECiBCesJY3TbbZdGx4PiDm5zFzwtaMZA1"];
|
226
|
+
readonly license: "UNLICENSED";
|
227
|
+
};
|
228
|
+
readonly "src/testing/TestVerifierRouterDeployer.sol": {
|
229
|
+
readonly keccak256: "0xc10d1a4317ac83f9424809947b86f2d6d033df596ae0fea49c4f8a2b8ec57618";
|
230
|
+
readonly urls: readonly ["bzz-raw://c8a5b61760d8dd9e3314a816bb5f06e68ae3b897afa7bef3886038db130d66a6", "dweb:/ipfs/QmccPnr5FodeXkDhHis4LMJ8Ai71HNEMVqiWKvBzuiPiAA"];
|
231
|
+
readonly license: "UNLICENSED";
|
232
|
+
};
|
233
|
+
};
|
234
|
+
readonly version: 1;
|
235
|
+
};
|
236
|
+
readonly id: 27;
|
237
|
+
};
|
238
|
+
export default _default;
|
239
|
+
//# sourceMappingURL=TestVerifierRouterDeployer.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"TestVerifierRouterDeployer.d.ts","sourceRoot":"","sources":["../../src/abi/TestVerifierRouterDeployer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wBA+XE"}
|
@@ -0,0 +1,345 @@
|
|
1
|
+
export default {
|
2
|
+
abi: [
|
3
|
+
{
|
4
|
+
type: "constructor",
|
5
|
+
inputs: [
|
6
|
+
{
|
7
|
+
name: "imageIds",
|
8
|
+
type: "bytes32[]",
|
9
|
+
internalType: "bytes32[]",
|
10
|
+
},
|
11
|
+
],
|
12
|
+
stateMutability: "nonpayable",
|
13
|
+
},
|
14
|
+
{
|
15
|
+
type: "function",
|
16
|
+
name: "VERIFIER_ROUTER",
|
17
|
+
inputs: [],
|
18
|
+
outputs: [
|
19
|
+
{
|
20
|
+
name: "",
|
21
|
+
type: "address",
|
22
|
+
internalType: "contract ProofVerifierRouter",
|
23
|
+
},
|
24
|
+
],
|
25
|
+
stateMutability: "view",
|
26
|
+
},
|
27
|
+
],
|
28
|
+
bytecode: {
|
29
|
+
object: "0x60a060405234801561000f575f5ffd5b50604051615fd5380380615fd583398101604081905261002e916102ab565b5f303060405161003d90610263565b6001600160a01b03928316815291166020820152604001604051809103905ff08015801561006d573d5f5f3e3d5ffd5b5090505f5b82518110156100fb57816001600160a01b03166384cf84e184838151811061009c5761009c610372565b60200260200101516040518263ffffffff1660e01b81526004016100c291815260200190565b5f604051808303815f87803b1580156100d9575f5ffd5b505af11580156100eb573d5f5f3e3d5ffd5b5050600190920191506100729050565b5060405163f2fde38b60e01b81523360048201526001600160a01b0382169063f2fde38b906024015f604051808303815f87803b15801561013a575f5ffd5b505af115801561014c573d5f5f3e3d5ffd5b505060405163ada8f91960e01b81523360048201526001600160a01b038416925063ada8f91991506024015f604051808303815f87803b15801561018e575f5ffd5b505af11580156101a0573d5f5f3e3d5ffd5b50505050806040516101b190610270565b6001600160a01b039091168152602001604051809103905ff0801580156101da573d5f5f3e3d5ffd5b50816040516101e89061027d565b6001600160a01b039091168152602001604051809103905ff080158015610211573d5f5f3e3d5ffd5b5060405161021e9061028a565b6001600160a01b03928316815291166020820152604001604051809103905ff08015801561024e573d5f5f3e3d5ffd5b506001600160a01b0316608052506103869050565b61111b8061043d83390190565b6113ad8061155883390190565b612f1c8061290583390190565b6107b48061582183390190565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156102bb575f5ffd5b81516001600160401b038111156102d0575f5ffd5b8201601f810184136102e0575f5ffd5b80516001600160401b038111156102f9576102f9610297565b604051600582901b90603f8201601f191681016001600160401b038111828210171561032757610327610297565b604052918252602081840181019290810187841115610344575f5ffd5b6020850194505b838510156103675784518082526020958601959093500161034b565b509695505050505050565b634e487b7160e01b5f52603260045260245ffd5b60805160a261039b5f395f602e015260a25ff3fe6080604052348015600e575f5ffd5b50600436106026575f3560e01c806304e278ea14602a575b5f5ffd5b60507f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f3fea26469706673582212202a3be3e56b48ba34d410a6389f3227aee336b15d67f1c52e166ad0ed790f3e5b64736f6c634300081c0033608060405234801561000f575f5ffd5b5060405161111b38038061111b83398101604081905261002e916101b7565b6100385f8361006b565b506100637fb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214e8261006b565b5050506101e8565b5f8061007784846100a1565b90508015610098575f8481526001602052604090206100969084610148565b505b90505b92915050565b5f828152602081815260408083206001600160a01b038516845290915281205460ff16610141575f838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556100f93390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a450600161009b565b505f61009b565b5f610098836001600160a01b0384165f81815260018301602052604081205461014157508154600181810184555f84815260208082209093018490558454848252828601909352604090209190915561009b565b80516001600160a01b03811681146101b2575f5ffd5b919050565b5f5f604083850312156101c8575f5ffd5b6101d18361019c565b91506101df6020840161019c565b90509250929050565b610f26806101f55f395ff3fe608060405234801561000f575f5ffd5b5060043610610132575f3560e01c8063853b5d19116100b4578063c5df91b511610079578063c5df91b5146102d0578063ca0d5358146102e3578063ca15c873146102f6578063d547741f14610309578063e58378bb1461031c578063f2fde38b14610330575f5ffd5b8063853b5d19146102655780639010d07c1461027857806391d14854146102a3578063a217fddf146102b6578063ada8f919146102bd575f5ffd5b80632f2ff15d116100fa5780632f2ff15d146101ef57806336568abe14610202578063755e936f1461021557806381e4c9a31461022857806384cf84e114610252575f5ffd5b806301ffc9a7146101365780631af6c4311461015e578063248a9ca3146101805780632505a3bd146101b05780632ad82eea146101da575b5f5ffd5b610149610144366004610cb5565b610343565b60405190151581526020015b60405180910390f35b61014961016c366004610cdc565b5f9081526003602052604090205460ff1690565b6101a261018e366004610cdc565b5f9081526020819052604090206001015490565b604051908152602001610155565b6101496101be366004610d7e565b80516020918201205f9081526004909152604090205460ff1690565b6101ed6101e8366004610d7e565b61036d565b005b6101ed6101fd366004610de6565b610441565b6101ed610210366004610de6565b61046b565b6101ed610223366004610d7e565b6104a3565b610149610236366004610d7e565b80516020918201205f9081526002909152604090205460ff1690565b6101ed610260366004610cdc565b610566565b6101ed610273366004610d7e565b610631565b61028b610286366004610e10565b6106f3565b6040516001600160a01b039091168152602001610155565b6101496102b1366004610de6565b610711565b6101a25f81565b6101ed6102cb366004610e30565b610739565b6101ed6102de366004610cdc565b610750565b6101ed6102f1366004610d7e565b610815565b6101a2610304366004610cdc565b6108d8565b6101ed610317366004610de6565b6108ee565b6101a25f516020610ed15f395f51905f5281565b6101ed61033e366004610e30565b610912565b5f6001600160e01b03198216635a05180f60e01b148061036757506103678261095e565b92915050565b5f516020610ed15f395f51905f5261038481610992565b81516020808401919091205f818152600490925260409091205460ff16156103ea5760405162461bcd60e51b815260206004820152601460248201527312d95e481a5cc8185b1c9958591e481d985b1a5960621b60448201526064015b60405180910390fd5b5f8181526004602052604090819020805460ff191660011790555133907fcbfa55581c230aeb174d969838d927cdd297755dfb967a33134312f1377ee71d90610434908690610e77565b60405180910390a2505050565b5f8281526020819052604090206001015461045b81610992565b610465838361099c565b50505050565b6001600160a01b03811633146104945760405163334bd91960e11b815260040160405180910390fd5b61049e82826109cf565b505050565b5f516020610ed15f395f51905f526104ba81610992565b81516020808401919091205f818152600290925260409091205460ff1661051f5760405162461bcd60e51b815260206004820152601960248201527843616e6e6f74207265766f6b6520696e76616c6964206b657960381b60448201526064016103e1565b5f8181526002602052604090819020805460ff191690555133907f66e43f8252a3257fe010a4fd6ae50f57624762cc64a6eceadb04b18cfdefac7d90610434908690610e77565b5f516020610ed15f395f51905f5261057d81610992565b5f8281526003602052604090205460ff16156105db5760405162461bcd60e51b815260206004820152601c60248201527f496d616765494420697320616c726561647920737570706f727465640000000060448201526064016103e1565b5f8281526003602052604090819020805460ff19166001179055517f010120d82c0c66b257c0ea628d405b1d3c2d37bb8dd9141f6c5c12cb0375c572906106259084815260200190565b60405180910390a15050565b5f516020610ed15f395f51905f5261064881610992565b81516020808401919091205f818152600290925260409091205460ff16156106a95760405162461bcd60e51b815260206004820152601460248201527312d95e481a5cc8185b1c9958591e481d985b1a5960621b60448201526064016103e1565b5f8181526002602052604090819020805460ff191660011790555133907f0a249d4766726d36cb6d6ac22cf998dc9fc02bb4ff9fda73ec1e3061c8a1db0990610434908690610e77565b5f82815260016020526040812061070a90836109fa565b9392505050565b5f918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b6107435f82610441565b61074d5f3361046b565b50565b5f516020610ed15f395f51905f5261076781610992565b5f8281526003602052604090205460ff166107ce5760405162461bcd60e51b815260206004820152602160248201527f43616e6e6f74207265766f6b6520756e737570706f7274656420496d616765496044820152601160fa1b60648201526084016103e1565b5f8281526003602052604090819020805460ff19169055517f4072861add20da436ef0a8274b90d102aea17b603f972cc8196d51f1a5d56179906106259084815260200190565b5f516020610ed15f395f51905f5261082c81610992565b81516020808401919091205f818152600490925260409091205460ff166108915760405162461bcd60e51b815260206004820152601960248201527843616e6e6f74207265766f6b6520696e76616c6964206b657960381b60448201526064016103e1565b5f8181526004602052604090819020805460ff191690555133907f69c40cdda8ad6e074bf320a4a76804a6652eb5231bda91b690dcb98010b2707990610434908690610e77565b5f81815260016020526040812061036790610a05565b5f8281526020819052604090206001015461090881610992565b61046583836109cf565b5f61092a5f516020610ed15f395f51905f525f6106f3565b90506109435f516020610ed15f395f51905f52826108ee565b61095a5f516020610ed15f395f51905f5283610441565b5050565b5f6001600160e01b03198216637965db0b60e01b148061036757506301ffc9a760e01b6001600160e01b0319831614610367565b61074d8133610a0e565b5f5f6109a88484610a47565b9050801561070a575f8481526001602052604090206109c79084610ad6565b509392505050565b5f5f6109db8484610aea565b9050801561070a575f8481526001602052604090206109c79084610b53565b5f61070a8383610b67565b5f610367825490565b610a188282610711565b61095a5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016103e1565b5f610a528383610711565b610acf575f838152602081815260408083206001600160a01b03861684529091529020805460ff19166001179055610a873390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610367565b505f610367565b5f61070a836001600160a01b038416610b8d565b5f610af58383610711565b15610acf575f838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610367565b5f61070a836001600160a01b038416610bd2565b5f825f018281548110610b7c57610b7c610e89565b905f5260205f200154905092915050565b5f818152600183016020526040812054610acf57508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610367565b5f8181526001830160205260408120548015610cac575f610bf4600183610e9d565b85549091505f90610c0790600190610e9d565b9050808214610c66575f865f018281548110610c2557610c25610e89565b905f5260205f200154905080875f018481548110610c4557610c45610e89565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080610c7757610c77610ebc565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610367565b5f915050610367565b5f60208284031215610cc5575f5ffd5b81356001600160e01b03198116811461070a575f5ffd5b5f60208284031215610cec575f5ffd5b5035919050565b634e487b7160e01b5f52604160045260245ffd5b5f5f67ffffffffffffffff841115610d2157610d21610cf3565b50604051601f19601f85018116603f0116810181811067ffffffffffffffff82111715610d5057610d50610cf3565b604052838152905080828401851015610d67575f5ffd5b838360208301375f60208583010152509392505050565b5f60208284031215610d8e575f5ffd5b813567ffffffffffffffff811115610da4575f5ffd5b8201601f81018413610db4575f5ffd5b610dc384823560208401610d07565b949350505050565b80356001600160a01b0381168114610de1575f5ffd5b919050565b5f5f60408385031215610df7575f5ffd5b82359150610e0760208401610dcb565b90509250929050565b5f5f60408385031215610e21575f5ffd5b50508035926020909101359150565b5f60208284031215610e40575f5ffd5b61070a82610dcb565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f61070a6020830184610e49565b634e487b7160e01b5f52603260045260245ffd5b8181038181111561036757634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603160045260245ffdfeb19546dff01e856fb3f010c267a7b1c60363cf8a4664e21cc89c26224620214ea26469706673582212208144a6467d99aa78f3e478b2842d9c407aded885a7f330f329eb85d95f974d3964736f6c634300081c003360e060405234801561000f575f5ffd5b506040516113ad3803806113ad83398101604081905261002e91610115565b6001600160a01b03811660c0526100436100b8565b1561006157604051633d23e4d160e11b815260040160405180910390fd5b60405163deafbeef60e01b9061007690610108565b6001600160e01b03199091168152602001604051809103905ff0801580156100a0573d5f5f3e3d5ffd5b506001600160a01b031660a052506001608052610142565b5f46600114806100c8575046600a145b806100d4575046612105145b806100e057504661a4b1145b806100ec57504661a4ba145b806100f75750466089145b80610103575046610144145b905090565b6108af80610afe83390190565b5f60208284031215610125575f5ffd5b81516001600160a01b038116811461013b575f5ffd5b9392505050565b60805160a05160c0516109796101855f395f8181609f01528181610111015261049001525f8181605e015261016d01525f818160dd015261020201526109795ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c806308c84e70146100595780633fd66f221461009d5780634bc8e31c146100c35780639a44ea84146100d8578063f4cbae941461010c575b5f5ffd5b6100807f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b7f0000000000000000000000000000000000000000000000000000000000000000610080565b6100d66100d136600461060b565b610133565b005b6100ff7f000000000000000000000000000000000000000000000000000000000000000081565b6040516100949190610675565b6100807f000000000000000000000000000000000000000000000000000000000000000081565b61014a610145368690038601866107b6565b610200565b61016361015c368690038601866107b6565b8383610293565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663ab750e756101a96101a436889003880188610855565b610552565b866101400135866040518463ffffffff1660e01b81526004016101ce93929190610877565b5f6040518083038186803b1580156101e4575f5ffd5b505afa1580156101f6573d5f5f3e3d5ffd5b5050505050505050565b7f0000000000000000000000000000000000000000000000000000000000000000600181111561023257610232610661565b815160400151600181111561024957610249610661565b146102905760405162461bcd60e51b8152602060048201526012602482015271496e76616c69642070726f6f66206d6f646560701b60448201526064015b60405180910390fd5b50565b816001600160a01b031683606001515f01516001600160a01b0316146102ec5760405162461bcd60e51b815260206004820152600e60248201526d24b73b30b634b210383937bb32b960911b6044820152606401610287565b806001600160e01b0319168360600151602001516001600160e01b0319161461034a5760405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b21039b2b632b1ba37b960811b6044820152606401610287565b43836060015160400151106103b15760405162461bcd60e51b815260206004820152602760248201527f496e76616c696420626c6f636b206e756d6265723a20626c6f636b2066726f6d6044820152662066757475726560c81b6064820152608401610287565b436101008460600151604001516103c891906108ba565b10156104225760405162461bcd60e51b815260206004820152602360248201527f496e76616c696420626c6f636b206e756d6265723a20626c6f636b20746f6f206044820152621bdb1960ea1b6064820152608401610287565b60608084015160408101519101519040146104745760405162461bcd60e51b8152602060048201526012602482015271092dcecc2d8d2c840c4d8dec6d640d0c2e6d60731b6044820152606401610287565b6020830151604051631af6c43160e01b815260048101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631af6c43190602401602060405180830381865afa1580156104dd573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061050191906108df565b61054d5760405162461bcd60e51b815260206004820152601760248201527f556e737570706f727465642043616c6c477565737449640000000000000000006044820152606401610287565b505050565b606060018260400151600181111561056c5761056c610661565b036105ad5750602081810151519151604080516001600160e01b03199092169282019290925260248082019390935281518082039093018352604401905290565b81516020808401516040516105c39392016108fe565b6040516020818303038152906040529050919050565b919050565b80356001600160a01b03811681146105d9575f5ffd5b80356001600160e01b0319811681146105d9575f5ffd5b5f5f5f5f848603610260811215610620575f5ffd5b61020081121561062e575f5ffd5b50849350610200840135925061064761022085016105de565b915061065661024086016105f4565b905092959194509250565b634e487b7160e01b5f52602160045260245ffd5b602081016002831061069557634e487b7160e01b5f52602160045260245ffd5b91905290565b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff811182821017156106d2576106d261069b565b60405290565b604051610100810167ffffffffffffffff811182821017156106d2576106d261069b565b6040516080810167ffffffffffffffff811182821017156106d2576106d261069b565b8035600281106105d9575f5ffd5b5f610140828403121561073e575f5ffd5b6107466106af565b9050610751826105f4565b815282603f830112610761575f5ffd5b6107696106d8565b8061012084018581111561077b575f5ffd5b602085015b81811015610798578035845260209384019301610780565b508160208501526107a88161071f565b604085015250505092915050565b5f818303610200811280156107c9575f5ffd5b506107d26106fc565b6107dc858561072d565b815261014084013560208201526101608401356040820152608061017f1983011215610806575f5ffd5b61080e6106fc565b915061081d61018085016105de565b825261082c6101a085016105f4565b60208301526101c084013560408301526101e09093013560608083019190915283015250919050565b5f6101408284031215610866575f5ffd5b610870838361072d565b9392505050565b606081525f84518060608401528060208701608085015e5f608082850101526080601f19601f830116840101915050836020830152826040830152949350505050565b808201808211156108d957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f602082840312156108ef575f5ffd5b81518015158114610870575f5ffd5b6001600160e01b0319831681525f6004820183825b6008811015610932578151835260209283019290910190600101610913565b50505061010482019050939250505056fea264697066735822122054c192be77332b47bb8956220352d1dd1dd666eea70bf7f7563c1e39af378abf64736f6c634300081c003360a060405234801561000f575f5ffd5b506040516108af3803806108af83398101604081905261002e91610040565b6001600160e01b03191660805261006e565b5f60208284031215610050575f5ffd5b81516001600160e01b031981168114610067575f5ffd5b9392505050565b6080516108166100995f395f8181605e0152818160ea015281816101f4015261025801526108165ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c8063053c238d146100595780631599ead51461009e5780633a115bb1146100b357806366cf0e4b14610145578063ab750e7514610158575b5f5ffd5b6100807f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160e01b031990911681526020015b60405180910390f35b6100b16100ac3660046105b6565b61016b565b005b6101386100c13660046105ed565b60408051808201909152606081525f6020820152604080518082019091526001600160e01b03197f000000000000000000000000000000000000000000000000000000000000000016606082015260648101839052806084810160408051601f198184030181529190528152602001929092525090565b6040516100959190610604565b61013861015336600461064d565b610185565b6100b161016636600461066d565b6101b5565b61018261017882806106e7565b83602001356101d2565b50565b60408051808201909152606081525f60208201526101ae6100c16101a985856102f5565b61037f565b9392505050565b6101cc84846101c76101a986866102f5565b6101d2565b50505050565b6101df60045f8486610731565b6101e891610758565b6001600160e01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160e01b0319161461028b5761022f60045f8486610731565b61023891610758565b604051632e2ce35360e21b81526001600160e01b031991821660048201527f0000000000000000000000000000000000000000000000000000000000000000909116602482015260440160405180910390fd5b60408051602081018390520160408051601f1981840301815291905280516020909101206102bc8360048187610731565b6040516102ca929190610790565b6040518091039020146102f05760405163439cc0cd60e01b815260040160405180910390fd5b505050565b6102fd610574565b6040805160a0810182528481527fa3acc27117418996340b84e5a90f3ef4c49d22c79e44aad822ec9c313e1eb8e26020820152815180830183529091820190805f81526020015f60ff1681525081526020015f5f1b815260200161037660405180604001604052808681526020015f5f1b8152506104df565b90529392505050565b5f6002806040516103a8907172697363302e52656365697074436c61696d60701b815260120190565b602060405180830381855afa1580156103c3573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906103e691906107b3565b606084015184516020860151608087015160408801515160189060028111156104115761041161079f565b60408a810151602090810151825191820199909952908101969096526060860194909452608085019290925260a084015263ffffffff909116901b60e01b6001600160e01b03191660c082015260f89190911b6001600160f81b03191660c4820152600160fa1b60c882015260ca015b60408051601f198184030181529082905261049b916107ca565b602060405180830381855afa1580156104b6573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906104d991906107b3565b92915050565b5f600280604051610502906b1c9a5cd8cc0b93dd5d1c1d5d60a21b8152600c0190565b602060405180830381855afa15801561051d573d5f5f3e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061054091906107b3565b83516020808601516040805192830194909452928101919091526060810191909152600160f91b6080820152608201610481565b6040518060a001604052805f81526020015f81526020016105a4604080518082019091525f808252602082015290565b81526020015f81526020015f81525090565b5f602082840312156105c6575f5ffd5b813567ffffffffffffffff8111156105dc575f5ffd5b8201604081850312156101ae575f5ffd5b5f602082840312156105fd575f5ffd5b5035919050565b602081525f82516040602084015280518060608501528060208301608086015e5f60808286010152602085015160408501526080601f19601f8301168501019250505092915050565b5f5f6040838503121561065e575f5ffd5b50508035926020909101359150565b5f5f5f5f60608587031215610680575f5ffd5b843567ffffffffffffffff811115610696575f5ffd5b8501601f810187136106a6575f5ffd5b803567ffffffffffffffff8111156106bc575f5ffd5b8760208284010111156106cd575f5ffd5b602091820198909750908601359560400135945092505050565b5f5f8335601e198436030181126106fc575f5ffd5b83018035915067ffffffffffffffff821115610716575f5ffd5b60200191503681900382131561072a575f5ffd5b9250929050565b5f5f8585111561073f575f5ffd5b8386111561074b575f5ffd5b5050820193919092039150565b80356001600160e01b03198116906004841015610789576001600160e01b0319600485900360031b81901b82161691505b5092915050565b818382375f9101908152919050565b634e487b7160e01b5f52602160045260245ffd5b5f602082840312156107c3575f5ffd5b5051919050565b5f82518060208501845e5f92019182525091905056fea2646970667358221220f60a9ae93de91b6b9140b6bf34d600015071e7e66bd3163c0cda0da6cc20f2b464736f6c634300081c003360e060405234801561000f575f5ffd5b50604051612f1c380380612f1c83398101604081905261002e916100d3565b6001600160a01b03811660c0525f6080526040517f8cdad9242664be3112aba377c5425a4df735eb1c6966472b561d2855932c0469907f04446e66d300eb7fb45c9726bb53c793dda407a62e9601618bb43c5c14657ac09061008f906100c6565b9182526020820152604001604051809103905ff0801580156100b3573d5f5f3e3d5ffd5b506001600160a01b031660a05250610100565b61246080610abc83390190565b5f602082840312156100e3575f5ffd5b81516001600160a01b03811681146100f9575f5ffd5b9392505050565b60805160a05160c0516109796101435f395f8181609f01528181610111015261049001525f8181605e015261016d01525f818160dd015261020201526109795ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c806308c84e70146100595780633fd66f221461009d5780634bc8e31c146100c35780639a44ea84146100d8578063f4cbae941461010c575b5f5ffd5b6100807f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b7f0000000000000000000000000000000000000000000000000000000000000000610080565b6100d66100d136600461060b565b610133565b005b6100ff7f000000000000000000000000000000000000000000000000000000000000000081565b6040516100949190610675565b6100807f000000000000000000000000000000000000000000000000000000000000000081565b61014a610145368690038601866107b6565b610200565b61016361015c368690038601866107b6565b8383610293565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663ab750e756101a96101a436889003880188610855565b610552565b866101400135866040518463ffffffff1660e01b81526004016101ce93929190610877565b5f6040518083038186803b1580156101e4575f5ffd5b505afa1580156101f6573d5f5f3e3d5ffd5b5050505050505050565b7f0000000000000000000000000000000000000000000000000000000000000000600181111561023257610232610661565b815160400151600181111561024957610249610661565b146102905760405162461bcd60e51b8152602060048201526012602482015271496e76616c69642070726f6f66206d6f646560701b60448201526064015b60405180910390fd5b50565b816001600160a01b031683606001515f01516001600160a01b0316146102ec5760405162461bcd60e51b815260206004820152600e60248201526d24b73b30b634b210383937bb32b960911b6044820152606401610287565b806001600160e01b0319168360600151602001516001600160e01b0319161461034a5760405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b21039b2b632b1ba37b960811b6044820152606401610287565b43836060015160400151106103b15760405162461bcd60e51b815260206004820152602760248201527f496e76616c696420626c6f636b206e756d6265723a20626c6f636b2066726f6d6044820152662066757475726560c81b6064820152608401610287565b436101008460600151604001516103c891906108ba565b10156104225760405162461bcd60e51b815260206004820152602360248201527f496e76616c696420626c6f636b206e756d6265723a20626c6f636b20746f6f206044820152621bdb1960ea1b6064820152608401610287565b60608084015160408101519101519040146104745760405162461bcd60e51b8152602060048201526012602482015271092dcecc2d8d2c840c4d8dec6d640d0c2e6d60731b6044820152606401610287565b6020830151604051631af6c43160e01b815260048101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631af6c43190602401602060405180830381865afa1580156104dd573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061050191906108df565b61054d5760405162461bcd60e51b815260206004820152601760248201527f556e737570706f727465642043616c6c477565737449640000000000000000006044820152606401610287565b505050565b606060018260400151600181111561056c5761056c610661565b036105ad5750602081810151519151604080516001600160e01b03199092169282019290925260248082019390935281518082039093018352604401905290565b81516020808401516040516105c39392016108fe565b6040516020818303038152906040529050919050565b919050565b80356001600160a01b03811681146105d9575f5ffd5b80356001600160e01b0319811681146105d9575f5ffd5b5f5f5f5f848603610260811215610620575f5ffd5b61020081121561062e575f5ffd5b50849350610200840135925061064761022085016105de565b915061065661024086016105f4565b905092959194509250565b634e487b7160e01b5f52602160045260245ffd5b602081016002831061069557634e487b7160e01b5f52602160045260245ffd5b91905290565b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff811182821017156106d2576106d261069b565b60405290565b604051610100810167ffffffffffffffff811182821017156106d2576106d261069b565b6040516080810167ffffffffffffffff811182821017156106d2576106d261069b565b8035600281106105d9575f5ffd5b5f610140828403121561073e575f5ffd5b6107466106af565b9050610751826105f4565b815282603f830112610761575f5ffd5b6107696106d8565b8061012084018581111561077b575f5ffd5b602085015b81811015610798578035845260209384019301610780565b508160208501526107a88161071f565b604085015250505092915050565b5f818303610200811280156107c9575f5ffd5b506107d26106fc565b6107dc858561072d565b815261014084013560208201526101608401356040820152608061017f1983011215610806575f5ffd5b61080e6106fc565b915061081d61018085016105de565b825261082c6101a085016105f4565b60208301526101c084013560408301526101e09093013560608083019190915283015250919050565b5f6101408284031215610866575f5ffd5b610870838361072d565b9392505050565b606081525f84518060608401528060208701608085015e5f608082850101526080601f19601f830116840101915050836020830152826040830152949350505050565b808201808211156108d957634e487b7160e01b5f52601160045260245ffd5b92915050565b5f602082840312156108ef575f5ffd5b81518015158114610870575f5ffd5b6001600160e01b0319831681525f6004820183825b6008811015610932578151835260209283019290910190600101610913565b50505061010482019050939250505056fea2646970667358221220872fbb54f457541ca9955a3cec7fbd47c888fe38acad5aebd93b4d0c52e3c0d464736f6c634300081c0033610100604052348015610010575f5ffd5b5060405161246038038061246083398101604081905261002f91611047565b610038826102b9565b6001600160801b031990811660a0521660805260c08190526040517f72697363302e47726f74683136526563656970745665726966696572506172618152656d657465727360d01b60208201526002908190602601602060405180830381855afa1580156100a8573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906100cb9190611069565b8361021b845f8190506008817eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff16901b6008827fff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff0016901c1790506010817dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff16901b6010827fffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff000016901c1790506020817bffffffff00000000ffffffff00000000ffffffff00000000ffffffff16901b6020827fffffffff00000000ffffffff00000000ffffffff00000000ffffffff0000000016901c17905060408177ffffffffffffffff0000000000000000ffffffffffffffff16901b6040827fffffffffffffffff0000000000000000ffffffffffffffff000000000000000016901c179050608081901b608082901c179050919050565b610223610425565b60408051602081019590955284019290925260608301526080820152600360f81b60a082015260a20160408051601f198184030181529082905261026691611097565b602060405180830381855afa158015610281573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906102a49190611069565b6001600160e01b03191660e052506111359050565b5f808061040b845f8190506008817eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff16901b6008827fff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff0016901c1790506010817dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff16901b6010827fffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff000016901c1790506020817bffffffff00000000ffffffff00000000ffffffff00000000ffffffff16901b6020827fffffffff00000000ffffffff00000000ffffffff00000000ffffffff0000000016901c17905060408177ffffffffffffffff0000000000000000ffffffffffffffff16901b6040827fffffffffffffffff0000000000000000ffffffffffffffff000000000000000016901c179050608081901b608082901c179050919050565b608081901b956001600160801b0319909116945092505050565b60408051600680825260e082019092525f918291906020820160c08036833701905050905060027f12ac9a25dcd5e1a832a9061a082c15dd1d61aa9c4d553505739d0f5d65dc3be47f025aa744581ebe7ad91731911c898569106ff5a2d30f3eee2b23c60ee980acd46040516020016104a8929190918252602082015260400190565b60408051601f19818403018152908290526104c291611097565b602060405180830381855afa1580156104dd573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105009190611069565b815f81518110610512576105126110a9565b60200260200101818152505060027f0707b920bc978c02f292fae2036e057be54294114ccc3c8769d883f688a1423f7f2e32a094b7589554f7bc357bf63481acd2d55555c203383782a4650787ff664260405160200161057c929190918252602082015260400190565b60408051601f198184030181529082905261059691611097565b602060405180830381855afa1580156105b1573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906105d49190611069565b816001815181106105e7576105e76110a9565b60200260200101818152505060027f0bca36e2cbe6394b3e249751853f961511011c7148e336f4fd974644850fc3477f2ede7c9acf48cf3a3729fa3d68714e2a8435d4fa6db8f7f409c153b1fcdf9b8b604051602001610651929190918252602082015260400190565b60408051601f198184030181529082905261066b91611097565b602060405180830381855afa158015610686573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906106a99190611069565b816002815181106106bc576106bc6110a9565b60200260200101818152505060027f1b8af999dbfbb3927c091cc2aaf201e488cbacc3e2c6b6fb5a25f9112e04f2a77f2b91a26aa92e1b6f5722949f192a81c850d586d81a60157f3e9cf04f679cccd6604051602001610726929190918252602082015260400190565b60408051601f198184030181529082905261074091611097565b602060405180830381855afa15801561075b573d5f5f3e3d5ffd5b5050506040513d601f19601f8201168201806040525081019061077e9190611069565b81600381518110610791576107916110a9565b60200260200101818152505060027f2b5f494ed674235b8ac1750bdfd5a7615f002d4a1dcefeddd06eda5a076ccd0d7f2fe520ad2020aab9cbba817fcbb9a863b8a76ff88f14f912c5e71665b2ad5e826040516020016107fb929190918252602082015260400190565b60408051601f198184030181529082905261081591611097565b602060405180830381855afa158015610830573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906108539190611069565b81600481518110610866576108666110a9565b60200260200101818152505060027f0f1c3c0d5d9da0fa03666843cde4e82e869ba5252fce3c25d5940320b1c4d4937f214bfcff74f425f6fe8c0d07b307482d8bc8bb2f3608f68287aa01bd0b69e8096040516020016108d0929190918252602082015260400190565b60408051601f19818403018152908290526108ea91611097565b602060405180830381855afa158015610905573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906109289190611069565b8160058151811061093b5761093b6110a9565b60200260200101818152505060028060405161097a907f72697363305f67726f746831362e566572696679696e674b65790000000000008152601a0190565b602060405180830381855afa158015610995573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906109b89190611069565b60027f2d4d9aa7e302d9df41749d5507949d05dbea33fbb16c643b22f599a2be6df2e27f14bedd503c37ceb061d8ec60209fe345ce89830a19230301f076caff004d1926604051602001610a16929190918252602082015260400190565b60408051601f1981840301815290829052610a3091611097565b602060405180830381855afa158015610a4b573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610a6e9190611069565b604080517f0967032fcbf776d1afc985f88877f182d38480a653f2decaa9794cbc3bf3060c60208201527f0e187847ad4c798374d0d6732bf501847dd68bc0e071241e0213bc7fc13db7ab918101919091527f304cfbd1e08a704a99f5e847d93f8c3caafddec46b7a0d379da69a4d112346a760608201527f1739c1b1a457a8c7313123d24d2f9192f896b7c63eea05a9d57f06547ad0cec8608082015260029060a00160408051601f1981840301815290829052610b2c91611097565b602060405180830381855afa158015610b47573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610b6a9190611069565b604080517f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c260208201527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed918101919091527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b60608201527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa608082015260029060a00160408051601f1981840301815290829052610c2891611097565b602060405180830381855afa158015610c43573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610c669190611069565b604080517f03b03cd5effa95ac9bee94f1f5ef907157bda4812ccf0b4c91f42bb629f83a1c60208201527f1aa085ff28179a12d922dba0547057ccaae94b9d69cfaa4e60401fea7f3e0333918101919091527f110c10134f200b19f6490846d518c9aea868366efb7228ca5c91d2940d03076260608201527f1e60f31fcbf757e837e867178318832d0b2d74d59e2fea1c7142df187d3fc6d3608082015260029060a00160408051601f1981840301815290829052610d2491611097565b602060405180830381855afa158015610d3f573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610d629190611069565b610ddb6002604051610d97907f72697363305f67726f746831362e566572696679696e674b65792e49430000008152601d0190565b602060405180830381855afa158015610db2573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610dd59190611069565b88610e6f565b6040805160208101979097528601949094526060850192909252608084015260a083015260c0820152600560f81b60e082015260e20160408051601f1981840301815290829052610e2b91611097565b602060405180830381855afa158015610e46573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610e699190611069565b91505090565b5f80805b8351811015610ec857610ebe85858360018851610e9091906110bd565b610e9a91906110bd565b81518110610eaa57610eaa6110a9565b602002602001015184610ed260201b60201c565b9150600101610e73565b5090505b92915050565b6040805160028082526060820183525f928392919060208301908036833701905050905083815f81518110610f0957610f096110a9565b6020026020010181815250508281600181518110610f2957610f296110a9565b6020908102919091010152610f3e8582610f47565b95945050505050565b604080515f80825260208201909252610f61848483610f69565b949350505050565b5f5f610f7b845161101160201b60201c565b90505f60088261ffff16901c60088361ffff16901b1760f01b9050600286868684604051602001610faf94939291906110dc565b60408051601f1981840301815290829052610fc991611097565b602060405180830381855afa158015610fe4573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906110079190611069565b9695505050505050565b5f61ffff821115611043576040516306dfcc6560e41b8152601060048201526024810183905260440160405180910390fd5b5090565b5f5f60408385031215611058575f5ffd5b505080516020909101519092909150565b5f60208284031215611079575f5ffd5b5051919050565b5f81518060208401855e5f93019283525090919050565b5f6110a28284611080565b9392505050565b634e487b7160e01b5f52603260045260245ffd5b81810381811115610ecc57634e487b7160e01b5f52601160045260245ffd5b8481525f602082018551602087015f5b8281101561110a5781518452602093840193909101906001016110ec565b5050506111178186611080565b6001600160f01b031994909416845250506002909101949350505050565b60805160a05160c05160e0516112d76111895f395f8181608e01528181610808015261086c01525f818160e8015261094301525f8181610140015261090a01525f818161018001526108e201526112d75ff3fe608060405234801561000f575f5ffd5b5060043610610085575f3560e01c80638989fa2e116100585780638989fa2e1461013b5780639181e4b11461017b578063ab750e75146101a2578063ffa1ad74146101b5575f5ffd5b8063053c238d146100895780631599ead5146100ce578063258038e2146100e357806334baeab914610118575b5f5ffd5b6100b07f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160e01b031990911681526020015b60405180910390f35b6100e16100dc366004610e1c565b6101e6565b005b61010a7f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016100c5565b61012b610126366004610e6a565b610200565b60405190151581526020016100c5565b6101627f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160801b031990911681526020016100c5565b6101627f000000000000000000000000000000000000000000000000000000000000000081565b6100e16101b0366004610ecc565b6107c4565b6101d9604051806040016040528060058152602001640312e322e360dc1b81525081565b6040516100c59190610f46565b6101fd6101f38280610f7b565b83602001356107e6565b50565b5f610755565b7f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f000000181106101fd575f5f5260205ff35b5f60405183815284602082015285604082015260408160608360076107d05a03fa915081610265575f5f5260205ff35b825160408201526020830151606082015260408360808360066107d05a03fa91505080610294575f5f5260205ff35b5050505050565b7f12ac9a25dcd5e1a832a9061a082c15dd1d61aa9c4d553505739d0f5d65dc3be485527f025aa744581ebe7ad91731911c898569106ff5a2d30f3eee2b23c60ee980acd460208601525f608086018661033787357f2e32a094b7589554f7bc357bf63481acd2d55555c203383782a4650787ff66427f0707b920bc978c02f292fae2036e057be54294114ccc3c8769d883f688a1423f84610235565b61038760208801357f2ede7c9acf48cf3a3729fa3d68714e2a8435d4fa6db8f7f409c153b1fcdf9b8b7f0bca36e2cbe6394b3e249751853f961511011c7148e336f4fd974644850fc34784610235565b6103d760408801357f2b91a26aa92e1b6f5722949f192a81c850d586d81a60157f3e9cf04f679cccd67f1b8af999dbfbb3927c091cc2aaf201e488cbacc3e2c6b6fb5a25f9112e04f2a784610235565b61042760608801357f2fe520ad2020aab9cbba817fcbb9a863b8a76ff88f14f912c5e71665b2ad5e827f2b5f494ed674235b8ac1750bdfd5a7615f002d4a1dcefeddd06eda5a076ccd0d84610235565b61047760808801357f214bfcff74f425f6fe8c0d07b307482d8bc8bb2f3608f68287aa01bd0b69e8097f0f1c3c0d5d9da0fa03666843cde4e82e869ba5252fce3c25d5940320b1c4d49384610235565b50823581527f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4760208401357f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4703066020820152833560408201526020840135606082015260408401356080820152606084013560a08201527f2d4d9aa7e302d9df41749d5507949d05dbea33fbb16c643b22f599a2be6df2e260c08201527f14bedd503c37ceb061d8ec60209fe345ce89830a19230301f076caff004d192660e08201527f0967032fcbf776d1afc985f88877f182d38480a653f2decaa9794cbc3bf3060c6101008201527f0e187847ad4c798374d0d6732bf501847dd68bc0e071241e0213bc7fc13db7ab6101208201527f304cfbd1e08a704a99f5e847d93f8c3caafddec46b7a0d379da69a4d112346a76101408201527f1739c1b1a457a8c7313123d24d2f9192f896b7c63eea05a9d57f06547ad0cec86101608201525f87015161018082015260205f018701516101a08201527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c26101c08201527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed6101e08201527f090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b6102008201527f12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa610220820152843561024082015260208501356102608201527f03b03cd5effa95ac9bee94f1f5ef907157bda4812ccf0b4c91f42bb629f83a1c6102808201527f1aa085ff28179a12d922dba0547057ccaae94b9d69cfaa4e60401fea7f3e03336102a08201527f110c10134f200b19f6490846d518c9aea868366efb7228ca5c91d2940d0307626102c08201527f1e60f31fcbf757e837e867178318832d0b2d74d59e2fea1c7142df187d3fc6d36102e08201526020816103008360086107d05a03fa9051169695505050505050565b604051610380810160405261076c5f840135610206565b6107796020840135610206565b6107866040840135610206565b6107936060840135610206565b6107a06080840135610206565b6107ad60a0840135610206565b6107ba818486888a61029b565b9050805f5260205ff35b6107e084846107db6107d686866109fa565b610a86565b6107e6565b50505050565b6107f360045f8486610fc5565b6107fc91610fec565b6001600160e01b0319167f00000000000000000000000000000000000000000000000000000000000000006001600160e01b0319161461089f5761084360045f8486610fc5565b61084c91610fec565b604051632e2ce35360e21b81526001600160e01b031991821660048201527f0000000000000000000000000000000000000000000000000000000000000000909116602482015260440160405180910390fd5b5f5f6108aa83610be0565b90925090505f6108bd8560048189610fc5565b8101906108ca91906110e1565b8051602080830151604080850151815160a0810183527f0000000000000000000000000000000000000000000000000000000000000000608090811c82527f0000000000000000000000000000000000000000000000000000000000000000811c9582019590955289851c8184015288851c60608201527f00000000000000000000000000000000000000000000000000000000000000009481019490945290516334baeab960e01b81529495505f9430946334baeab99461099294919391926004016111be565b602060405180830381865afa1580156109ad573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109d19190611241565b9050806109f15760405163439cc0cd60e01b815260040160405180910390fd5b50505050505050565b610a02610dda565b6040805160a0810182528481527fa3acc27117418996340b84e5a90f3ef4c49d22c79e44aad822ec9c313e1eb8e26020820152815180830183529091820190805f81526020015f60ff1681525081526020015f5f1b8152602001610a7b60405180604001604052808681526020015f5f1b815250610d45565b905290505b92915050565b5f600280604051610aaf907172697363302e52656365697074436c61696d60701b815260120190565b602060405180830381855afa158015610aca573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610aed9190611274565b60608401518451602086015160808701516040880151516018906002811115610b1857610b18611260565b60408a810151602090810151825191820199909952908101969096526060860194909452608085019290925260a084015263ffffffff909116901b60e01b6001600160e01b03191660c082015260f89190911b6001600160f81b03191660c4820152600160fa1b60c882015260ca015b60408051601f1981840301815290829052610ba29161128b565b602060405180830381855afa158015610bbd573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610a809190611274565b5f8080610d2b845f8190506008817eff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff16901b6008827fff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff00ff0016901c1790506010817dffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff16901b6010827fffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff0000ffff000016901c1790506020817bffffffff00000000ffffffff00000000ffffffff00000000ffffffff16901b6020827fffffffff00000000ffffffff00000000ffffffff00000000ffffffff0000000016901c17905060408177ffffffffffffffff0000000000000000ffffffffffffffff16901b60408277ffffffffffffffff0000000000000000ffffffffffffffff1916901c179050608081901b608082901c179050919050565b608081901b956001600160801b0319909116945092505050565b5f600280604051610d68906b1c9a5cd8cc0b93dd5d1c1d5d60a21b8152600c0190565b602060405180830381855afa158015610d83573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610da69190611274565b83516020808601516040805192830194909452928101919091526060810191909152600160f91b6080820152608201610b88565b6040518060a001604052805f81526020015f8152602001610e0a604080518082019091525f808252602082015290565b81526020015f81526020015f81525090565b5f60208284031215610e2c575f5ffd5b813567ffffffffffffffff811115610e42575f5ffd5b820160408185031215610e53575f5ffd5b9392505050565b8060408101831015610a80575f5ffd5b5f5f5f5f6101a08587031215610e7e575f5ffd5b610e888686610e5a565b935060c0850186811115610e9a575f5ffd5b604086019350610eaa8782610e5a565b925050856101a086011115610ebd575f5ffd5b50919490935090916101000190565b5f5f5f5f60608587031215610edf575f5ffd5b843567ffffffffffffffff811115610ef5575f5ffd5b8501601f81018713610f05575f5ffd5b803567ffffffffffffffff811115610f1b575f5ffd5b876020828401011115610f2c575f5ffd5b602091820198909750908601359560400135945092505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f5f8335601e19843603018112610f90575f5ffd5b83018035915067ffffffffffffffff821115610faa575f5ffd5b602001915036819003821315610fbe575f5ffd5b9250929050565b5f5f85851115610fd3575f5ffd5b83861115610fdf575f5ffd5b5050820193919092039150565b80356001600160e01b0319811690600484101561101d576001600160e01b0319600485900360031b81901b82161691505b5092915050565b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff8111828210171561105b5761105b611024565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561108a5761108a611024565b604052919050565b5f82601f8301126110a1575f5ffd5b6110ab6040611061565b8060408401858111156110bc575f5ffd5b845b818110156110d65780358452602093840193016110be565b509095945050505050565b5f6101008284031280156110f3575f5ffd5b506110fc611038565b6111068484611092565b815283605f840112611116575f5ffd5b604061112181611061565b8060c0860187811115611132575f5ffd5b604087015b81811015611158576111498982611092565b84526020909301928401611137565b508160208601526111698882611092565b604086015250929695505050505050565b805f5b60028110156107e057815184526020938401939091019060010161117d565b805f5b60058110156107e057815184526020938401939091019060010161119f565b6101a081016111cd828761117a565b60408201855f5b600281101561121a578151835f5b60028110156112015782518252602092830192909101906001016111e2565b50505060409290920191602091909101906001016111d4565b50505061122a60c083018561117a565b61123861010083018461119c565b95945050505050565b5f60208284031215611251575f5ffd5b81518015158114610e53575f5ffd5b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215611284575f5ffd5b5051919050565b5f82518060208501845e5f92019182525091905056fea26469706673582212202a001cf42514057842304ec6ca3a486e5970fa3eb64fd673c04a9333313cce3a64736f6c634300081c003360c060405234801561000f575f5ffd5b506040516107b43803806107b483398101604081905261002e9161018b565b816001600160a01b0316633fd66f226040518163ffffffff1660e01b8152600401602060405180830381865afa15801561006a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061008e91906101c3565b6001600160a01b0316816001600160a01b0316633fd66f226040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100d3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100f791906101c3565b6001600160a01b03161461015d5760405162461bcd60e51b8152602060048201526024808201527f5665726966696572732073686f756c64207573652073616d65207265706f7369604482015263746f727960e01b606482015260840160405180910390fd5b6001600160a01b039182166080521660a0526101e5565b6001600160a01b0381168114610188575f5ffd5b50565b5f5f6040838503121561019c575f5ffd5b82516101a781610174565b60208401519092506101b881610174565b809150509250929050565b5f602082840312156101d3575f5ffd5b81516101de81610174565b9392505050565b60805160a05161059c6102185f395f818160530152818160d8015261024f01525f818160b301526101a3015261059c5ff3fe608060405234801561000f575f5ffd5b506004361061004a575f3560e01c806319f9dd0a1461004e5780633fd66f22146100915780634bc8e31c14610099578063d06da682146100ae575b5f5ffd5b6100757f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b6100756100d5565b6100ac6100a73660046102f0565b61015b565b005b6100757f000000000000000000000000000000000000000000000000000000000000000081565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633fd66f226040518163ffffffff1660e01b8152600401602060405180830381865afa158015610132573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101569190610348565b905090565b600161017661016f368790038701876103ed565b6040015190565b60018111156101875761018761036a565b0361020f576040516312f238c760e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690634bc8e31c906101de908790879087908790600401610478565b5f6040518083038186803b1580156101f4575f5ffd5b505afa158015610206573d5f5f3e3d5ffd5b505050506102b7565b5f61022261016f368790038701876103ed565b60018111156102335761023361036a565b036102b7576040516312f238c760e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690634bc8e31c9061028a908790879087908790600401610478565b5f6040518083038186803b1580156102a0575f5ffd5b505afa1580156102b2573d5f5f3e3d5ffd5b505050505b50505050565b6001600160a01b03811681146102d1575f5ffd5b50565b80356001600160e01b0319811681146102eb575f5ffd5b919050565b5f5f5f5f848603610260811215610305575f5ffd5b610200811215610313575f5ffd5b50849350610200840135925061022084013561032e816102bd565b915061033d61024086016102d4565b905092959194509250565b5f60208284031215610358575f5ffd5b8151610363816102bd565b9392505050565b634e487b7160e01b5f52602160045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff811182821017156103b5576103b561037e565b60405290565b604051610100810167ffffffffffffffff811182821017156103b5576103b561037e565b8035600281106102eb575f5ffd5b5f6101408284031280156103ff575f5ffd5b50610408610392565b610411836102d4565b815283603f840112610421575f5ffd5b6104296103bb565b8061012085018681111561043b575f5ffd5b602086015b81811015610458578035845260209384019301610440565b50816020850152610468816103df565b6040850152509195945050505050565b61026081016001600160e01b031961048f876102d4565b1682526101006020870160208401376104ab61012087016103df565b600281106104c757634e487b7160e01b5f52602160045260245ffd5b610120830152610140868101359083015261016080870135908301526101808601356104f2816102bd565b6001600160a01b03166101808301526001600160e01b03196105176101a088016102d4565b166101a08301526101c086810135908301526101e0808701359083015261020082018590526001600160a01b0384166102208301526001600160e01b031983166102408301529594505050505056fea2646970667358221220ee2d9c330642bcbddbae38effa11507849f2fb7e8fa0c06c4df4d70ce445a27964736f6c634300081c0033",
|
30
|
+
sourceMap: "232:585:27:-:0;;;333:482;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;382:21;429:4;444;406:44;;;;;:::i;:::-;-1:-1:-1;;;;;1508:32:28;;;1490:51;;1577:32;;1572:2;1557:18;;1550:60;1478:2;1463:18;406:44:27;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;382:68:27;-1:-1:-1;465:9:27;460:112;484:8;:15;480:1;:19;460:112;;;520:10;-1:-1:-1;;;;;520:28:27;;549:8;558:1;549:11;;;;;;;;:::i;:::-;;;;;;;520:41;;;;;;;;;;;;;1899:25:28;;1887:2;1872:18;;1753:177;520:41:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;501:3:27;;;;;-1:-1:-1;460:112:27;;-1:-1:-1;460:112:27;;-1:-1:-1;581:40:27;;-1:-1:-1;;;581:40:27;;610:10;581:40;;;2081:51:28;-1:-1:-1;;;;;581:28:27;;;;;2054:18:28;;581:40:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;631:40:27;;-1:-1:-1;;;631:40:27;;660:10;631:40;;;2081:51:28;-1:-1:-1;;;;;631:28:27;;;-1:-1:-1;631:28:27;;-1:-1:-1;2054:18:28;;631:40:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;758:10;736:33;;;;;:::i;:::-;-1:-1:-1;;;;;2099:32:28;;;2081:51;;2069:2;2054:18;736:33:27;;;;;;;;;;;;;;;;;;;;;;;796:10;771:36;;;;;:::i;:::-;-1:-1:-1;;;;;2099:32:28;;;2081:51;;2069:2;2054:18;771:36:27;;;;;;;;;;;;;;;;;;;;;;;712:96;;;;;:::i;:::-;-1:-1:-1;;;;;1508:32:28;;;1490:51;;1577:32;;1572:2;1557:18;;1550:60;1478:2;1463:18;712:96:27;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;682:126:27;;;-1:-1:-1;232:585:27;;-1:-1:-1;232:585:27;;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;:::o;14:127:28:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:1165;241:6;294:2;282:9;273:7;269:23;265:32;262:52;;;310:1;307;300:12;262:52;337:16;;-1:-1:-1;;;;;365:30:28;;362:50;;;408:1;405;398:12;362:50;431:22;;484:4;476:13;;472:27;-1:-1:-1;462:55:28;;513:1;510;503:12;462:55;540:9;;-1:-1:-1;;;;;561:30:28;;558:56;;;594:18;;:::i;:::-;676:2;670:9;637:1;633:14;;;;730:2;722:11;;-1:-1:-1;;718:25:28;706:38;;-1:-1:-1;;;;;759:34:28;;795:22;;;756:62;753:88;;;821:18;;:::i;:::-;857:2;850:22;907;;;957:2;987:11;;;983:20;;;907:22;945:15;;1015:19;;;1012:39;;;1047:1;1044;1037:12;1012:39;1079:2;1075;1071:11;1060:22;;1091:189;1107:6;1102:3;1099:15;1091:189;;;1197:10;;1220:18;;;1267:2;1124:12;;;;1197:10;;-1:-1:-1;1258:12:28;1091:189;;;-1:-1:-1;1299:6:28;146:1165;-1:-1:-1;;;;;;146:1165:28:o;1621:127::-;1682:10;1677:3;1673:20;1670:1;1663:31;1713:4;1710:1;1703:15;1737:4;1734:1;1727:15;2370:355;232:585:27;;;;;;;;;;;;",
|
31
|
+
linkReferences: {},
|
32
|
+
},
|
33
|
+
deployedBytecode: {
|
34
|
+
object: "0x6080604052348015600e575f5ffd5b50600436106026575f3560e01c806304e278ea14602a575b5f5ffd5b60507f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f3fea26469706673582212202a3be3e56b48ba34d410a6389f3227aee336b15d67f1c52e166ad0ed790f3e5b64736f6c634300081c0033",
|
35
|
+
sourceMap: "232:585:27:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;274:52;;;;;;;;-1:-1:-1;;;;;206:32:28;;;188:51;;176:2;161:18;274:52:27;;;;;;",
|
36
|
+
linkReferences: {},
|
37
|
+
immutableReferences: {
|
38
|
+
"5475": [
|
39
|
+
{
|
40
|
+
start: 46,
|
41
|
+
length: 32,
|
42
|
+
},
|
43
|
+
],
|
44
|
+
},
|
45
|
+
},
|
46
|
+
methodIdentifiers: {
|
47
|
+
"VERIFIER_ROUTER()": "04e278ea",
|
48
|
+
},
|
49
|
+
rawMetadata: '{"compiler":{"version":"0.8.28+commit.7893614a"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes32[]","name":"imageIds","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"VERIFIER_ROUTER","outputs":[{"internalType":"contract ProofVerifierRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"compilationTarget":{"src/testing/TestVerifierRouterDeployer.sol":"TestVerifierRouterDeployer"},"evmVersion":"cancun","libraries":{},"metadata":{"bytecodeHash":"ipfs"},"optimizer":{"enabled":true,"runs":200},"remappings":[":@openzeppelin-contracts-5.0.1/=dependencies/@openzeppelin-contracts-5.0.1/",":@openzeppelin-contracts-5.1.0/=dependencies/risc0-ethereum-1.2.0/dependencies/@openzeppelin-contracts-5.1.0/",":forge-std-1.9.4/=dependencies/forge-std-1.9.4/",":forge-std/=dependencies/risc0-ethereum-1.2.0/dependencies/forge-std-1.9.4/src/",":openzeppelin-contracts/=dependencies/@openzeppelin-contracts-5.0.1/",":risc0-ethereum-1.2.0/=dependencies/risc0-ethereum-1.2.0/"]},"sources":{"dependencies/@openzeppelin-contracts-5.0.1/access/AccessControl.sol":{"keccak256":"0xa0e92d42942f4f57c5be50568dac11e9d00c93efcb458026e18d2d9b9b2e7308","license":"MIT","urls":["bzz-raw://46326c0bb1e296b67185e81c918e0b40501b8b6386165855df0a3f3c634b6a80","dweb:/ipfs/QmTwyrDYtsxsk6pymJTK94PnEpzsmkpUxFuzEiakDopy4Z"]},"dependencies/@openzeppelin-contracts-5.0.1/access/IAccessControl.sol":{"keccak256":"0xb6b36edd6a2999fd243ff226d6cbf84bd71af2432bbd0dfe19392996a1d9cb41","license":"MIT","urls":["bzz-raw://1fd2f35495652e57e3f99bc6c510bc5f7dd398a176ea2e72d8ed730aebc6ca26","dweb:/ipfs/QmTQV6X4gkikTib49cho5iDX3JvSQbdsoEChoDwrk3CbbH"]},"dependencies/@openzeppelin-contracts-5.0.1/access/extensions/AccessControlEnumerable.sol":{"keccak256":"0xb1c906fcd870fc8dfedb63bfb1bc58b4d2a7469bc13cc44d996fda430693850a","license":"MIT","urls":["bzz-raw://bd98c7779af61b220166cf952a05f6aca82ec859744d407d29043f8100adfb9c","dweb:/ipfs/Qmd6ftRk6cJgdooybM6F1X26R4SSUeNksv6Gni2NwEnKDw"]},"dependencies/@openzeppelin-contracts-5.0.1/access/extensions/IAccessControlEnumerable.sol":{"keccak256":"0xc1435f102633849858e75d7bed14c636f25448ceb3406d82992b0f2df52f4306","license":"MIT","urls":["bzz-raw://ce1815e3a1da24f91b8e2ec24cf09d0d46e0fbeddcbe2cb0d8b2e05b91ceb7b3","dweb:/ipfs/QmYTy1AQB5EV5jwuGsB49yykng2oG3x5ss4bDjFNxk3He4"]},"dependencies/@openzeppelin-contracts-5.0.1/utils/Context.sol":{"keccak256":"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2","license":"MIT","urls":["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12","dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"]},"dependencies/@openzeppelin-contracts-5.0.1/utils/introspection/ERC165.sol":{"keccak256":"0x9e8778b14317ba9e256c30a76fd6c32b960af621987f56069e1e819c77c6a133","license":"MIT","urls":["bzz-raw://1777404f1dcd0fac188e55a288724ec3c67b45288e49cc64723e95e702b49ab8","dweb:/ipfs/QmZFdC626GButBApwDUvvTnUzdinevC3B24d7yyh57XkiA"]},"dependencies/@openzeppelin-contracts-5.0.1/utils/introspection/IERC165.sol":{"keccak256":"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b","license":"MIT","urls":["bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df","dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL"]},"dependencies/@openzeppelin-contracts-5.0.1/utils/math/SafeCast.sol":{"keccak256":"0xe19a4d5f31d2861e7344e8e535e2feafb913d806d3e2b5fe7782741a2a7094fe","license":"MIT","urls":["bzz-raw://4aed79c0fa6f0546ed02f2f683e8f77f0fd2ed7eb34d8bbf3d373c9a6d95b13c","dweb:/ipfs/QmWqVz6UAVqmnWU5pqYPt1o6iDEZyPaBraAA3rKfTTSfYj"]},"dependencies/@openzeppelin-contracts-5.0.1/utils/structs/EnumerableSet.sol":{"keccak256":"0x86c1470cbfd878491e5de030072b647352d36bd27122cffb928970b1945282aa","license":"MIT","urls":["bzz-raw://ad85dd393ee0a1917c57046abc5155f51f77844b2c6a42c05c1b8dd26d6ff3c1","dweb:/ipfs/QmNqYc8To2NdnpP6E1tGz7t6A7beuENde5yovwov5pW1fA"]},"dependencies/risc0-ethereum-1.2.0/src/IRiscZeroSelectable.sol":{"keccak256":"0x39019bc9524b46ce9818d4d46a0fec57015ef0484858228bcb3b1c45efc7db19","license":"Apache-2.0","urls":["bzz-raw://964ecb93cae8853bf4781bdc8cb2cf1049dff5c052da6b798759487093b1c4ab","dweb:/ipfs/QmXfKLM74E3Y4m5y4JiVJdZjmkzCmHPTqS1aqSJ9vdSXyA"]},"dependencies/risc0-ethereum-1.2.0/src/IRiscZeroVerifier.sol":{"keccak256":"0xae73e91e4d2829b0a88176584d876382b4b7540ff07c62cb947cdf9ea43d5cf3","license":"Apache-2.0","urls":["bzz-raw://f2dd7da39a6f9b100fc1dcde565d799462cdc7d27722d2265317c3a01619c818","dweb:/ipfs/Qmd3k3kcvrtfkLqVza4jHodbFH8wvq5vmfPtwekBKtPjmz"]},"dependencies/risc0-ethereum-1.2.0/src/StructHash.sol":{"keccak256":"0xce612be2064752d2df89cfa2e9f73bba1ad891438d11d6fa7fc1285350b12fdd","license":"Apache-2.0","urls":["bzz-raw://5915dac04779e37024e87f723f9ee2eecc87e9e1162f37d73d5502aced9fb484","dweb:/ipfs/QmRLFdpKoUZeNTNditFTrE72g7sryCVnERE14duRgXHSJs"]},"dependencies/risc0-ethereum-1.2.0/src/Util.sol":{"keccak256":"0x230a9a58bb2b0c68d4921ecc3672783f941890a2fa3a238dbe5188cfb7658b82","license":"Apache-2.0","urls":["bzz-raw://586cb5296c564761609ca8aaae5b1fbbdb19ab1e174f7197f602572d9e82b70c","dweb:/ipfs/QmWxDmucSfg3Wgdk1rVcheDHwkziTsXWvKpKSCnxtpQBqg"]},"dependencies/risc0-ethereum-1.2.0/src/groth16/ControlID.sol":{"keccak256":"0xf54137d0a508d47c0ecb9d4f1ab478726d79b97943e48ca3abcb47d3fdfd8f95","license":"Apache-2.0","urls":["bzz-raw://9563419ad6cd8ddadd12c2714ff06395d0cae6b330dec77fc943b7097494bea7","dweb:/ipfs/QmRCPFrtzu8RZJe3YnwKK6YwhJLih23T4gag1smnzHT5W8"]},"dependencies/risc0-ethereum-1.2.0/src/groth16/Groth16Verifier.sol":{"keccak256":"0xaadc5747c8c88bba828e692020e880ef31d38964d3e419099e3d3a194312ea62","license":"GPL-3.0","urls":["bzz-raw://a0ad76c8785d08afaf315d027f6e3031c3200760c872de66f5a02d8a4364b228","dweb:/ipfs/QmW2kF7ukKqstmCT5M33U8bvw3AXqP8yaCbWycb7v4Nsef"]},"dependencies/risc0-ethereum-1.2.0/src/groth16/RiscZeroGroth16Verifier.sol":{"keccak256":"0x2eaa58d71a6f53446dc2889279cfec755541970ae8b07f1adced29481b75d5ac","license":"GPL-3.0","urls":["bzz-raw://ede637fde23140c135ae3bf7545a29071f80ae4d143491da4b8797b99dffcd78","dweb:/ipfs/QmX4P3R6ktbdy4bfcJ92GfzUfLw8PC8RAH65Yhpa7dnqS4"]},"dependencies/risc0-ethereum-1.2.0/src/test/RiscZeroMockVerifier.sol":{"keccak256":"0x78d0c64eed6d901237c1e9f3a6cffe0a7632ff68b3f571b72e00f43322621453","license":"Apache-2.0","urls":["bzz-raw://290d76f572ffc0537155f26b1447ac4a1e690409a6d1d92d84b8ecb6a4ac60ac","dweb:/ipfs/QmQ7rgKtTRaKjzYGZLfgJUFCDCWGMNPr6rWNc5AdDrX4JA"]},"src/CallAssumptions.sol":{"keccak256":"0xc3d0b9470794038f8018094138ab2d6fae7d639b8e213889a1a591f92f855025","license":"Apache-2.0","urls":["bzz-raw://a14b286d81c22817c91a87bece4e6a038fcfb798179fcbc782f7dd8fc9e174b7","dweb:/ipfs/QmPZTBbCHZfscMYaqfuQ3WiVdKbBemj5wpgb8bFhygGj8K"]},"src/Proof.sol":{"keccak256":"0x32db566314f73f696e2ff0839ca7a41c9f04d74c96f2d8604c53f92dccfa3a43","license":"UNLICENSED","urls":["bzz-raw://2ea032ed2a364dd97eeebe7df93cf252913284ea76a1fa1478d9436a916a83f3","dweb:/ipfs/QmW873QftHexSzpEqmAVJ9vUd1cJD584qTa7mzqkhhipMZ"]},"src/Repository.sol":{"keccak256":"0xd346825794a205b260f3e58e83ced657fffd0819fe78e24e96310f34fc9f5a0d","license":"UNLICENSED","urls":["bzz-raw://8185cb6e16f51ff98aa9bb2e0cc003bc1bea796ebc6425a114bb1b767123a928","dweb:/ipfs/Qmb5UppxkVtDePuMs8Kj3SDgw2oPYcDEtZH81CKrXLhZku"]},"src/Seal.sol":{"keccak256":"0xa61c6146260bd3006392ec7b91bfb46c1d73493ff5a01c9ce702b8c90f1a392c","license":"UNLICENSED","urls":["bzz-raw://ebf725dc623c0b6d3f8e74c2eb625d662303c22ba646fab710a4fbdf20d5e3c3","dweb:/ipfs/Qmat3kzvD19kLMHRmomknHzJnDdQfyU5pQDbhP5BsZTSvg"]},"src/proof_verifier/ChainId.sol":{"keccak256":"0x755479916bf59498ad41df7f120f3a0b8da0ec1d00a3ea96024d8647011a73e2","license":"UNLICENSED","urls":["bzz-raw://3fca7683409d8ab96c18c0616c7a1de692282e9d1b5d7006649960c3dffe964e","dweb:/ipfs/QmNo77eW4FTV7knkxgMf8z9pvb9A7xQf5eoARtcPPffjn6"]},"src/proof_verifier/FakeProofVerifier.sol":{"keccak256":"0x12727eeb39e9fb2f95a80cd79865701a86bb11f5220a1b30ad94f5f8f04e658f","license":"UNLICENSED","urls":["bzz-raw://af702f85ff6101562fd768c604480981377b94c66657efa5f2cfc59716f25df1","dweb:/ipfs/QmUrZz1CzgGQQH8LaWg3cKVqH9BuDuBfhX38mq66YFQZKo"]},"src/proof_verifier/Groth16ProofVerifier.sol":{"keccak256":"0x9d20d28f7281d6d7cae608e3e07f485a1ebab01385ea6f6c9f14732388ca19e5","license":"UNLICENSED","urls":["bzz-raw://0222b49b98a410ceaaf3780e57527b85f529977dd0ff3e978fda1963d1b61e02","dweb:/ipfs/QmbWuATM3kezBjPaYws1Czbqd5NPDnRkAKPvwHSBXANsQw"]},"src/proof_verifier/IProofVerifier.sol":{"keccak256":"0xf48514ae0258f907c64cafb92d583cdbe704b4c0269da56f7336c3ec5bab0e82","license":"UNLICENSED","urls":["bzz-raw://a79c7bd455e908906b557c6cc7db2b6ec77d9f650a1ac0f4295c68e95894e193","dweb:/ipfs/QmdLufVnM7uAVWLtVwdVKsLMVg2b1iKWKLN9AdJYAy4JHP"]},"src/proof_verifier/ProofVerifierBase.sol":{"keccak256":"0x66f28abed63945dc6055e605176bc38da3f7fe040f7f42b1ef79c9030f2d4e75","license":"UNLICENSED","urls":["bzz-raw://76fa3565277af4edd785cb55778cd71959288ecd1c87634b16ae3a053e1a006d","dweb:/ipfs/QmVarQXiK5KtLmzNo7ben9gPCHqXspfe29LApcEumgv7cD"]},"src/proof_verifier/ProofVerifierRouter.sol":{"keccak256":"0x57847e7cfea1dea540f57906316f8dcfc5116ed9d3e7f8eb44c6ffaf7345f446","license":"UNLICENSED","urls":["bzz-raw://ec1dafe1aec7724dbcf1b7fd1a9996e32a6366da759c07acfda408c29e63bd81","dweb:/ipfs/QmcvqbizyceFHECiBCesJY3TbbZdGx4PiDm5zFzwtaMZA1"]},"src/testing/TestVerifierRouterDeployer.sol":{"keccak256":"0xc10d1a4317ac83f9424809947b86f2d6d033df596ae0fea49c4f8a2b8ec57618","license":"UNLICENSED","urls":["bzz-raw://c8a5b61760d8dd9e3314a816bb5f06e68ae3b897afa7bef3886038db130d66a6","dweb:/ipfs/QmccPnr5FodeXkDhHis4LMJ8Ai71HNEMVqiWKvBzuiPiAA"]}},"version":1}',
|
50
|
+
metadata: {
|
51
|
+
compiler: {
|
52
|
+
version: "0.8.28+commit.7893614a",
|
53
|
+
},
|
54
|
+
language: "Solidity",
|
55
|
+
output: {
|
56
|
+
abi: [
|
57
|
+
{
|
58
|
+
inputs: [
|
59
|
+
{
|
60
|
+
internalType: "bytes32[]",
|
61
|
+
name: "imageIds",
|
62
|
+
type: "bytes32[]",
|
63
|
+
},
|
64
|
+
],
|
65
|
+
stateMutability: "nonpayable",
|
66
|
+
type: "constructor",
|
67
|
+
},
|
68
|
+
{
|
69
|
+
inputs: [],
|
70
|
+
stateMutability: "view",
|
71
|
+
type: "function",
|
72
|
+
name: "VERIFIER_ROUTER",
|
73
|
+
outputs: [
|
74
|
+
{
|
75
|
+
internalType: "contract ProofVerifierRouter",
|
76
|
+
name: "",
|
77
|
+
type: "address",
|
78
|
+
},
|
79
|
+
],
|
80
|
+
},
|
81
|
+
],
|
82
|
+
devdoc: {
|
83
|
+
kind: "dev",
|
84
|
+
methods: {},
|
85
|
+
version: 1,
|
86
|
+
},
|
87
|
+
userdoc: {
|
88
|
+
kind: "user",
|
89
|
+
methods: {},
|
90
|
+
version: 1,
|
91
|
+
},
|
92
|
+
},
|
93
|
+
settings: {
|
94
|
+
remappings: [
|
95
|
+
"@openzeppelin-contracts-5.0.1/=dependencies/@openzeppelin-contracts-5.0.1/",
|
96
|
+
"@openzeppelin-contracts-5.1.0/=dependencies/risc0-ethereum-1.2.0/dependencies/@openzeppelin-contracts-5.1.0/",
|
97
|
+
"forge-std-1.9.4/=dependencies/forge-std-1.9.4/",
|
98
|
+
"forge-std/=dependencies/risc0-ethereum-1.2.0/dependencies/forge-std-1.9.4/src/",
|
99
|
+
"openzeppelin-contracts/=dependencies/@openzeppelin-contracts-5.0.1/",
|
100
|
+
"risc0-ethereum-1.2.0/=dependencies/risc0-ethereum-1.2.0/",
|
101
|
+
],
|
102
|
+
optimizer: {
|
103
|
+
enabled: true,
|
104
|
+
runs: 200,
|
105
|
+
},
|
106
|
+
metadata: {
|
107
|
+
bytecodeHash: "ipfs",
|
108
|
+
},
|
109
|
+
compilationTarget: {
|
110
|
+
"src/testing/TestVerifierRouterDeployer.sol": "TestVerifierRouterDeployer",
|
111
|
+
},
|
112
|
+
evmVersion: "cancun",
|
113
|
+
libraries: {},
|
114
|
+
},
|
115
|
+
sources: {
|
116
|
+
"dependencies/@openzeppelin-contracts-5.0.1/access/AccessControl.sol": {
|
117
|
+
keccak256: "0xa0e92d42942f4f57c5be50568dac11e9d00c93efcb458026e18d2d9b9b2e7308",
|
118
|
+
urls: [
|
119
|
+
"bzz-raw://46326c0bb1e296b67185e81c918e0b40501b8b6386165855df0a3f3c634b6a80",
|
120
|
+
"dweb:/ipfs/QmTwyrDYtsxsk6pymJTK94PnEpzsmkpUxFuzEiakDopy4Z",
|
121
|
+
],
|
122
|
+
license: "MIT",
|
123
|
+
},
|
124
|
+
"dependencies/@openzeppelin-contracts-5.0.1/access/IAccessControl.sol": {
|
125
|
+
keccak256: "0xb6b36edd6a2999fd243ff226d6cbf84bd71af2432bbd0dfe19392996a1d9cb41",
|
126
|
+
urls: [
|
127
|
+
"bzz-raw://1fd2f35495652e57e3f99bc6c510bc5f7dd398a176ea2e72d8ed730aebc6ca26",
|
128
|
+
"dweb:/ipfs/QmTQV6X4gkikTib49cho5iDX3JvSQbdsoEChoDwrk3CbbH",
|
129
|
+
],
|
130
|
+
license: "MIT",
|
131
|
+
},
|
132
|
+
"dependencies/@openzeppelin-contracts-5.0.1/access/extensions/AccessControlEnumerable.sol": {
|
133
|
+
keccak256: "0xb1c906fcd870fc8dfedb63bfb1bc58b4d2a7469bc13cc44d996fda430693850a",
|
134
|
+
urls: [
|
135
|
+
"bzz-raw://bd98c7779af61b220166cf952a05f6aca82ec859744d407d29043f8100adfb9c",
|
136
|
+
"dweb:/ipfs/Qmd6ftRk6cJgdooybM6F1X26R4SSUeNksv6Gni2NwEnKDw",
|
137
|
+
],
|
138
|
+
license: "MIT",
|
139
|
+
},
|
140
|
+
"dependencies/@openzeppelin-contracts-5.0.1/access/extensions/IAccessControlEnumerable.sol": {
|
141
|
+
keccak256: "0xc1435f102633849858e75d7bed14c636f25448ceb3406d82992b0f2df52f4306",
|
142
|
+
urls: [
|
143
|
+
"bzz-raw://ce1815e3a1da24f91b8e2ec24cf09d0d46e0fbeddcbe2cb0d8b2e05b91ceb7b3",
|
144
|
+
"dweb:/ipfs/QmYTy1AQB5EV5jwuGsB49yykng2oG3x5ss4bDjFNxk3He4",
|
145
|
+
],
|
146
|
+
license: "MIT",
|
147
|
+
},
|
148
|
+
"dependencies/@openzeppelin-contracts-5.0.1/utils/Context.sol": {
|
149
|
+
keccak256: "0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2",
|
150
|
+
urls: [
|
151
|
+
"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12",
|
152
|
+
"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF",
|
153
|
+
],
|
154
|
+
license: "MIT",
|
155
|
+
},
|
156
|
+
"dependencies/@openzeppelin-contracts-5.0.1/utils/introspection/ERC165.sol": {
|
157
|
+
keccak256: "0x9e8778b14317ba9e256c30a76fd6c32b960af621987f56069e1e819c77c6a133",
|
158
|
+
urls: [
|
159
|
+
"bzz-raw://1777404f1dcd0fac188e55a288724ec3c67b45288e49cc64723e95e702b49ab8",
|
160
|
+
"dweb:/ipfs/QmZFdC626GButBApwDUvvTnUzdinevC3B24d7yyh57XkiA",
|
161
|
+
],
|
162
|
+
license: "MIT",
|
163
|
+
},
|
164
|
+
"dependencies/@openzeppelin-contracts-5.0.1/utils/introspection/IERC165.sol": {
|
165
|
+
keccak256: "0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b",
|
166
|
+
urls: [
|
167
|
+
"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df",
|
168
|
+
"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL",
|
169
|
+
],
|
170
|
+
license: "MIT",
|
171
|
+
},
|
172
|
+
"dependencies/@openzeppelin-contracts-5.0.1/utils/math/SafeCast.sol": {
|
173
|
+
keccak256: "0xe19a4d5f31d2861e7344e8e535e2feafb913d806d3e2b5fe7782741a2a7094fe",
|
174
|
+
urls: [
|
175
|
+
"bzz-raw://4aed79c0fa6f0546ed02f2f683e8f77f0fd2ed7eb34d8bbf3d373c9a6d95b13c",
|
176
|
+
"dweb:/ipfs/QmWqVz6UAVqmnWU5pqYPt1o6iDEZyPaBraAA3rKfTTSfYj",
|
177
|
+
],
|
178
|
+
license: "MIT",
|
179
|
+
},
|
180
|
+
"dependencies/@openzeppelin-contracts-5.0.1/utils/structs/EnumerableSet.sol": {
|
181
|
+
keccak256: "0x86c1470cbfd878491e5de030072b647352d36bd27122cffb928970b1945282aa",
|
182
|
+
urls: [
|
183
|
+
"bzz-raw://ad85dd393ee0a1917c57046abc5155f51f77844b2c6a42c05c1b8dd26d6ff3c1",
|
184
|
+
"dweb:/ipfs/QmNqYc8To2NdnpP6E1tGz7t6A7beuENde5yovwov5pW1fA",
|
185
|
+
],
|
186
|
+
license: "MIT",
|
187
|
+
},
|
188
|
+
"dependencies/risc0-ethereum-1.2.0/src/IRiscZeroSelectable.sol": {
|
189
|
+
keccak256: "0x39019bc9524b46ce9818d4d46a0fec57015ef0484858228bcb3b1c45efc7db19",
|
190
|
+
urls: [
|
191
|
+
"bzz-raw://964ecb93cae8853bf4781bdc8cb2cf1049dff5c052da6b798759487093b1c4ab",
|
192
|
+
"dweb:/ipfs/QmXfKLM74E3Y4m5y4JiVJdZjmkzCmHPTqS1aqSJ9vdSXyA",
|
193
|
+
],
|
194
|
+
license: "Apache-2.0",
|
195
|
+
},
|
196
|
+
"dependencies/risc0-ethereum-1.2.0/src/IRiscZeroVerifier.sol": {
|
197
|
+
keccak256: "0xae73e91e4d2829b0a88176584d876382b4b7540ff07c62cb947cdf9ea43d5cf3",
|
198
|
+
urls: [
|
199
|
+
"bzz-raw://f2dd7da39a6f9b100fc1dcde565d799462cdc7d27722d2265317c3a01619c818",
|
200
|
+
"dweb:/ipfs/Qmd3k3kcvrtfkLqVza4jHodbFH8wvq5vmfPtwekBKtPjmz",
|
201
|
+
],
|
202
|
+
license: "Apache-2.0",
|
203
|
+
},
|
204
|
+
"dependencies/risc0-ethereum-1.2.0/src/StructHash.sol": {
|
205
|
+
keccak256: "0xce612be2064752d2df89cfa2e9f73bba1ad891438d11d6fa7fc1285350b12fdd",
|
206
|
+
urls: [
|
207
|
+
"bzz-raw://5915dac04779e37024e87f723f9ee2eecc87e9e1162f37d73d5502aced9fb484",
|
208
|
+
"dweb:/ipfs/QmRLFdpKoUZeNTNditFTrE72g7sryCVnERE14duRgXHSJs",
|
209
|
+
],
|
210
|
+
license: "Apache-2.0",
|
211
|
+
},
|
212
|
+
"dependencies/risc0-ethereum-1.2.0/src/Util.sol": {
|
213
|
+
keccak256: "0x230a9a58bb2b0c68d4921ecc3672783f941890a2fa3a238dbe5188cfb7658b82",
|
214
|
+
urls: [
|
215
|
+
"bzz-raw://586cb5296c564761609ca8aaae5b1fbbdb19ab1e174f7197f602572d9e82b70c",
|
216
|
+
"dweb:/ipfs/QmWxDmucSfg3Wgdk1rVcheDHwkziTsXWvKpKSCnxtpQBqg",
|
217
|
+
],
|
218
|
+
license: "Apache-2.0",
|
219
|
+
},
|
220
|
+
"dependencies/risc0-ethereum-1.2.0/src/groth16/ControlID.sol": {
|
221
|
+
keccak256: "0xf54137d0a508d47c0ecb9d4f1ab478726d79b97943e48ca3abcb47d3fdfd8f95",
|
222
|
+
urls: [
|
223
|
+
"bzz-raw://9563419ad6cd8ddadd12c2714ff06395d0cae6b330dec77fc943b7097494bea7",
|
224
|
+
"dweb:/ipfs/QmRCPFrtzu8RZJe3YnwKK6YwhJLih23T4gag1smnzHT5W8",
|
225
|
+
],
|
226
|
+
license: "Apache-2.0",
|
227
|
+
},
|
228
|
+
"dependencies/risc0-ethereum-1.2.0/src/groth16/Groth16Verifier.sol": {
|
229
|
+
keccak256: "0xaadc5747c8c88bba828e692020e880ef31d38964d3e419099e3d3a194312ea62",
|
230
|
+
urls: [
|
231
|
+
"bzz-raw://a0ad76c8785d08afaf315d027f6e3031c3200760c872de66f5a02d8a4364b228",
|
232
|
+
"dweb:/ipfs/QmW2kF7ukKqstmCT5M33U8bvw3AXqP8yaCbWycb7v4Nsef",
|
233
|
+
],
|
234
|
+
license: "GPL-3.0",
|
235
|
+
},
|
236
|
+
"dependencies/risc0-ethereum-1.2.0/src/groth16/RiscZeroGroth16Verifier.sol": {
|
237
|
+
keccak256: "0x2eaa58d71a6f53446dc2889279cfec755541970ae8b07f1adced29481b75d5ac",
|
238
|
+
urls: [
|
239
|
+
"bzz-raw://ede637fde23140c135ae3bf7545a29071f80ae4d143491da4b8797b99dffcd78",
|
240
|
+
"dweb:/ipfs/QmX4P3R6ktbdy4bfcJ92GfzUfLw8PC8RAH65Yhpa7dnqS4",
|
241
|
+
],
|
242
|
+
license: "GPL-3.0",
|
243
|
+
},
|
244
|
+
"dependencies/risc0-ethereum-1.2.0/src/test/RiscZeroMockVerifier.sol": {
|
245
|
+
keccak256: "0x78d0c64eed6d901237c1e9f3a6cffe0a7632ff68b3f571b72e00f43322621453",
|
246
|
+
urls: [
|
247
|
+
"bzz-raw://290d76f572ffc0537155f26b1447ac4a1e690409a6d1d92d84b8ecb6a4ac60ac",
|
248
|
+
"dweb:/ipfs/QmQ7rgKtTRaKjzYGZLfgJUFCDCWGMNPr6rWNc5AdDrX4JA",
|
249
|
+
],
|
250
|
+
license: "Apache-2.0",
|
251
|
+
},
|
252
|
+
"src/CallAssumptions.sol": {
|
253
|
+
keccak256: "0xc3d0b9470794038f8018094138ab2d6fae7d639b8e213889a1a591f92f855025",
|
254
|
+
urls: [
|
255
|
+
"bzz-raw://a14b286d81c22817c91a87bece4e6a038fcfb798179fcbc782f7dd8fc9e174b7",
|
256
|
+
"dweb:/ipfs/QmPZTBbCHZfscMYaqfuQ3WiVdKbBemj5wpgb8bFhygGj8K",
|
257
|
+
],
|
258
|
+
license: "Apache-2.0",
|
259
|
+
},
|
260
|
+
"src/Proof.sol": {
|
261
|
+
keccak256: "0x32db566314f73f696e2ff0839ca7a41c9f04d74c96f2d8604c53f92dccfa3a43",
|
262
|
+
urls: [
|
263
|
+
"bzz-raw://2ea032ed2a364dd97eeebe7df93cf252913284ea76a1fa1478d9436a916a83f3",
|
264
|
+
"dweb:/ipfs/QmW873QftHexSzpEqmAVJ9vUd1cJD584qTa7mzqkhhipMZ",
|
265
|
+
],
|
266
|
+
license: "UNLICENSED",
|
267
|
+
},
|
268
|
+
"src/Repository.sol": {
|
269
|
+
keccak256: "0xd346825794a205b260f3e58e83ced657fffd0819fe78e24e96310f34fc9f5a0d",
|
270
|
+
urls: [
|
271
|
+
"bzz-raw://8185cb6e16f51ff98aa9bb2e0cc003bc1bea796ebc6425a114bb1b767123a928",
|
272
|
+
"dweb:/ipfs/Qmb5UppxkVtDePuMs8Kj3SDgw2oPYcDEtZH81CKrXLhZku",
|
273
|
+
],
|
274
|
+
license: "UNLICENSED",
|
275
|
+
},
|
276
|
+
"src/Seal.sol": {
|
277
|
+
keccak256: "0xa61c6146260bd3006392ec7b91bfb46c1d73493ff5a01c9ce702b8c90f1a392c",
|
278
|
+
urls: [
|
279
|
+
"bzz-raw://ebf725dc623c0b6d3f8e74c2eb625d662303c22ba646fab710a4fbdf20d5e3c3",
|
280
|
+
"dweb:/ipfs/Qmat3kzvD19kLMHRmomknHzJnDdQfyU5pQDbhP5BsZTSvg",
|
281
|
+
],
|
282
|
+
license: "UNLICENSED",
|
283
|
+
},
|
284
|
+
"src/proof_verifier/ChainId.sol": {
|
285
|
+
keccak256: "0x755479916bf59498ad41df7f120f3a0b8da0ec1d00a3ea96024d8647011a73e2",
|
286
|
+
urls: [
|
287
|
+
"bzz-raw://3fca7683409d8ab96c18c0616c7a1de692282e9d1b5d7006649960c3dffe964e",
|
288
|
+
"dweb:/ipfs/QmNo77eW4FTV7knkxgMf8z9pvb9A7xQf5eoARtcPPffjn6",
|
289
|
+
],
|
290
|
+
license: "UNLICENSED",
|
291
|
+
},
|
292
|
+
"src/proof_verifier/FakeProofVerifier.sol": {
|
293
|
+
keccak256: "0x12727eeb39e9fb2f95a80cd79865701a86bb11f5220a1b30ad94f5f8f04e658f",
|
294
|
+
urls: [
|
295
|
+
"bzz-raw://af702f85ff6101562fd768c604480981377b94c66657efa5f2cfc59716f25df1",
|
296
|
+
"dweb:/ipfs/QmUrZz1CzgGQQH8LaWg3cKVqH9BuDuBfhX38mq66YFQZKo",
|
297
|
+
],
|
298
|
+
license: "UNLICENSED",
|
299
|
+
},
|
300
|
+
"src/proof_verifier/Groth16ProofVerifier.sol": {
|
301
|
+
keccak256: "0x9d20d28f7281d6d7cae608e3e07f485a1ebab01385ea6f6c9f14732388ca19e5",
|
302
|
+
urls: [
|
303
|
+
"bzz-raw://0222b49b98a410ceaaf3780e57527b85f529977dd0ff3e978fda1963d1b61e02",
|
304
|
+
"dweb:/ipfs/QmbWuATM3kezBjPaYws1Czbqd5NPDnRkAKPvwHSBXANsQw",
|
305
|
+
],
|
306
|
+
license: "UNLICENSED",
|
307
|
+
},
|
308
|
+
"src/proof_verifier/IProofVerifier.sol": {
|
309
|
+
keccak256: "0xf48514ae0258f907c64cafb92d583cdbe704b4c0269da56f7336c3ec5bab0e82",
|
310
|
+
urls: [
|
311
|
+
"bzz-raw://a79c7bd455e908906b557c6cc7db2b6ec77d9f650a1ac0f4295c68e95894e193",
|
312
|
+
"dweb:/ipfs/QmdLufVnM7uAVWLtVwdVKsLMVg2b1iKWKLN9AdJYAy4JHP",
|
313
|
+
],
|
314
|
+
license: "UNLICENSED",
|
315
|
+
},
|
316
|
+
"src/proof_verifier/ProofVerifierBase.sol": {
|
317
|
+
keccak256: "0x66f28abed63945dc6055e605176bc38da3f7fe040f7f42b1ef79c9030f2d4e75",
|
318
|
+
urls: [
|
319
|
+
"bzz-raw://76fa3565277af4edd785cb55778cd71959288ecd1c87634b16ae3a053e1a006d",
|
320
|
+
"dweb:/ipfs/QmVarQXiK5KtLmzNo7ben9gPCHqXspfe29LApcEumgv7cD",
|
321
|
+
],
|
322
|
+
license: "UNLICENSED",
|
323
|
+
},
|
324
|
+
"src/proof_verifier/ProofVerifierRouter.sol": {
|
325
|
+
keccak256: "0x57847e7cfea1dea540f57906316f8dcfc5116ed9d3e7f8eb44c6ffaf7345f446",
|
326
|
+
urls: [
|
327
|
+
"bzz-raw://ec1dafe1aec7724dbcf1b7fd1a9996e32a6366da759c07acfda408c29e63bd81",
|
328
|
+
"dweb:/ipfs/QmcvqbizyceFHECiBCesJY3TbbZdGx4PiDm5zFzwtaMZA1",
|
329
|
+
],
|
330
|
+
license: "UNLICENSED",
|
331
|
+
},
|
332
|
+
"src/testing/TestVerifierRouterDeployer.sol": {
|
333
|
+
keccak256: "0xc10d1a4317ac83f9424809947b86f2d6d033df596ae0fea49c4f8a2b8ec57618",
|
334
|
+
urls: [
|
335
|
+
"bzz-raw://c8a5b61760d8dd9e3314a816bb5f06e68ae3b897afa7bef3886038db130d66a6",
|
336
|
+
"dweb:/ipfs/QmccPnr5FodeXkDhHis4LMJ8Ai71HNEMVqiWKvBzuiPiAA",
|
337
|
+
],
|
338
|
+
license: "UNLICENSED",
|
339
|
+
},
|
340
|
+
},
|
341
|
+
version: 1,
|
342
|
+
},
|
343
|
+
id: 27,
|
344
|
+
};
|
345
|
+
//# sourceMappingURL=TestVerifierRouterDeployer.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"TestVerifierRouterDeployer.js","sourceRoot":"","sources":["../../src/abi/TestVerifierRouterDeployer.ts"],"names":[],"mappings":"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"}
|
package/dist/config/deploy.d.ts
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
import { type ContractArg, type ContractSpec } from "../api/lib/types/ethereum.js";
|
2
2
|
import { type Address } from "viem";
|
3
|
+
import type { DeployConfig } from "./types.js";
|
3
4
|
export declare const waitForContractDeploy: ({ hash, }: {
|
4
5
|
hash: `0x${string}`;
|
5
6
|
}) => Promise<Address>;
|
@@ -10,11 +11,12 @@ export declare const deployProver: ({ proverSpec, proverArgs, }: {
|
|
10
11
|
proverSpec: ContractSpec;
|
11
12
|
proverArgs?: ContractArg[];
|
12
13
|
}) => Promise<`0x${string}`>;
|
13
|
-
export declare const deployVlayerContracts: ({ proverSpec, verifierSpec, proverArgs, verifierArgs, }: {
|
14
|
+
export declare const deployVlayerContracts: ({ proverSpec, verifierSpec, proverArgs, verifierArgs, env, }: {
|
14
15
|
proverSpec: ContractSpec;
|
15
16
|
verifierSpec: ContractSpec;
|
16
17
|
proverArgs?: ContractArg[];
|
17
18
|
verifierArgs?: ContractArg[];
|
19
|
+
env?: DeployConfig;
|
18
20
|
}) => Promise<{
|
19
21
|
prover: `0x${string}`;
|
20
22
|
verifier: `0x${string}`;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/config/deploy.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/config/deploy.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAEL,KAAK,OAAO,EAOb,MAAM,MAAM,CAAC;AAId,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C,eAAO,MAAM,qBAAqB,cAE/B;IACD,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;CACrB,KAAG,OAAO,CAAC,OAAO,CAgBlB,CAAC;AAEF,eAAO,MAAM,yBAAyB,cAEnC;IACD,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;CACrB,+CAQA,CAAC;AAEF,eAAO,MAAM,YAAY,gCAGtB;IACD,UAAU,EAAE,YAAY,CAAC;IACzB,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC;CAC5B,2BAcA,CAAC;AAEF,eAAO,MAAM,qBAAqB,iEAM/B;IACD,UAAU,EAAE,YAAY,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,GAAG,CAAC,EAAE,YAAY,CAAC;CACpB;;;EAkCA,CAAC"}
|
package/dist/config/deploy.js
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
import { getConfig } from "./getConfig.js";
|
2
2
|
import { createContext } from "./createContext.js";
|
3
3
|
import {} from "../api/lib/types/ethereum.js";
|
4
|
-
import {} from "viem";
|
4
|
+
import { parseAbi, parseAbiItem, } from "viem";
|
5
5
|
import { getChainConfirmations } from "./getChainConfirmations.js";
|
6
6
|
import debug from "debug";
|
7
|
+
import TestVerifierRouterDeployer from "../abi/TestVerifierRouterDeployer.js";
|
7
8
|
const log = debug("vlayer:prover");
|
8
9
|
export const waitForContractDeploy = async ({ hash, }) => {
|
9
10
|
const { ethClient: client } = createContext(getConfig());
|
@@ -41,7 +42,7 @@ export const deployProver = async ({ proverSpec, proverArgs, }) => {
|
|
41
42
|
const prover = await waitForContractDeploy({ hash: proverHash });
|
42
43
|
return prover;
|
43
44
|
};
|
44
|
-
export const deployVlayerContracts = async ({ proverSpec, verifierSpec, proverArgs, verifierArgs, }) => {
|
45
|
+
export const deployVlayerContracts = async ({ proverSpec, verifierSpec, proverArgs, verifierArgs, env, }) => {
|
45
46
|
log("Starting contract deployment process...");
|
46
47
|
const config = getConfig();
|
47
48
|
const { chain, ethClient, account } = createContext(config);
|
@@ -67,6 +68,59 @@ export const deployVlayerContracts = async ({ proverSpec, verifierSpec, proverAr
|
|
67
68
|
const verifier = await waitForContractDeploy({ hash: verifierHash });
|
68
69
|
log(`Verifier contract deployed at: ${verifier}`);
|
69
70
|
log("Contract deployment completed successfully");
|
71
|
+
if (env?.isTesting) {
|
72
|
+
await swapInternalVerifier(ethClient, chain, account, verifier);
|
73
|
+
}
|
70
74
|
return { prover, verifier };
|
71
75
|
};
|
76
|
+
const swapInternalVerifier = async (ethClient, chain, account, verifierAddress) => {
|
77
|
+
log("Swapping internal verifier");
|
78
|
+
const imageIds = await getImageId(ethClient, verifierAddress);
|
79
|
+
const routerDeployerHash = await ethClient.deployContract({
|
80
|
+
chain,
|
81
|
+
account,
|
82
|
+
args: [imageIds],
|
83
|
+
abi: TestVerifierRouterDeployer.abi,
|
84
|
+
bytecode: TestVerifierRouterDeployer.bytecode.object,
|
85
|
+
});
|
86
|
+
const routerDeployerAddress = await waitForContractDeploy({
|
87
|
+
hash: routerDeployerHash,
|
88
|
+
});
|
89
|
+
const newVerifier = await ethClient.readContract({
|
90
|
+
address: routerDeployerAddress,
|
91
|
+
functionName: "VERIFIER_ROUTER",
|
92
|
+
abi: TestVerifierRouterDeployer.abi,
|
93
|
+
});
|
94
|
+
const swapTxHash = await ethClient.writeContract({
|
95
|
+
chain,
|
96
|
+
account,
|
97
|
+
address: verifierAddress,
|
98
|
+
functionName: "_setTestVerifier",
|
99
|
+
args: [newVerifier],
|
100
|
+
abi: parseAbi(["function _setTestVerifier(address)"]),
|
101
|
+
});
|
102
|
+
await waitForTransactionReceipt({ hash: swapTxHash });
|
103
|
+
log("Internal verifier swapped successfully");
|
104
|
+
};
|
105
|
+
async function getImageId(ethClient, verifierAddress) {
|
106
|
+
const internalVerifier = await ethClient.readContract({
|
107
|
+
address: verifierAddress,
|
108
|
+
functionName: "verifier",
|
109
|
+
abi: parseAbi(["function verifier() external view returns (address)"]),
|
110
|
+
});
|
111
|
+
const repository = await ethClient.readContract({
|
112
|
+
address: internalVerifier,
|
113
|
+
functionName: "imageIdRepository",
|
114
|
+
abi: parseAbi([
|
115
|
+
"function imageIdRepository() external view returns (address)",
|
116
|
+
]),
|
117
|
+
});
|
118
|
+
const blockNumber = await ethClient.getBlockNumber();
|
119
|
+
const logs = await ethClient.getLogs({
|
120
|
+
address: repository,
|
121
|
+
fromBlock: blockNumber - 100n > 0 ? blockNumber - 100n : 1n,
|
122
|
+
event: parseAbiItem(["event ImageIDAdded(bytes32)"]),
|
123
|
+
});
|
124
|
+
return logs.map((log) => log.args[0]);
|
125
|
+
}
|
72
126
|
//# sourceMappingURL=deploy.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/config/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAuC,MAAM,gBAAgB,CAAC;AACrE,OAAO,
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/config/deploy.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../src/config/getConfig.ts"],"names":[],"mappings":"AACA,OAAO,
|
1
|
+
{"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../src/config/getConfig.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,SAAS,CAAC;AA4C5D,eAAO,MAAM,WAAW,QAAS,MAAM,WAKlC,CAAC;AAWN,eAAO,MAAM,SAAS,iBAuBrB,CAAC"}
|
package/dist/config/getConfig.js
CHANGED
@@ -9,17 +9,19 @@ const ensureEnvVariable = (envVar) => {
|
|
9
9
|
}
|
10
10
|
return process.env[envVar];
|
11
11
|
};
|
12
|
+
const POSSIBLE_VLAYER_ENVS = ["testnet", "dev"];
|
12
13
|
const ensureVlayerEnv = () => {
|
13
14
|
try {
|
14
15
|
if (!process.env.VLAYER_ENV) {
|
15
|
-
throw new Error(
|
16
|
+
throw new Error(`VLAYER_ENV is not set. Available options: ${POSSIBLE_VLAYER_ENVS.join(", ")}`);
|
16
17
|
}
|
17
|
-
if (!
|
18
|
-
throw new Error(`Invalid VLAYER_ENV: ${process.env.VLAYER_ENV}. Available options:
|
18
|
+
if (!POSSIBLE_VLAYER_ENVS.includes(process.env.VLAYER_ENV)) {
|
19
|
+
throw new Error(`Invalid VLAYER_ENV: ${process.env.VLAYER_ENV}. Available options: ${POSSIBLE_VLAYER_ENVS.join(", ")}`);
|
19
20
|
}
|
20
21
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
21
22
|
}
|
22
23
|
catch (e) {
|
24
|
+
console.error(e);
|
23
25
|
return "dev";
|
24
26
|
}
|
25
27
|
return process.env.VLAYER_ENV;
|
@@ -42,6 +44,9 @@ const envVars = [
|
|
42
44
|
];
|
43
45
|
export const getConfig = () => {
|
44
46
|
dotEnvFlowConfig();
|
47
|
+
const deployConfig = {
|
48
|
+
isTesting: true,
|
49
|
+
};
|
45
50
|
return envVars.reduce((config, envVar) => {
|
46
51
|
try {
|
47
52
|
return {
|
@@ -55,6 +60,6 @@ export const getConfig = () => {
|
|
55
60
|
}
|
56
61
|
throw e;
|
57
62
|
}
|
58
|
-
}, {});
|
63
|
+
}, { deployConfig });
|
59
64
|
};
|
60
65
|
//# sourceMappingURL=getConfig.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getConfig.js","sourceRoot":"","sources":["../../src/config/getConfig.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,
|
1
|
+
{"version":3,"file":"getConfig.js","sourceRoot":"","sources":["../../src/config/getConfig.ts"],"names":[],"mappings":"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"}
|
package/dist/config/types.d.ts
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
export type DeployConfig = {
|
2
|
+
isTesting: boolean;
|
3
|
+
};
|
1
4
|
export type EnvConfig = {
|
2
5
|
chainName: string;
|
3
6
|
proverUrl: string;
|
@@ -5,6 +8,7 @@ export type EnvConfig = {
|
|
5
8
|
l2JsonRpcUrl?: string;
|
6
9
|
privateKey: `0x${string}`;
|
7
10
|
token?: string;
|
11
|
+
deployConfig?: DeployConfig;
|
8
12
|
};
|
9
13
|
export type VlayerContextConfig = {
|
10
14
|
chainName: string;
|
@@ -13,5 +17,6 @@ export type VlayerContextConfig = {
|
|
13
17
|
wsProxyUrl?: string;
|
14
18
|
notaryUrl?: string;
|
15
19
|
privateKey?: `0x${string}`;
|
20
|
+
deployConfig?: DeployConfig;
|
16
21
|
};
|
17
22
|
//# sourceMappingURL=types.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAOF,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC"}
|
package/package.json
CHANGED
@@ -15,7 +15,7 @@
|
|
15
15
|
"types": "./dist/config/index.d.ts"
|
16
16
|
}
|
17
17
|
},
|
18
|
-
"version": "0.1.0-nightly-20250205-
|
18
|
+
"version": "0.1.0-nightly-20250205-99d0df9",
|
19
19
|
"scripts": {
|
20
20
|
"build": "bun tsc --project tsconfig.build.json && bun tsc-alias",
|
21
21
|
"test:unit": "vitest --run",
|