{"abi":[{"type":"constructor","inputs":[{"name":"hooks","type":"address","internalType":"contract IVerifierHooks"},{"name":"urls","type":"string[]","internalType":"string[]"},{"name":"signers","type":"address[]","internalType":"address[]"},{"name":"expSec","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"gatewayURLs","inputs":[],"outputs":[{"name":"","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"getExpSec","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getHooks","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IVerifierHooks"}],"stateMutability":"view"},{"type":"function","name":"getLatestContext","inputs":[],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getStorageValues","inputs":[{"name":"context","type":"bytes","internalType":"bytes"},{"name":"req","type":"tuple","internalType":"struct GatewayRequest","components":[{"name":"ops","type":"bytes","internalType":"bytes"}]},{"name":"proof","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes[]","internalType":"bytes[]"},{"name":"exitCode","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"init","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"hooks","type":"address","internalType":"contract IVerifierHooks"},{"name":"urls","type":"string[]","internalType":"string[]"},{"name":"signers","type":"address[]","internalType":"address[]"},{"name":"expSec","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialized","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isSigner","inputs":[{"name":"signer","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setExpSec","inputs":[{"name":"expSec","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setGatewayURLs","inputs":[{"name":"urls","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setHooks","inputs":[{"name":"hooks","type":"address","internalType":"contract IVerifierHooks"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSigner","inputs":[{"name":"signer","type":"address","internalType":"address"},{"name":"allow","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"TrustedVerifierChanged","inputs":[],"anonymous":false},{"type":"error","name":"ECDSAInvalidSignature","inputs":[]},{"type":"error","name":"ECDSAInvalidSignatureLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ECDSAInvalidSignatureS","inputs":[{"name":"s","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"LazyOwnableAlreadyInitialized","inputs":[]},{"type":"error","name":"OwnableInvalidOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"OwnableUnauthorizedAccount","inputs":[{"name":"account","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x608060405234801561000f575f80fd5b50604051611abd380380611abd83398101604081905261002e91610350565b61003b3385858585610044565b505050506105df565b61004d856100e1565b600180546001600160a01b0319166001600160a01b038616179055825161007b9060049060208601906101ab565b505f5b82518110156100d757600160025f85848151811061009e5761009e610488565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff191691151591909117905560010161007e565b5060035550505050565b6100e9610136565b15610107576040516319e1744160e21b815260040160405180910390fd5b6001600160a01b03811661012a575f805460ff60a01b1916600160a01b17905550565b6101338161015c565b50565b5f8054600160a01b900460ff168061015757505f546001600160a01b031615155b905090565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054828255905f5260205f209081019282156101ef579160200282015b828111156101ef57825182906101df9082610520565b50916020019190600101906101c9565b506101fb9291506101ff565b5090565b808211156101fb575f610212828261021b565b506001016101ff565b5080546102279061049c565b5f825580601f10610236575050565b601f0160209004905f5260205f209081019061013391905b808211156101fb575f815560010161024e565b6001600160a01b0381168114610133575f80fd5b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156102b1576102b1610275565b604052919050565b5f6001600160401b038211156102d1576102d1610275565b5060051b60200190565b5f82601f8301126102ea575f80fd5b815160206102ff6102fa836102b9565b610289565b8083825260208201915060208460051b870101935086841115610320575f80fd5b602086015b8481101561034557805161033881610261565b8352918301918301610325565b509695505050505050565b5f805f8060808587031215610363575f80fd5b845161036e81610261565b602086810151919550906001600160401b038082111561038c575f80fd5b818801915088601f83011261039f575f80fd5b81516103ad6102fa826102b9565b81815260059190911b8301840190848101908b8311156103cb575f80fd5b8585015b83811015610450578051858111156103e5575f80fd5b8601603f81018e136103f5575f80fd5b878101518681111561040957610409610275565b61041b601f8201601f19168a01610289565b8181528f604083850101111561042f575f80fd5b81604084018b83015e5f9181018a01919091528452509186019186016103cf565b5060408b01519098509450505080831115610469575f80fd5b5050610477878288016102db565b606096909601519497939650505050565b634e487b7160e01b5f52603260045260245ffd5b600181811c908216806104b057607f821691505b6020821081036104ce57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561051b57805f5260205f20601f840160051c810160208510156104f95750805b601f840160051c820191505b81811015610518575f8155600101610505565b50505b505050565b81516001600160401b0381111561053957610539610275565b61054d81610547845461049c565b846104d4565b602080601f831160018114610580575f84156105695750858301515b5f19600386901b1c1916600185901b1785556105d7565b5f85815260208120601f198616915b828110156105ae5788860151825594840194600190910190840161058f565b50858210156105cb57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b6114d1806105ec5f395ff3fe608060405234801561000f575f80fd5b50600436106100c3575f3560e01c8063158ef93e146100c7578063225dc5b6146100e457806331cb6105146100f95780635cd2525e1461010c578063715018a6146101265780637df73e271461012e578063858259b61461015957806387c484fe1461016a5780638da5cb5b1461019c5780638e5ea8df146101a4578063b50f2fbc146101b7578063b6f8f15d146101cc578063e3d1666e146101df578063f2fde38b14610200578063fb63daa114610213575b5f80fd5b6100cf610226565b60405190151581526020015b60405180910390f35b6100f76100f2366004610ae8565b61024c565b005b6100f7610107366004610b13565b610271565b6001546001600160a01b03165b6040516100db9190610b4e565b6100f76102b3565b6100cf61013c366004610b62565b6001600160a01b03165f9081526002602052604090205460ff1690565b6003546040519081526020016100db565b61018f6040805142602082015260609101604051602081830303815290604052905090565b6040516100db9190610bb2565b6101196102d8565b6100f76101b2366004610d4b565b6102e6565b6101bf61031a565b6040516100db9190610d84565b6100f76101da366004610de6565b6103ee565b6101f26101ed366004610ee9565b610402565b6040516100db929190610fac565b6100f761020e366004610b62565b610651565b6100f7610221366004610b62565b61068e565b5f8054600160a01b900460ff168061024757505f546001600160a01b031615155b905090565b6102546106c9565b60038190556040515f8051602061147c833981519152905f90a150565b6102796106c9565b6001600160a01b0382165f90815260026020526040808220805460ff1916841515179055515f8051602061147c8339815191529190a15050565b6102bb6106c9565b5f805460ff60a01b1916600160a01b1781556102d690610710565b565b5f546001600160a01b031690565b6102ee6106c9565b8051610301906004906020840190610a32565b506040515f8051602061147c833981519152905f90a150565b60606004805480602002602001604051908101604052809291908181526020015f905b828210156103e5578382905f5260205f2001805461035a9061101a565b80601f01602080910402602001604051908101604052809291908181526020018280546103869061101a565b80156103d15780601f106103a8576101008083540402835291602001916103d1565b820191905f5260205f20905b8154815290600101906020018083116103b457829003601f168201915b50505050508152602001906001019061033d565b50505050905090565b6103fb858585858561075f565b5050505050565b60605f808580602001905181019061041a9190611052565b90505f84806020019051810190610431919061114b565b6020818101516040808401519051601960f81b938101939093525f6022840181905260c09290921b6001600160c01b0319166036840152603e830152919250605e016040516020818303038152906040528051906020012090505f61049982845f01516107fc565b6001600160a01b0381165f9081526002602052604090205490915060ff166104fa5760405162461bcd60e51b815260206004820152600f60248201526e2a393ab9ba32b21d1039b4b3b732b960891b60448201526064015b60405180910390fd5b5f8484602001516001600160401b03161161052c576020840151610527906001600160401b031686611213565b610545565b8484602001516001600160401b03166105459190611213565b905060035481111561058c5760405162461bcd60e51b815260206004820152601060248201526f151c9d5cdd19590e88195e1c1a5c995960821b60448201526064016104f1565b6040805160a0810182525f815285820151602082015260608087015182840152608080880151918301919091526001546001600160a01b03169082015290516324a8807560e21b815273__$011ed85421b307e5206de383929e31be73$__916392a201d4916105ff918d91600401611232565b5f60405180830381865af4158015610619573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106409190810190611303565b965096505050505050935093915050565b6106596106c9565b6001600160a01b038116610682575f604051631e4fbdf760e01b81526004016104f19190610b4e565b61068b81610710565b50565b6106966106c9565b600180546001600160a01b0319166001600160a01b0383161790556040515f8051602061147c833981519152905f90a150565b5f54600160a01b900460ff16806106f05750336106e46102d8565b6001600160a01b031614155b156102d6573360405163118cdaa760e01b81526004016104f19190610b4e565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61076885610826565b600180546001600160a01b0319166001600160a01b0386161790558251610796906004906020860190610a32565b505f5b82518110156107f257600160025f8584815181106107b9576107b961134b565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610799565b5060035550505050565b5f805f8061080a868661086f565b92509250925061081a82826108b8565b50909150505b92915050565b61082e610226565b1561084c576040516319e1744160e21b815260040160405180910390fd5b6001600160a01b038116610682575f805460ff60a01b1916600160a01b17905550565b5f805f83516041036108a6576020840151604085015160608601515f1a61089888828585610974565b9550955095505050506108b1565b505081515f91506002905b9250925092565b5f8260038111156108cb576108cb61135f565b036108d4575050565b60018260038111156108e8576108e861135f565b036109065760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561091a5761091a61135f565b0361093b5760405163fce698f760e01b8152600481018290526024016104f1565b600382600381111561094f5761094f61135f565b03610970576040516335e2f38360e21b8152600481018290526024016104f1565b5050565b5f80806fa2a8918ca85bafe22016d0b997e4df60600160ff1b038411156109a357505f91506003905082610a28565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa1580156109f4573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116610a1f57505f925060019150829050610a28565b92505f91508190505b9450945094915050565b828054828255905f5260205f20908101928215610a76579160200282015b82811115610a765782518290610a6690826113bc565b5091602001919060010190610a50565b50610a82929150610a86565b5090565b80821115610a82575f610a998282610aa2565b50600101610a86565b508054610aae9061101a565b5f825580601f10610abd575050565b601f0160209004905f5260205f209081019061068b91905b80821115610a82575f8155600101610ad5565b5f60208284031215610af8575f80fd5b5035919050565b6001600160a01b038116811461068b575f80fd5b5f8060408385031215610b24575f80fd5b8235610b2f81610aff565b915060208301358015158114610b43575f80fd5b809150509250929050565b6001600160a01b0391909116815260200190565b5f60208284031215610b72575f80fd5b8135610b7d81610aff565b9392505050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610b7d6020830184610b84565b634e487b7160e01b5f52604160045260245ffd5b60405160a081016001600160401b0381118282101715610bfa57610bfa610bc4565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610c2857610c28610bc4565b604052919050565b5f6001600160401b03821115610c4857610c48610bc4565b5060051b60200190565b5f6001600160401b03821115610c6a57610c6a610bc4565b50601f01601f191660200190565b5f610c8a610c8584610c52565b610c00565b9050828152838383011115610c9d575f80fd5b828260208301375f602084830101529392505050565b5f82601f830112610cc2575f80fd5b81356020610cd2610c8583610c30565b82815260059290921b84018101918181019086841115610cf0575f80fd5b8286015b84811015610d405780356001600160401b03811115610d11575f80fd5b8701603f81018913610d21575f80fd5b610d32898683013560408401610c78565b845250918301918301610cf4565b509695505050505050565b5f60208284031215610d5b575f80fd5b81356001600160401b03811115610d70575f80fd5b610d7c84828501610cb3565b949350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b82811015610dd957603f19888603018452610dc7858351610b84565b94509285019290850190600101610dab565b5092979650505050505050565b5f805f805f60a08688031215610dfa575f80fd5b8535610e0581610aff565b9450602086810135610e1681610aff565b945060408701356001600160401b0380821115610e31575f80fd5b610e3d8a838b01610cb3565b95506060890135915080821115610e52575f80fd5b508701601f81018913610e63575f80fd5b8035610e71610c8582610c30565b81815260059190911b8201830190838101908b831115610e8f575f80fd5b928401925b82841015610eb6578335610ea781610aff565b82529284019290840190610e94565b989b979a509598608001359695505050505050565b5f82601f830112610eda575f80fd5b610b7d83833560208501610c78565b5f805f60608486031215610efb575f80fd5b83356001600160401b0380821115610f11575f80fd5b610f1d87838801610ecb565b94506020860135915080821115610f32575f80fd5b9085019060208288031215610f45575f80fd5b604051602081018181108382111715610f6057610f60610bc4565b604052823582811115610f71575f80fd5b610f7d89828601610ecb565b82525093506040860135915080821115610f95575f80fd5b50610fa286828701610ecb565b9150509250925092565b5f604082016040835280855180835260608501915060608160051b860101925060208088015f5b8381101561100157605f19888703018552610fef868351610b84565b95509382019390820190600101610fd3565b50505050508091505060ff831660208301529392505050565b600181811c9082168061102e57607f821691505b60208210810361104c57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215611062575f80fd5b5051919050565b5f82601f830112611078575f80fd5b8151611086610c8582610c52565b81815284602083860101111561109a575f80fd5b8160208501602083015e5f918101602001919091529392505050565b80516001600160401b03811681146110cc575f80fd5b919050565b5f82601f8301126110e0575f80fd5b815160206110f0610c8583610c30565b82815260059290921b8401810191818101908684111561110e575f80fd5b8286015b84811015610d405780516001600160401b0381111561112f575f80fd5b61113d8986838b0101611069565b845250918301918301611112565b5f6020828403121561115b575f80fd5b81516001600160401b0380821115611171575f80fd5b9083019060a08286031215611184575f80fd5b61118c610bd8565b82518281111561119a575f80fd5b6111a687828601611069565b8252506111b5602084016110b6565b6020820152604083015160408201526060830151828111156111d5575f80fd5b6111e1878286016110d1565b6060830152506080830151828111156111f8575f80fd5b61120487828601611069565b60808301525095945050505050565b8181038181111561082057634e487b7160e01b5f52601160045260245ffd5b604081525f8351602080604085015261124e6060850183610b84565b91508382038185015260a08201855183528186015182840152604086015160a0604085015281815180845260c08601915060c08160051b870101935084830192505f5b818110156112bf5760bf198786030183526112ad858551610b84565b94509285019291850191600101611291565b505050506060860151915082810360608401526112dc8183610b84565b91505060808501516112f960808401826001600160a01b03169052565b5095945050505050565b5f8060408385031215611314575f80fd5b82516001600160401b03811115611329575f80fd5b611335858286016110d1565b925050602083015160ff81168114610b43575f80fd5b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b601f8211156113b757805f5260205f20601f840160051c810160208510156113985750805b601f840160051c820191505b818110156103fb575f81556001016113a4565b505050565b81516001600160401b038111156113d5576113d5610bc4565b6113e9816113e3845461101a565b84611373565b602080601f83116001811461141c575f84156114055750858301515b5f19600386901b1c1916600185901b178555611473565b5f85815260208120601f198616915b8281101561144a5788860151825594840194600190910190840161142b565b508582101561146757878501515f19600388901b60f8161c191681555b505060018460011b0185555b50505050505056fe965b3677af7470fb2668642e66c94355372345a2059f614eaa78acd69ed3fe08a26469706673582212201afe15db30034d36e884e4944423197e81497a5198dd60f85c74fb13af7267f664736f6c63430008190033","sourceMap":"138:261:38:-:0;;;192:205;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;338:52;349:10;361:5;368:4;374:7;383:6;338:10;:52::i;:::-;192:205;;;;138:261;;820:392:37;1007:24;1024:6;1007:16;:24::i;:::-;1041:6;:14;;-1:-1:-1;;;;;;1041:14:37;-1:-1:-1;;;;;1041:14:37;;;;;1065:12;;;;:5;;:12;;;;;:::i;:::-;;1092:9;1087:93;1107:7;:14;1103:1;:18;1087:93;;;1165:4;1142:8;:20;1151:7;1159:1;1151:10;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;1142:20:37;;;;;;;;;;;-1:-1:-1;1142:20:37;:27;;-1:-1:-1;;1142:27:37;;;;;;;;;;-1:-1:-1;1123:3:37;1087:93;;;-1:-1:-1;1189:7:37;:16;-1:-1:-1;;;;820:392:37:o;547:474:36:-;620:13;:11;:13::i;:::-;616:82;;;656:31;;-1:-1:-1;;;656:31:36;;;;;;;;;;;616:82;-1:-1:-1;;;;;711:26:36;;707:308;;925:9;:16;;-1:-1:-1;;;;925:16:36;-1:-1:-1;;;925:16:36;;;547:474;:::o;707:308::-;972:32;991:12;972:18;:32::i;:::-;547:474;:::o;434:107::-;478:4;501:9;;-1:-1:-1;;;501:9:36;;;;;:33;;-1:-1:-1;532:1:36;514:6;-1:-1:-1;;;;;514:6:36;:20;;501:33;494:40;;434:107;:::o;2576:195::-;2649:16;2668:6;;-1:-1:-1;;;;;2684:17:36;;;-1:-1:-1;;;;;;2684:17:36;;;;;;2716:48;;2668:6;;;;;;;2716:48;;2649:16;2716:48;2639:132;2576:195;:::o;138:261:38:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;138:261:38;;;-1:-1:-1;138:261:38;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:147:65;-1:-1:-1;;;;;105:31:65;;95:42;;85:70;;151:1;148;141:12;166:127;227:10;222:3;218:20;215:1;208:31;258:4;255:1;248:15;282:4;279:1;272:15;298:275;369:2;363:9;434:2;415:13;;-1:-1:-1;;411:27:65;399:40;;-1:-1:-1;;;;;454:34:65;;490:22;;;451:62;448:88;;;516:18;;:::i;:::-;552:2;545:22;298:275;;-1:-1:-1;298:275:65:o;578:182::-;637:4;-1:-1:-1;;;;;659:30:65;;656:56;;;692:18;;:::i;:::-;-1:-1:-1;737:1:65;733:14;749:4;729:25;;578:182::o;765:755::-;830:5;883:3;876:4;868:6;864:17;860:27;850:55;;901:1;898;891:12;850:55;930:6;924:13;956:4;980:59;996:42;1035:2;996:42;:::i;:::-;980:59;:::i;:::-;1061:3;1085:2;1080:3;1073:15;1113:4;1108:3;1104:14;1097:21;;1170:4;1164:2;1161:1;1157:10;1149:6;1145:23;1141:34;1127:48;;1198:3;1190:6;1187:15;1184:35;;;1215:1;1212;1205:12;1184:35;1251:4;1243:6;1239:17;1265:226;1281:6;1276:3;1273:15;1265:226;;;1354:3;1348:10;1371:47;1412:5;1371:47;:::i;:::-;1431:18;;1469:12;;;;1298;;1265:226;;;-1:-1:-1;1509:5:65;765:755;-1:-1:-1;;;;;;765:755:65:o;1525:1931::-;1705:6;1713;1721;1729;1782:3;1770:9;1761:7;1757:23;1753:33;1750:53;;;1799:1;1796;1789:12;1750:53;1831:9;1825:16;1850:47;1891:5;1850:47;:::i;:::-;1940:2;1971:18;;;1965:25;1916:5;;-1:-1:-1;1940:2:65;-1:-1:-1;;;;;2039:14:65;;;2036:34;;;2066:1;2063;2056:12;2036:34;2104:6;2093:9;2089:22;2079:32;;2149:7;2142:4;2138:2;2134:13;2130:27;2120:55;;2171:1;2168;2161:12;2120:55;2200:2;2194:9;2223:59;2239:42;2278:2;2239:42;:::i;2223:59::-;2316:15;;;2398:1;2394:10;;;;2386:19;;2382:28;;;2347:12;;;;2422:19;;;2419:39;;;2454:1;2451;2444:12;2419:39;2486:2;2482;2478:11;2498:696;2514:6;2509:3;2506:15;2498:696;;;2593:3;2587:10;2629:2;2616:11;2613:19;2610:39;;;2645:1;2642;2635:12;2610:39;2672:20;;2727:2;2719:11;;2715:25;-1:-1:-1;2705:53:65;;2754:1;2751;2744:12;2705:53;2795:2;2791;2787:11;2781:18;2822:2;2818;2815:10;2812:36;;;2828:18;;:::i;:::-;2874:53;2917:2;2898:13;;-1:-1:-1;;2894:27:65;2890:36;;2874:53;:::i;:::-;2954:2;2947:5;2940:17;2998:7;2993:2;2988;2984;2980:11;2976:20;2973:33;2970:53;;;3019:1;3016;3009:12;2970:53;3071:2;3066;3062;3058:11;3053:2;3046:5;3042:14;3036:38;3119:1;3098:14;;;3094:23;;3087:34;;;;3134:18;;-1:-1:-1;3172:12:65;;;;2531;;2498:696;;;-1:-1:-1;3264:2:65;3249:18;;3243:25;3213:5;;-1:-1:-1;3243:25:65;-1:-1:-1;;;3280:16:65;;;3277:36;;;3309:1;3306;3299:12;3277:36;;;3332:74;3398:7;3387:8;3376:9;3372:24;3332:74;:::i;:::-;3446:2;3431:18;;;;3425:25;1525:1931;;;;-1:-1:-1;;;;1525:1931:65:o;3461:127::-;3522:10;3517:3;3513:20;3510:1;3503:31;3553:4;3550:1;3543:15;3577:4;3574:1;3567:15;3593:380;3672:1;3668:12;;;;3715;;;3736:61;;3790:4;3782:6;3778:17;3768:27;;3736:61;3843:2;3835:6;3832:14;3812:18;3809:38;3806:161;;3889:10;3884:3;3880:20;3877:1;3870:31;3924:4;3921:1;3914:15;3952:4;3949:1;3942:15;3806:161;;3593:380;;;:::o;4104:518::-;4206:2;4201:3;4198:11;4195:421;;;4242:5;4239:1;4232:16;4286:4;4283:1;4273:18;4356:2;4344:10;4340:19;4337:1;4333:27;4327:4;4323:38;4392:4;4380:10;4377:20;4374:47;;;-1:-1:-1;4415:4:65;4374:47;4470:2;4465:3;4461:12;4458:1;4454:20;4448:4;4444:31;4434:41;;4525:81;4543:2;4536:5;4533:13;4525:81;;;4602:1;4588:16;;4569:1;4558:13;4525:81;;;4529:3;;4195:421;4104:518;;;:::o;4798:1345::-;4918:10;;-1:-1:-1;;;;;4940:30:65;;4937:56;;;4973:18;;:::i;:::-;5002:97;5092:6;5052:38;5084:4;5078:11;5052:38;:::i;:::-;5046:4;5002:97;:::i;:::-;5154:4;;5211:2;5200:14;;5228:1;5223:663;;;;5930:1;5947:6;5944:89;;;-1:-1:-1;5999:19:65;;;5993:26;5944:89;-1:-1:-1;;4755:1:65;4751:11;;;4747:24;4743:29;4733:40;4779:1;4775:11;;;4730:57;6046:81;;5193:944;;5223:663;4051:1;4044:14;;;4088:4;4075:18;;-1:-1:-1;;5259:20:65;;;5377:236;5391:7;5388:1;5385:14;5377:236;;;5480:19;;;5474:26;5459:42;;5572:27;;;;5540:1;5528:14;;;;5407:19;;5377:236;;;5381:3;5641:6;5632:7;5629:19;5626:201;;;5702:19;;;5696:26;-1:-1:-1;;5785:1:65;5781:14;;;5797:3;5777:24;5773:37;5769:42;5754:58;5739:74;;5626:201;;;5873:1;5864:6;5861:1;5857:14;5853:22;5847:4;5840:36;5193:944;;;;;4798:1345;;:::o;:::-;138:261:38;;;;;;","linkReferences":{"contracts/GatewayVM.sol":{"GatewayVM":[{"start":3011,"length":20}]}}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b50600436106100c3575f3560e01c8063158ef93e146100c7578063225dc5b6146100e457806331cb6105146100f95780635cd2525e1461010c578063715018a6146101265780637df73e271461012e578063858259b61461015957806387c484fe1461016a5780638da5cb5b1461019c5780638e5ea8df146101a4578063b50f2fbc146101b7578063b6f8f15d146101cc578063e3d1666e146101df578063f2fde38b14610200578063fb63daa114610213575b5f80fd5b6100cf610226565b60405190151581526020015b60405180910390f35b6100f76100f2366004610ae8565b61024c565b005b6100f7610107366004610b13565b610271565b6001546001600160a01b03165b6040516100db9190610b4e565b6100f76102b3565b6100cf61013c366004610b62565b6001600160a01b03165f9081526002602052604090205460ff1690565b6003546040519081526020016100db565b61018f6040805142602082015260609101604051602081830303815290604052905090565b6040516100db9190610bb2565b6101196102d8565b6100f76101b2366004610d4b565b6102e6565b6101bf61031a565b6040516100db9190610d84565b6100f76101da366004610de6565b6103ee565b6101f26101ed366004610ee9565b610402565b6040516100db929190610fac565b6100f761020e366004610b62565b610651565b6100f7610221366004610b62565b61068e565b5f8054600160a01b900460ff168061024757505f546001600160a01b031615155b905090565b6102546106c9565b60038190556040515f8051602061147c833981519152905f90a150565b6102796106c9565b6001600160a01b0382165f90815260026020526040808220805460ff1916841515179055515f8051602061147c8339815191529190a15050565b6102bb6106c9565b5f805460ff60a01b1916600160a01b1781556102d690610710565b565b5f546001600160a01b031690565b6102ee6106c9565b8051610301906004906020840190610a32565b506040515f8051602061147c833981519152905f90a150565b60606004805480602002602001604051908101604052809291908181526020015f905b828210156103e5578382905f5260205f2001805461035a9061101a565b80601f01602080910402602001604051908101604052809291908181526020018280546103869061101a565b80156103d15780601f106103a8576101008083540402835291602001916103d1565b820191905f5260205f20905b8154815290600101906020018083116103b457829003601f168201915b50505050508152602001906001019061033d565b50505050905090565b6103fb858585858561075f565b5050505050565b60605f808580602001905181019061041a9190611052565b90505f84806020019051810190610431919061114b565b6020818101516040808401519051601960f81b938101939093525f6022840181905260c09290921b6001600160c01b0319166036840152603e830152919250605e016040516020818303038152906040528051906020012090505f61049982845f01516107fc565b6001600160a01b0381165f9081526002602052604090205490915060ff166104fa5760405162461bcd60e51b815260206004820152600f60248201526e2a393ab9ba32b21d1039b4b3b732b960891b60448201526064015b60405180910390fd5b5f8484602001516001600160401b03161161052c576020840151610527906001600160401b031686611213565b610545565b8484602001516001600160401b03166105459190611213565b905060035481111561058c5760405162461bcd60e51b815260206004820152601060248201526f151c9d5cdd19590e88195e1c1a5c995960821b60448201526064016104f1565b6040805160a0810182525f815285820151602082015260608087015182840152608080880151918301919091526001546001600160a01b03169082015290516324a8807560e21b815273__$011ed85421b307e5206de383929e31be73$__916392a201d4916105ff918d91600401611232565b5f60405180830381865af4158015610619573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106409190810190611303565b965096505050505050935093915050565b6106596106c9565b6001600160a01b038116610682575f604051631e4fbdf760e01b81526004016104f19190610b4e565b61068b81610710565b50565b6106966106c9565b600180546001600160a01b0319166001600160a01b0383161790556040515f8051602061147c833981519152905f90a150565b5f54600160a01b900460ff16806106f05750336106e46102d8565b6001600160a01b031614155b156102d6573360405163118cdaa760e01b81526004016104f19190610b4e565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61076885610826565b600180546001600160a01b0319166001600160a01b0386161790558251610796906004906020860190610a32565b505f5b82518110156107f257600160025f8584815181106107b9576107b961134b565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610799565b5060035550505050565b5f805f8061080a868661086f565b92509250925061081a82826108b8565b50909150505b92915050565b61082e610226565b1561084c576040516319e1744160e21b815260040160405180910390fd5b6001600160a01b038116610682575f805460ff60a01b1916600160a01b17905550565b5f805f83516041036108a6576020840151604085015160608601515f1a61089888828585610974565b9550955095505050506108b1565b505081515f91506002905b9250925092565b5f8260038111156108cb576108cb61135f565b036108d4575050565b60018260038111156108e8576108e861135f565b036109065760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561091a5761091a61135f565b0361093b5760405163fce698f760e01b8152600481018290526024016104f1565b600382600381111561094f5761094f61135f565b03610970576040516335e2f38360e21b8152600481018290526024016104f1565b5050565b5f80806fa2a8918ca85bafe22016d0b997e4df60600160ff1b038411156109a357505f91506003905082610a28565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa1580156109f4573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b038116610a1f57505f925060019150829050610a28565b92505f91508190505b9450945094915050565b828054828255905f5260205f20908101928215610a76579160200282015b82811115610a765782518290610a6690826113bc565b5091602001919060010190610a50565b50610a82929150610a86565b5090565b80821115610a82575f610a998282610aa2565b50600101610a86565b508054610aae9061101a565b5f825580601f10610abd575050565b601f0160209004905f5260205f209081019061068b91905b80821115610a82575f8155600101610ad5565b5f60208284031215610af8575f80fd5b5035919050565b6001600160a01b038116811461068b575f80fd5b5f8060408385031215610b24575f80fd5b8235610b2f81610aff565b915060208301358015158114610b43575f80fd5b809150509250929050565b6001600160a01b0391909116815260200190565b5f60208284031215610b72575f80fd5b8135610b7d81610aff565b9392505050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610b7d6020830184610b84565b634e487b7160e01b5f52604160045260245ffd5b60405160a081016001600160401b0381118282101715610bfa57610bfa610bc4565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610c2857610c28610bc4565b604052919050565b5f6001600160401b03821115610c4857610c48610bc4565b5060051b60200190565b5f6001600160401b03821115610c6a57610c6a610bc4565b50601f01601f191660200190565b5f610c8a610c8584610c52565b610c00565b9050828152838383011115610c9d575f80fd5b828260208301375f602084830101529392505050565b5f82601f830112610cc2575f80fd5b81356020610cd2610c8583610c30565b82815260059290921b84018101918181019086841115610cf0575f80fd5b8286015b84811015610d405780356001600160401b03811115610d11575f80fd5b8701603f81018913610d21575f80fd5b610d32898683013560408401610c78565b845250918301918301610cf4565b509695505050505050565b5f60208284031215610d5b575f80fd5b81356001600160401b03811115610d70575f80fd5b610d7c84828501610cb3565b949350505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b82811015610dd957603f19888603018452610dc7858351610b84565b94509285019290850190600101610dab565b5092979650505050505050565b5f805f805f60a08688031215610dfa575f80fd5b8535610e0581610aff565b9450602086810135610e1681610aff565b945060408701356001600160401b0380821115610e31575f80fd5b610e3d8a838b01610cb3565b95506060890135915080821115610e52575f80fd5b508701601f81018913610e63575f80fd5b8035610e71610c8582610c30565b81815260059190911b8201830190838101908b831115610e8f575f80fd5b928401925b82841015610eb6578335610ea781610aff565b82529284019290840190610e94565b989b979a509598608001359695505050505050565b5f82601f830112610eda575f80fd5b610b7d83833560208501610c78565b5f805f60608486031215610efb575f80fd5b83356001600160401b0380821115610f11575f80fd5b610f1d87838801610ecb565b94506020860135915080821115610f32575f80fd5b9085019060208288031215610f45575f80fd5b604051602081018181108382111715610f6057610f60610bc4565b604052823582811115610f71575f80fd5b610f7d89828601610ecb565b82525093506040860135915080821115610f95575f80fd5b50610fa286828701610ecb565b9150509250925092565b5f604082016040835280855180835260608501915060608160051b860101925060208088015f5b8381101561100157605f19888703018552610fef868351610b84565b95509382019390820190600101610fd3565b50505050508091505060ff831660208301529392505050565b600181811c9082168061102e57607f821691505b60208210810361104c57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215611062575f80fd5b5051919050565b5f82601f830112611078575f80fd5b8151611086610c8582610c52565b81815284602083860101111561109a575f80fd5b8160208501602083015e5f918101602001919091529392505050565b80516001600160401b03811681146110cc575f80fd5b919050565b5f82601f8301126110e0575f80fd5b815160206110f0610c8583610c30565b82815260059290921b8401810191818101908684111561110e575f80fd5b8286015b84811015610d405780516001600160401b0381111561112f575f80fd5b61113d8986838b0101611069565b845250918301918301611112565b5f6020828403121561115b575f80fd5b81516001600160401b0380821115611171575f80fd5b9083019060a08286031215611184575f80fd5b61118c610bd8565b82518281111561119a575f80fd5b6111a687828601611069565b8252506111b5602084016110b6565b6020820152604083015160408201526060830151828111156111d5575f80fd5b6111e1878286016110d1565b6060830152506080830151828111156111f8575f80fd5b61120487828601611069565b60808301525095945050505050565b8181038181111561082057634e487b7160e01b5f52601160045260245ffd5b604081525f8351602080604085015261124e6060850183610b84565b91508382038185015260a08201855183528186015182840152604086015160a0604085015281815180845260c08601915060c08160051b870101935084830192505f5b818110156112bf5760bf198786030183526112ad858551610b84565b94509285019291850191600101611291565b505050506060860151915082810360608401526112dc8183610b84565b91505060808501516112f960808401826001600160a01b03169052565b5095945050505050565b5f8060408385031215611314575f80fd5b82516001600160401b03811115611329575f80fd5b611335858286016110d1565b925050602083015160ff81168114610b43575f80fd5b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b601f8211156113b757805f5260205f20601f840160051c810160208510156113985750805b601f840160051c820191505b818110156103fb575f81556001016113a4565b505050565b81516001600160401b038111156113d5576113d5610bc4565b6113e9816113e3845461101a565b84611373565b602080601f83116001811461141c575f84156114055750858301515b5f19600386901b1c1916600185901b178555611473565b5f85815260208120601f198616915b8281101561144a5788860151825594840194600190910190840161142b565b508582101561146757878501515f19600388901b60f8161c191681555b505060018460011b0185555b50505050505056fe965b3677af7470fb2668642e66c94355372345a2059f614eaa78acd69ed3fe08a26469706673582212201afe15db30034d36e884e4944423197e81497a5198dd60f85c74fb13af7267f664736f6c63430008190033","sourceMap":"138:261:38:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;434:107:36;;;:::i;:::-;;;179:14:65;;172:22;154:41;;142:2;127:18;434:107:36;;;;;;;;1786:126:37;;;;;;:::i;:::-;;:::i;:::-;;1918:146;;;;;;:::i;:::-;;:::i;1308:89::-;1384:6;;-1:-1:-1;;;;;1384:6:37;1308:89;;;;;;;:::i;1923:127:36:-;;;:::i;1403:103:37:-;;;;;;:::i;:::-;-1:-1:-1;;;;;1483:16:37;1460:4;1483:16;;;:8;:16;;;;;;;;;1403:103;1218:84;1288:7;;1218:84;;1702:25:65;;;1690:2;1675:18;1218:84:37;1556:177:65;2168:116:37;;2250:27;;;2261:15;2250:27;;;1702:25:65;2219:12:37;;1675:18:65;2250:27:37;;;;;;;;;;;;2243:34;;2168:116;;;;;;;;;:::i;1247:85:36:-;;;:::i;1512:133:37:-;;;;;;:::i;:::-;;:::i;2070:92::-;;;:::i;:::-;;;;;;;:::i;578:236::-;;;;;;:::i;:::-;;:::i;2445:993::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;2199:223:36:-;;;;;;:::i;:::-;;:::i;1651:129:37:-;;;;;;:::i;:::-;;:::i;434:107:36:-;478:4;501:9;;-1:-1:-1;;;501:9:36;;;;;:33;;-1:-1:-1;532:1:36;514:6;-1:-1:-1;;;;;514:6:36;:20;;501:33;494:40;;434:107;:::o;1786:126:37:-;1140:13:36;:11;:13::i;:::-;1850:7:37::1;:16:::0;;;1881:24:::1;::::0;-1:-1:-1;;;;;;;;;;;1881:24:37;;;::::1;1786:126:::0;:::o;1918:146::-;1140:13:36;:11;:13::i;:::-;-1:-1:-1;;;;;1994:16:37;::::1;;::::0;;;:8:::1;:16;::::0;;;;;:24;;-1:-1:-1;;1994:24:37::1;::::0;::::1;;;::::0;;2033;-1:-1:-1;;;;;;;;;;;2033:24:37;1994:16;2033:24:::1;1918:146:::0;;:::o;1923:127:36:-;1140:13;:11;:13::i;:::-;1987:9:::1;:16:::0;;-1:-1:-1;;;;1987:16:36::1;-1:-1:-1::0;;;1987:16:36::1;::::0;;2013:30:::1;::::0;:18:::1;:30::i;:::-;1923:127::o:0;1247:85::-;1293:7;1319:6;-1:-1:-1;;;;;1319:6:36;;1247:85::o;1512:133:37:-;1140:13:36;:11;:13::i;:::-;1587:12:37;;::::1;::::0;:5:::1;::::0;:12:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;1614:24:37::1;::::0;-1:-1:-1;;;;;;;;;;;1614:24:37;;;::::1;1512:133:::0;:::o;2070:92::-;2116:15;2150:5;2143:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2070:92;:::o;578:236::-;759:48;770:6;778:5;785:4;791:7;800:6;759:10;:48::i;:::-;578:236;;;;;:::o;2445:993::-;2593:14;2609;2635:9;2658:7;2647:30;;;;;;;;;;;;:::i;:::-;2635:42;;2687:21;2722:5;2711:33;;;;;;;;;;;;:::i;:::-;2973:10;;;;;3001:11;;;;;2851:175;;-1:-1:-1;;;2851:175:37;;;13571:25:65;;;;-1:-1:-1;13612:11:65;;;13605:66;;;13735:3;13705:16;;;;-1:-1:-1;;;;;;13701:47:65;13687:12;;;13680:69;13765:12;;;13758:28;2973:10:37;;-1:-1:-1;13802:12:65;;2851:175:37;;;;;;;;;;;;2769:267;;;;;;2754:282;;3046:14;3063:32;3077:4;3083:1;:11;;;3063:13;:32::i;:::-;-1:-1:-1;;;;;3113:16:37;;;;;;:8;:16;;;;;;3046:49;;-1:-1:-1;3113:16:37;;3105:44;;;;-1:-1:-1;;;3105:44:37;;14027:2:65;3105:44:37;;;14009:21:65;14066:2;14046:18;;;14039:30;-1:-1:-1;;;14085:18:65;;;14078:45;14140:18;;3105:44:37;;;;;;;;;3159:10;3185:1;3172;:10;;;-1:-1:-1;;;;;3172:14:37;;:48;;3210:10;;;;3206:14;;-1:-1:-1;;;;;3206:14:37;:1;:14;:::i;:::-;3172:48;;;3202:1;3189;:10;;;-1:-1:-1;;;;;3189:14:37;;;;;:::i;:::-;3159:61;;3244:7;;3238:2;:13;;3230:42;;;;-1:-1:-1;;;3230:42:37;;14601:2:65;3230:42:37;;;14583:21:65;14640:2;14620:18;;;14613:30;-1:-1:-1;;;14659:18:65;;;14652:46;14715:18;;3230:42:37;14399:340:65;3230:42:37;3361:56;;;;;;;;-1:-1:-1;3361:56:37;;3378:11;;;;3361:56;;;;3391:8;;;;;3361:56;;;;3401:7;;;;;3361:56;;;;;;;3410:6;;-1:-1:-1;;;;;3410:6:37;3361:56;;;;3301:130;;-1:-1:-1;;;3301:130:37;;:9;;:21;;:130;;3340:3;;3301:130;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3301:130:37;;;;;;;;;;;;:::i;:::-;3282:149;;;;;;;;;2445:993;;;;;;:::o;2199:223:36:-;1140:13;:11;:13::i;:::-;-1:-1:-1;;;;;2283:22:36;::::1;2279:99;;2364:1;2328:39;;-1:-1:-1::0;;;2328:39:36::1;;;;;;;;:::i;2279:99::-;2387:28;2406:8;2387:18;:28::i;:::-;2199:223:::0;:::o;1651:129:37:-;1140:13:36;:11;:13::i;:::-;1720:6:37::1;:14:::0;;-1:-1:-1;;;;;;1720:14:37::1;-1:-1:-1::0;;;;;1720:14:37;::::1;;::::0;;1749:24:::1;::::0;-1:-1:-1;;;;;;;;;;;1749:24:37;-1:-1:-1;;1749:24:37::1;1651:129:::0;:::o;1405:183:36:-;1464:9;;-1:-1:-1;;;1464:9:36;;;;;:36;;-1:-1:-1;735:10:50;1477:7:36;:5;:7::i;:::-;-1:-1:-1;;;;;1477:23:36;;;1464:36;1460:122;;;735:10:50;1523:48:36;;-1:-1:-1;;;1523:48:36;;;;;;;;:::i;2576:195::-;2649:16;2668:6;;-1:-1:-1;;;;;2684:17:36;;;-1:-1:-1;;;;;;2684:17:36;;;;;;2716:48;;2668:6;;;;;;;2716:48;;2649:16;2716:48;2639:132;2576:195;:::o;820:392:37:-;1007:24;1024:6;1007:16;:24::i;:::-;1041:6;:14;;-1:-1:-1;;;;;;1041:14:37;-1:-1:-1;;;;;1041:14:37;;;;;1065:12;;;;:5;;:12;;;;;:::i;:::-;;1092:9;1087:93;1107:7;:14;1103:1;:18;1087:93;;;1165:4;1142:8;:20;1151:7;1159:1;1151:10;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;1142:20:37;;;;;;;;;;;-1:-1:-1;1142:20:37;:27;;-1:-1:-1;;1142:27:37;;;;;;;;;;-1:-1:-1;1123:3:37;1087:93;;;-1:-1:-1;1189:7:37;:16;-1:-1:-1;;;;820:392:37:o;3702:255:51:-;3780:7;3800:17;3819:18;3839:16;3859:27;3870:4;3876:9;3859:10;:27::i;:::-;3799:87;;;;;;3896:28;3908:5;3915:8;3896:11;:28::i;:::-;-1:-1:-1;3941:9:51;;-1:-1:-1;;3702:255:51;;;;;:::o;547:474:36:-;620:13;:11;:13::i;:::-;616:82;;;656:31;;-1:-1:-1;;;656:31:36;;;;;;;;;;;616:82;-1:-1:-1;;;;;711:26:36;;707:308;;925:9;:16;;-1:-1:-1;;;;925:16:36;-1:-1:-1;;;925:16:36;;;2199:223;:::o;2129:766:51:-;2210:7;2219:12;2233:7;2256:9;:16;2276:2;2256:22;2252:637;;2592:4;2577:20;;2571:27;2641:4;2626:20;;2620:27;2698:4;2683:20;;2677:27;2294:9;2669:36;2739:25;2750:4;2669:36;2571:27;2620;2739:10;:25::i;:::-;2732:32;;;;;;;;;;;2252:637;-1:-1:-1;;2860:16:51;;2811:1;;-1:-1:-1;2815:35:51;;2252:637;2129:766;;;;;:::o;7196:532::-;7291:20;7282:5;:29;;;;;;;;:::i;:::-;;7278:444;;7196:532;;:::o;7278:444::-;7387:29;7378:5;:38;;;;;;;;:::i;:::-;;7374:348;;7439:23;;-1:-1:-1;;;7439:23:51;;;;;;;;;;;7374:348;7492:35;7483:5;:44;;;;;;;;:::i;:::-;;7479:243;;7550:46;;-1:-1:-1;;;7550:46:51;;;;;1702:25:65;;;1675:18;;7550:46:51;1556:177:65;7479:243:51;7626:30;7617:5;:39;;;;;;;;:::i;:::-;;7613:109;;7679:32;;-1:-1:-1;;;7679:32:51;;;;;1702:25:65;;;1675:18;;7679:32:51;1556:177:65;7613:109:51;7196:532;;:::o;5140:1530::-;5266:7;;;-1:-1:-1;;;;;6186:79:51;;6182:164;;;-1:-1:-1;6297:1:51;;-1:-1:-1;6301:30:51;;-1:-1:-1;6333:1:51;6281:54;;6182:164;6457:24;;;6440:14;6457:24;;;;;;;;;17516:25:65;;;17589:4;17577:17;;17557:18;;;17550:45;;;;17611:18;;;17604:34;;;17654:18;;;17647:34;;;6457:24:51;;17488:19:65;;6457:24:51;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6457:24:51;;-1:-1:-1;;6457:24:51;;;-1:-1:-1;;;;;;;6495:20:51;;6491:113;;-1:-1:-1;6547:1:51;;-1:-1:-1;6551:29:51;;-1:-1:-1;6547:1:51;;-1:-1:-1;6531:62:51;;6491:113;6622:6;-1:-1:-1;6630:20:51;;-1:-1:-1;6630:20:51;;-1:-1:-1;5140:1530:51;;;;;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;206:180:65;265:6;318:2;306:9;297:7;293:23;289:32;286:52;;;334:1;331;324:12;286:52;-1:-1:-1;357:23:65;;206:180;-1:-1:-1;206:180:65:o;391:131::-;-1:-1:-1;;;;;466:31:65;;456:42;;446:70;;512:1;509;502:12;527:416;592:6;600;653:2;641:9;632:7;628:23;624:32;621:52;;;669:1;666;659:12;621:52;708:9;695:23;727:31;752:5;727:31;:::i;:::-;777:5;-1:-1:-1;834:2:65;819:18;;806:32;876:15;;869:23;857:36;;847:64;;907:1;904;897:12;847:64;930:7;920:17;;;527:416;;;;;:::o;1073:226::-;-1:-1:-1;;;;;1260:32:65;;;;1242:51;;1230:2;1215:18;;1073:226::o;1304:247::-;1363:6;1416:2;1404:9;1395:7;1391:23;1387:32;1384:52;;;1432:1;1429;1422:12;1384:52;1471:9;1458:23;1490:31;1515:5;1490:31;:::i;:::-;1540:5;1304:247;-1:-1:-1;;;1304:247:65:o;1738:288::-;1779:3;1817:5;1811:12;1844:6;1839:3;1832:19;1900:6;1893:4;1886:5;1882:16;1875:4;1870:3;1866:14;1860:47;1952:1;1945:4;1936:6;1931:3;1927:16;1923:27;1916:38;2015:4;2008:2;2004:7;1999:2;1991:6;1987:15;1983:29;1978:3;1974:39;1970:50;1963:57;;;1738:288;;;;:::o;2031:217::-;2178:2;2167:9;2160:21;2141:4;2198:44;2238:2;2227:9;2223:18;2215:6;2198:44;:::i;2461:127::-;2522:10;2517:3;2513:20;2510:1;2503:31;2553:4;2550:1;2543:15;2577:4;2574:1;2567:15;2593:253;2665:2;2659:9;2707:4;2695:17;;-1:-1:-1;;;;;2727:34:65;;2763:22;;;2724:62;2721:88;;;2789:18;;:::i;:::-;2825:2;2818:22;2593:253;:::o;2851:275::-;2922:2;2916:9;2987:2;2968:13;;-1:-1:-1;;2964:27:65;2952:40;;-1:-1:-1;;;;;3007:34:65;;3043:22;;;3004:62;3001:88;;;3069:18;;:::i;:::-;3105:2;3098:22;2851:275;;-1:-1:-1;2851:275:65:o;3131:182::-;3190:4;-1:-1:-1;;;;;3212:30:65;;3209:56;;;3245:18;;:::i;:::-;-1:-1:-1;3290:1:65;3286:14;3302:4;3282:25;;3131:182::o;3318:187::-;3367:4;-1:-1:-1;;;;;3389:30:65;;3386:56;;;3422:18;;:::i;:::-;-1:-1:-1;3488:2:65;3467:15;-1:-1:-1;;3463:29:65;3494:4;3459:40;;3318:187::o;3510:338::-;3575:5;3604:53;3620:36;3649:6;3620:36;:::i;:::-;3604:53;:::i;:::-;3595:62;;3680:6;3673:5;3666:21;3720:3;3711:6;3706:3;3702:16;3699:25;3696:45;;;3737:1;3734;3727:12;3696:45;3786:6;3781:3;3774:4;3767:5;3763:16;3750:43;3840:1;3833:4;3824:6;3817:5;3813:18;3809:29;3802:40;3510:338;;;;;:::o;3853:948::-;3906:5;3959:3;3952:4;3944:6;3940:17;3936:27;3926:55;;3977:1;3974;3967:12;3926:55;4013:6;4000:20;4039:4;4063:59;4079:42;4118:2;4079:42;:::i;4063:59::-;4156:15;;;4242:1;4238:10;;;;4226:23;;4222:32;;;4187:12;;;;4266:15;;;4263:35;;;4294:1;4291;4284:12;4263:35;4330:2;4322:6;4318:15;4342:430;4358:6;4353:3;4350:15;4342:430;;;4431:17;;-1:-1:-1;;;;;4464:35:65;;4461:55;;;4512:1;4509;4502:12;4461:55;4539:24;;4598:2;4590:11;;4586:21;-1:-1:-1;4576:49:65;;4621:1;4618;4611:12;4576:49;4650:79;4725:3;4719:2;4715;4711:11;4698:25;4693:2;4689;4685:11;4650:79;:::i;:::-;4638:92;;-1:-1:-1;4750:12:65;;;;4375;;4342:430;;;-1:-1:-1;4790:5:65;3853:948;-1:-1:-1;;;;;;3853:948:65:o;4806:357::-;4900:6;4953:2;4941:9;4932:7;4928:23;4924:32;4921:52;;;4969:1;4966;4959:12;4921:52;4996:23;;-1:-1:-1;;;;;5031:30:65;;5028:50;;;5074:1;5071;5064:12;5028:50;5097:60;5149:7;5140:6;5129:9;5125:22;5097:60;:::i;:::-;5087:70;4806:357;-1:-1:-1;;;;4806:357:65:o;5168:802::-;5330:4;5359:2;5399;5388:9;5384:18;5429:2;5418:9;5411:21;5452:6;5487;5481:13;5518:6;5510;5503:22;5556:2;5545:9;5541:18;5534:25;;5618:2;5608:6;5605:1;5601:14;5590:9;5586:30;5582:39;5568:53;;5656:2;5648:6;5644:15;5677:1;5687:254;5701:6;5698:1;5695:13;5687:254;;;5794:2;5790:7;5778:9;5770:6;5766:22;5762:36;5757:3;5750:49;5822:39;5854:6;5845;5839:13;5822:39;:::i;:::-;5812:49;-1:-1:-1;5919:12:65;;;;5884:15;;;;5723:1;5716:9;5687:254;;;-1:-1:-1;5958:6:65;;5168:802;-1:-1:-1;;;;;;;5168:802:65:o;5975:1596::-;6153:6;6161;6169;6177;6185;6238:3;6226:9;6217:7;6213:23;6209:33;6206:53;;;6255:1;6252;6245:12;6206:53;6294:9;6281:23;6313:31;6338:5;6313:31;:::i;:::-;6363:5;-1:-1:-1;6387:2:65;6426:18;;;6413:32;6454:33;6413:32;6454:33;:::i;:::-;6506:7;-1:-1:-1;6564:2:65;6549:18;;6536:32;-1:-1:-1;;;;;6617:14:65;;;6614:34;;;6644:1;6641;6634:12;6614:34;6667:60;6719:7;6710:6;6699:9;6695:22;6667:60;:::i;:::-;6657:70;;6780:2;6769:9;6765:18;6752:32;6736:48;;6809:2;6799:8;6796:16;6793:36;;;6825:1;6822;6815:12;6793:36;-1:-1:-1;6848:24:65;;6903:4;6895:13;;6891:27;-1:-1:-1;6881:55:65;;6932:1;6929;6922:12;6881:55;6968:2;6955:16;6991:59;7007:42;7046:2;7007:42;:::i;6991:59::-;7084:15;;;7166:1;7162:10;;;;7154:19;;7150:28;;;7115:12;;;;7190:19;;;7187:39;;;7222:1;7219;7212:12;7187:39;7246:11;;;;7266:223;7282:6;7277:3;7274:15;7266:223;;;7364:3;7351:17;7381:33;7406:7;7381:33;:::i;:::-;7427:20;;7299:12;;;;7467;;;;7266:223;;;5975:1596;;;;-1:-1:-1;5975:1596:65;;7560:3;7545:19;7532:33;;5975:1596;-1:-1:-1;;;;;;5975:1596:65:o;7576:221::-;7618:5;7671:3;7664:4;7656:6;7652:17;7648:27;7638:55;;7689:1;7686;7679:12;7638:55;7711:80;7787:3;7778:6;7765:20;7758:4;7750:6;7746:17;7711:80;:::i;7802:1153::-;7929:6;7937;7945;7998:2;7986:9;7977:7;7973:23;7969:32;7966:52;;;8014:1;8011;8004:12;7966:52;8041:23;;-1:-1:-1;;;;;8113:14:65;;;8110:34;;;8140:1;8137;8130:12;8110:34;8163:49;8204:7;8195:6;8184:9;8180:22;8163:49;:::i;:::-;8153:59;;8265:2;8254:9;8250:18;8237:32;8221:48;;8294:2;8284:8;8281:16;8278:36;;;8310:1;8307;8300:12;8278:36;8333:24;;;;8391:2;8373:16;;;8369:25;8366:45;;;8407:1;8404;8397:12;8366:45;8440:2;8434:9;8482:2;8474:6;8470:15;8535:6;8523:10;8520:22;8515:2;8503:10;8500:18;8497:46;8494:72;;;8546:18;;:::i;:::-;8582:2;8575:22;8622:16;;8650;;;8647:36;;;8679:1;8676;8669:12;8647:36;8707:44;8743:7;8732:8;8728:2;8724:17;8707:44;:::i;:::-;8692:60;;-1:-1:-1;8699:6:65;-1:-1:-1;8830:2:65;8815:18;;8802:32;;-1:-1:-1;8846:16:65;;;8843:36;;;8875:1;8872;8865:12;8843:36;;8898:51;8941:7;8930:8;8919:9;8915:24;8898:51;:::i;:::-;8888:61;;;7802:1153;;;;;:::o;8960:884::-;9144:4;9192:2;9181:9;9177:18;9222:2;9211:9;9204:21;9245:6;9280;9274:13;9311:6;9303;9296:22;9349:2;9338:9;9334:18;9327:25;;9411:2;9401:6;9398:1;9394:14;9383:9;9379:30;9375:39;9361:53;;9433:4;9472;9464:6;9460:17;9495:1;9505:254;9519:6;9516:1;9513:13;9505:254;;;9612:2;9608:7;9596:9;9588:6;9584:22;9580:36;9575:3;9568:49;9640:39;9672:6;9663;9657:13;9640:39;:::i;:::-;9630:49;-1:-1:-1;9737:12:65;;;;9702:15;;;;9541:1;9534:9;9505:254;;;9509:3;;;;;9776:6;9768:14;;;9832:4;9824:6;9820:17;9813:4;9802:9;9798:20;9791:47;8960:884;;;;;:::o;10124:380::-;10203:1;10199:12;;;;10246;;;10267:61;;10321:4;10313:6;10309:17;10299:27;;10267:61;10374:2;10366:6;10363:14;10343:18;10340:38;10337:161;;10420:10;10415:3;10411:20;10408:1;10401:31;10455:4;10452:1;10445:15;10483:4;10480:1;10473:15;10337:161;;10124:380;;;:::o;10509:184::-;10579:6;10632:2;10620:9;10611:7;10607:23;10603:32;10600:52;;;10648:1;10645;10638:12;10600:52;-1:-1:-1;10671:16:65;;10509:184;-1:-1:-1;10509:184:65:o;10698:460::-;10751:5;10804:3;10797:4;10789:6;10785:17;10781:27;10771:55;;10822:1;10819;10812:12;10771:55;10851:6;10845:13;10882:49;10898:32;10927:2;10898:32;:::i;10882:49::-;10956:2;10947:7;10940:19;11002:3;10995:4;10990:2;10982:6;10978:15;10974:26;10971:35;10968:55;;;11019:1;11016;11009:12;10968:55;11077:2;11070:4;11062:6;11058:17;11051:4;11042:7;11038:18;11032:48;11125:1;11100:16;;;11118:4;11096:27;11089:38;;;;11104:7;10698:460;-1:-1:-1;;;10698:460:65:o;11163:175::-;11241:13;;-1:-1:-1;;;;;11283:30:65;;11273:41;;11263:69;;11328:1;11325;11318:12;11263:69;11163:175;;;:::o;11343:823::-;11406:5;11459:3;11452:4;11444:6;11440:17;11436:27;11426:55;;11477:1;11474;11467:12;11426:55;11506:6;11500:13;11532:4;11556:59;11572:42;11611:2;11572:42;:::i;11556:59::-;11649:15;;;11735:1;11731:10;;;;11719:23;;11715:32;;;11680:12;;;;11759:15;;;11756:35;;;11787:1;11784;11777:12;11756:35;11823:2;11815:6;11811:15;11835:302;11851:6;11846:3;11843:15;11835:302;;;11924:10;;-1:-1:-1;;;;;11950:35:65;;11947:55;;;11998:1;11995;11988:12;11947:55;12027:67;12090:3;12085:2;12071:11;12063:6;12059:24;12055:33;12027:67;:::i;:::-;12015:80;;-1:-1:-1;12115:12:65;;;;11868;;11835:302;;12171:1111;12272:6;12325:2;12313:9;12304:7;12300:23;12296:32;12293:52;;;12341:1;12338;12331:12;12293:52;12368:16;;-1:-1:-1;;;;;12433:14:65;;;12430:34;;;12460:1;12457;12450:12;12430:34;12483:22;;;;12539:4;12521:16;;;12517:27;12514:47;;;12557:1;12554;12547:12;12514:47;12583:22;;:::i;:::-;12636:2;12630:9;12664:2;12654:8;12651:16;12648:36;;;12680:1;12677;12670:12;12648:36;12707:55;12754:7;12743:8;12739:2;12735:17;12707:55;:::i;:::-;12700:5;12693:70;;12795:41;12832:2;12828;12824:11;12795:41;:::i;:::-;12790:2;12783:5;12779:14;12772:65;12883:2;12879;12875:11;12869:18;12864:2;12857:5;12853:14;12846:42;12927:2;12923;12919:11;12913:18;12956:2;12946:8;12943:16;12940:36;;;12972:1;12969;12962:12;12940:36;13008:65;13065:7;13054:8;13050:2;13046:17;13008:65;:::i;:::-;13003:2;12996:5;12992:14;12985:89;;13113:3;13109:2;13105:12;13099:19;13143:2;13133:8;13130:16;13127:36;;;13159:1;13156;13149:12;13127:36;13196:55;13243:7;13232:8;13228:2;13224:17;13196:55;:::i;:::-;13190:3;13179:15;;13172:80;-1:-1:-1;13183:5:65;12171:1111;-1:-1:-1;;;;;12171:1111:65:o;14169:225::-;14236:9;;;14257:11;;;14254:134;;;14310:10;14305:3;14301:20;14298:1;14291:31;14345:4;14342:1;14335:15;14373:4;14370:1;14363:15;14744:1569;15035:2;15024:9;15017:21;14998:4;15073:6;15067:13;15099:4;15139:2;15134;15123:9;15119:18;15112:30;15162:50;15208:2;15197:9;15193:18;15179:12;15162:50;:::i;:::-;15151:61;;15257:9;15252:3;15248:19;15243:2;15232:9;15228:18;15221:47;15300:4;15295:3;15291:14;15332:6;15326:13;15321:3;15314:26;15388:2;15380:6;15376:15;15370:22;15365:2;15360:3;15356:12;15349:44;15442:2;15434:6;15430:15;15424:22;15476:4;15471:2;15466:3;15462:12;15455:26;15501:6;15536:14;15530:21;15575:6;15567;15560:22;15607:3;15602;15598:13;15591:20;;15664:3;15654:6;15651:1;15647:14;15642:3;15638:24;15634:34;15620:48;;15711:2;15695:14;15691:23;15677:37;;15732:1;15742:249;15756:6;15753:1;15750:13;15742:249;;;15843:3;15839:8;15833:3;15825:6;15821:16;15817:31;15812:3;15805:44;15872:39;15904:6;15895;15889:13;15872:39;:::i;:::-;15862:49;-1:-1:-1;15934:15:65;;;;15969:12;;;;15778:1;15771:9;15742:249;;;15746:3;;;;16040:2;16032:6;16028:15;16022:22;16000:44;;16086:3;16078:6;16074:16;16069:2;16064:3;16060:12;16053:38;16114:40;16147:6;16131:14;16114:40;:::i;:::-;16100:54;;;16203:4;16195:6;16191:17;16185:24;16218:66;16278:4;16273:3;16269:14;16253;-1:-1:-1;;;;;1030:31:65;1018:44;;948:120;16218:66;-1:-1:-1;16301:6:65;14744:1569;-1:-1:-1;;;;;14744:1569:65:o;16318:520::-;16429:6;16437;16490:2;16478:9;16469:7;16465:23;16461:32;16458:52;;;16506:1;16503;16496:12;16458:52;16533:16;;-1:-1:-1;;;;;16561:30:65;;16558:50;;;16604:1;16601;16594:12;16558:50;16627:70;16689:7;16680:6;16669:9;16665:22;16627:70;:::i;:::-;16617:80;;;16740:2;16729:9;16725:18;16719:25;16784:4;16777:5;16773:16;16766:5;16763:27;16753:55;;16804:1;16801;16794:12;16843:127;16904:10;16899:3;16895:20;16892:1;16885:31;16935:4;16932:1;16925:15;16959:4;16956:1;16949:15;16975:127;17036:10;17031:3;17027:20;17024:1;17017:31;17067:4;17064:1;17057:15;17091:4;17088:1;17081:15;17818:518;17920:2;17915:3;17912:11;17909:421;;;17956:5;17953:1;17946:16;18000:4;17997:1;17987:18;18070:2;18058:10;18054:19;18051:1;18047:27;18041:4;18037:38;18106:4;18094:10;18091:20;18088:47;;;-1:-1:-1;18129:4:65;18088:47;18184:2;18179:3;18175:12;18172:1;18168:20;18162:4;18158:31;18148:41;;18239:81;18257:2;18250:5;18247:13;18239:81;;;18316:1;18302:16;;18283:1;18272:13;18239:81;;17909:421;17818:518;;;:::o;18512:1345::-;18632:10;;-1:-1:-1;;;;;18654:30:65;;18651:56;;;18687:18;;:::i;:::-;18716:97;18806:6;18766:38;18798:4;18792:11;18766:38;:::i;:::-;18760:4;18716:97;:::i;:::-;18868:4;;18925:2;18914:14;;18942:1;18937:663;;;;19644:1;19661:6;19658:89;;;-1:-1:-1;19713:19:65;;;19707:26;19658:89;-1:-1:-1;;18469:1:65;18465:11;;;18461:24;18457:29;18447:40;18493:1;18489:11;;;18444:57;19760:81;;18907:944;;18937:663;17765:1;17758:14;;;17802:4;17789:18;;-1:-1:-1;;18973:20:65;;;19091:236;19105:7;19102:1;19099:14;19091:236;;;19194:19;;;19188:26;19173:42;;19286:27;;;;19254:1;19242:14;;;;19121:19;;19091:236;;;19095:3;19355:6;19346:7;19343:19;19340:201;;;19416:19;;;19410:26;-1:-1:-1;;19499:1:65;19495:14;;;19511:3;19491:24;19487:37;19483:42;19468:58;19453:74;;19340:201;;;19587:1;19578:6;19575:1;19571:14;19567:22;19561:4;19554:36;18907:944;;;;;18512:1345;;:::o","linkReferences":{"contracts/GatewayVM.sol":{"GatewayVM":[{"start":1495,"length":20}]}}},"methodIdentifiers":{"gatewayURLs()":"b50f2fbc","getExpSec()":"858259b6","getHooks()":"5cd2525e","getLatestContext()":"87c484fe","getStorageValues(bytes,(bytes),bytes)":"e3d1666e","init(address,address,string[],address[],uint256)":"b6f8f15d","initialized()":"158ef93e","isSigner(address)":"7df73e27","owner()":"8da5cb5b","renounceOwnership()":"715018a6","setExpSec(uint256)":"225dc5b6","setGatewayURLs(string[])":"8e5ea8df","setHooks(address)":"fb63daa1","setSigner(address,bool)":"31cb6105","transferOwnership(address)":"f2fde38b"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IVerifierHooks\",\"name\":\"hooks\",\"type\":\"address\"},{\"internalType\":\"string[]\",\"name\":\"urls\",\"type\":\"string[]\"},{\"internalType\":\"address[]\",\"name\":\"signers\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"expSec\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ECDSAInvalidSignature\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"ECDSAInvalidSignatureLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"ECDSAInvalidSignatureS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"LazyOwnableAlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"TrustedVerifierChanged\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"gatewayURLs\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getExpSec\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getHooks\",\"outputs\":[{\"internalType\":\"contract IVerifierHooks\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLatestContext\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"context\",\"type\":\"bytes\"},{\"components\":[{\"internalType\":\"bytes\",\"name\":\"ops\",\"type\":\"bytes\"}],\"internalType\":\"struct GatewayRequest\",\"name\":\"req\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"proof\",\"type\":\"bytes\"}],\"name\":\"getStorageValues\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"},{\"internalType\":\"uint8\",\"name\":\"exitCode\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"contract IVerifierHooks\",\"name\":\"hooks\",\"type\":\"address\"},{\"internalType\":\"string[]\",\"name\":\"urls\",\"type\":\"string[]\"},{\"internalType\":\"address[]\",\"name\":\"signers\",\"type\":\"address[]\"},{\"internalType\":\"uint256\",\"name\":\"expSec\",\"type\":\"uint256\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initialized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"isSigner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expSec\",\"type\":\"uint256\"}],\"name\":\"setExpSec\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"urls\",\"type\":\"string[]\"}],\"name\":\"setGatewayURLs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IVerifierHooks\",\"name\":\"hooks\",\"type\":\"address\"}],\"name\":\"setHooks\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"allow\",\"type\":\"bool\"}],\"name\":\"setSigner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"ECDSAInvalidSignature()\":[{\"details\":\"The signature derives the `address(0)`.\"}],\"ECDSAInvalidSignatureLength(uint256)\":[{\"details\":\"The signature has an invalid length.\"}],\"ECDSAInvalidSignatureS(bytes32)\":[{\"details\":\"The signature has an S value that is in the upper half order.\"}],\"OwnableInvalidOwner(address)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(address)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}]},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/trusted/TrustedVerifier.sol\":\"TrustedVerifier\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[\":@eth-optimism/=lib/optimism/packages/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":optimism/=lib/optimism/packages/contracts-bedrock/src/\"]},\"sources\":{\"contracts/GatewayRequest.sol\":{\"keccak256\":\"0x3e6ce7cae72d6d77a9a4b5644495b8621116be44511186d47efbb27ce0fc73f9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://301c7ad11dd0e050811a58ab6942040df9bad5e269bb43e4c74ffca3b43622f5\",\"dweb:/ipfs/QmXocie71GDYUPDEcVLsZ9N6LXZaSj8SX49HbGG3CUHLvP\"]},\"contracts/GatewayVM.sol\":{\"keccak256\":\"0x9bff36c483bb29a6fc0525cfa7ba09b523632ed9477dac23aa8d312237e987ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2452b324151e1909f825a83e895a242de7795bdab405121d3baec42128e350da\",\"dweb:/ipfs/QmWdMuMT3wYoe4Sa73PPWuW1RZSqvUT2qFck6WvMdLnSCy\"]},\"contracts/IGatewayVerifier.sol\":{\"keccak256\":\"0xd56c8ace6aba1354dd4c477b566343b641f57a8c4ef88e1d84294d3727552284\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e268659b9c590a5ce3d2eb440a11bcdf3214a4bfcfa7f38523137ccf940fa32\",\"dweb:/ipfs/QmVpLNhcXQbx4MaBPMnnEnt7gTLNWB753BszqakBq5yUA3\"]},\"contracts/IVerifierHooks.sol\":{\"keccak256\":\"0xd85e9b52270a88d0df9b26454d9c80389405c230b7d67060742a4a0ea5917248\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://81de43a606284b5b9b146e06dbf6f54db5480058deb5fbe150302a37ffe14e1a\",\"dweb:/ipfs/QmSDH39aPAch4bKhRZbJ5vSDEUUDic76gWxDDDGaYxbPat\"]},\"contracts/trusted/LazyOwnable.sol\":{\"keccak256\":\"0xae7cccd67f5e4239c566767742345b904b2fb5ab367d1a5ab3ec4bf95ca7eb61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1bd9900b423dd10b2801e108bb6e76a08732707beb66623b1f13ed0ab00c385d\",\"dweb:/ipfs/QmadURWEqPguvsa5Uf3ymLB8sFLbLz6hgZTGp4X58DCmY1\"]},\"contracts/trusted/LazyTrustedVerifier.sol\":{\"keccak256\":\"0x6854b0e2d43997032910deb39a8134da2df3976220d8818988ca05307d288894\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://28db90c9535fc8b7084d1dc3109b73a482d8acca6346ab00289af5c26f72d7f8\",\"dweb:/ipfs/QmNYtPXSbQ8UiaaMYjELqZyuQA62Lx5kx7tae2hVQmTtmv\"]},\"contracts/trusted/TrustedVerifier.sol\":{\"keccak256\":\"0xcb174ee1e8f362b740a7d295c9f81d3773770b8aa587edaf67ffff065d9e1b50\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0bacfe0385f98a0524290d0984ddf8a758eca46c803bcab9800558d8f6b37fd5\",\"dweb:/ipfs/QmfB7N9WigbB4xAByhgtTYc1tdQWiRmZRQbL5bzfUP1sBw\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x4bbf47eb762cef93729d6ef15e78789957147039b113e5d4df48e3d3fd16d0f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af9e3a7c3d82fb5b10b57ca4d1a82f2acbef80c077f6f6ef0cc0187c7bfd9f57\",\"dweb:/ipfs/QmR9VzmnBDJpgiDP6CHT6truehukF9HpYvuP6kRiJbDwPP\"]},\"lib/openzeppelin-contracts/contracts/access/Ownable.sol\":{\"keccak256\":\"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6\",\"dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"]},\"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol\":{\"keccak256\":\"0xeed0a08b0b091f528356cbc7245891a4c748682d4f6a18055e8e6ca77d12a6cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ba80ba06c8e6be852847e4c5f4492cef801feb6558ae09ed705ff2e04ea8b13c\",\"dweb:/ipfs/QmXRJDv3xHLVQCVXg1ZvR35QS9sij5y9NDWYzMfUfAdTHF\"]},\"lib/optimism/packages/contracts-bedrock/src/libraries/Bytes.sol\":{\"keccak256\":\"0x827f47d123b0fdf3b08816d5b33831811704dbf4e554e53f2269354f6bba8859\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3137ac7204d30a245a8b0d67aa6da5286f1bd8c90379daab561f84963b6db782\",\"dweb:/ipfs/QmWRhisw3axJK833gUScs23ETh2MLFbVzzqzYVMKSDN3S9\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.25+commit.b61c2a91"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"contract IVerifierHooks","name":"hooks","type":"address"},{"internalType":"string[]","name":"urls","type":"string[]"},{"internalType":"address[]","name":"signers","type":"address[]"},{"internalType":"uint256","name":"expSec","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"ECDSAInvalidSignature"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"ECDSAInvalidSignatureLength"},{"inputs":[{"internalType":"bytes32","name":"s","type":"bytes32"}],"type":"error","name":"ECDSAInvalidSignatureS"},{"inputs":[],"type":"error","name":"LazyOwnableAlreadyInitialized"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"type":"error","name":"OwnableInvalidOwner"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"OwnableUnauthorizedAccount"},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[],"type":"event","name":"TrustedVerifierChanged","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"gatewayURLs","outputs":[{"internalType":"string[]","name":"","type":"string[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getExpSec","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getHooks","outputs":[{"internalType":"contract IVerifierHooks","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getLatestContext","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[{"internalType":"bytes","name":"context","type":"bytes"},{"internalType":"struct GatewayRequest","name":"req","type":"tuple","components":[{"internalType":"bytes","name":"ops","type":"bytes"}]},{"internalType":"bytes","name":"proof","type":"bytes"}],"stateMutability":"view","type":"function","name":"getStorageValues","outputs":[{"internalType":"bytes[]","name":"","type":"bytes[]"},{"internalType":"uint8","name":"exitCode","type":"uint8"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"contract IVerifierHooks","name":"hooks","type":"address"},{"internalType":"string[]","name":"urls","type":"string[]"},{"internalType":"address[]","name":"signers","type":"address[]"},{"internalType":"uint256","name":"expSec","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[],"stateMutability":"view","type":"function","name":"initialized","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"signer","type":"address"}],"stateMutability":"view","type":"function","name":"isSigner","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"expSec","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setExpSec"},{"inputs":[{"internalType":"string[]","name":"urls","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"setGatewayURLs"},{"inputs":[{"internalType":"contract IVerifierHooks","name":"hooks","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setHooks"},{"inputs":[{"internalType":"address","name":"signer","type":"address"},{"internalType":"bool","name":"allow","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setSigner"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@eth-optimism/=lib/optimism/packages/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","openzeppelin-contracts/=lib/openzeppelin-contracts/","optimism/=lib/optimism/packages/contracts-bedrock/src/"],"optimizer":{"enabled":true,"runs":1},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/trusted/TrustedVerifier.sol":"TrustedVerifier"},"evmVersion":"cancun","libraries":{}},"sources":{"contracts/GatewayRequest.sol":{"keccak256":"0x3e6ce7cae72d6d77a9a4b5644495b8621116be44511186d47efbb27ce0fc73f9","urls":["bzz-raw://301c7ad11dd0e050811a58ab6942040df9bad5e269bb43e4c74ffca3b43622f5","dweb:/ipfs/QmXocie71GDYUPDEcVLsZ9N6LXZaSj8SX49HbGG3CUHLvP"],"license":"MIT"},"contracts/GatewayVM.sol":{"keccak256":"0x9bff36c483bb29a6fc0525cfa7ba09b523632ed9477dac23aa8d312237e987ed","urls":["bzz-raw://2452b324151e1909f825a83e895a242de7795bdab405121d3baec42128e350da","dweb:/ipfs/QmWdMuMT3wYoe4Sa73PPWuW1RZSqvUT2qFck6WvMdLnSCy"],"license":"MIT"},"contracts/IGatewayVerifier.sol":{"keccak256":"0xd56c8ace6aba1354dd4c477b566343b641f57a8c4ef88e1d84294d3727552284","urls":["bzz-raw://0e268659b9c590a5ce3d2eb440a11bcdf3214a4bfcfa7f38523137ccf940fa32","dweb:/ipfs/QmVpLNhcXQbx4MaBPMnnEnt7gTLNWB753BszqakBq5yUA3"],"license":"MIT"},"contracts/IVerifierHooks.sol":{"keccak256":"0xd85e9b52270a88d0df9b26454d9c80389405c230b7d67060742a4a0ea5917248","urls":["bzz-raw://81de43a606284b5b9b146e06dbf6f54db5480058deb5fbe150302a37ffe14e1a","dweb:/ipfs/QmSDH39aPAch4bKhRZbJ5vSDEUUDic76gWxDDDGaYxbPat"],"license":"MIT"},"contracts/trusted/LazyOwnable.sol":{"keccak256":"0xae7cccd67f5e4239c566767742345b904b2fb5ab367d1a5ab3ec4bf95ca7eb61","urls":["bzz-raw://1bd9900b423dd10b2801e108bb6e76a08732707beb66623b1f13ed0ab00c385d","dweb:/ipfs/QmadURWEqPguvsa5Uf3ymLB8sFLbLz6hgZTGp4X58DCmY1"],"license":"MIT"},"contracts/trusted/LazyTrustedVerifier.sol":{"keccak256":"0x6854b0e2d43997032910deb39a8134da2df3976220d8818988ca05307d288894","urls":["bzz-raw://28db90c9535fc8b7084d1dc3109b73a482d8acca6346ab00289af5c26f72d7f8","dweb:/ipfs/QmNYtPXSbQ8UiaaMYjELqZyuQA62Lx5kx7tae2hVQmTtmv"],"license":"MIT"},"contracts/trusted/TrustedVerifier.sol":{"keccak256":"0xcb174ee1e8f362b740a7d295c9f81d3773770b8aa587edaf67ffff065d9e1b50","urls":["bzz-raw://0bacfe0385f98a0524290d0984ddf8a758eca46c803bcab9800558d8f6b37fd5","dweb:/ipfs/QmfB7N9WigbB4xAByhgtTYc1tdQWiRmZRQbL5bzfUP1sBw"],"license":"MIT"},"lib/forge-std/src/console.sol":{"keccak256":"0x4bbf47eb762cef93729d6ef15e78789957147039b113e5d4df48e3d3fd16d0f5","urls":["bzz-raw://af9e3a7c3d82fb5b10b57ca4d1a82f2acbef80c077f6f6ef0cc0187c7bfd9f57","dweb:/ipfs/QmR9VzmnBDJpgiDP6CHT6truehukF9HpYvuP6kRiJbDwPP"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"keccak256":"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb","urls":["bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6","dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2","urls":["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12","dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol":{"keccak256":"0xeed0a08b0b091f528356cbc7245891a4c748682d4f6a18055e8e6ca77d12a6cf","urls":["bzz-raw://ba80ba06c8e6be852847e4c5f4492cef801feb6558ae09ed705ff2e04ea8b13c","dweb:/ipfs/QmXRJDv3xHLVQCVXg1ZvR35QS9sij5y9NDWYzMfUfAdTHF"],"license":"MIT"},"lib/optimism/packages/contracts-bedrock/src/libraries/Bytes.sol":{"keccak256":"0x827f47d123b0fdf3b08816d5b33831811704dbf4e554e53f2269354f6bba8859","urls":["bzz-raw://3137ac7204d30a245a8b0d67aa6da5286f1bd8c90379daab561f84963b6db782","dweb:/ipfs/QmWRhisw3axJK833gUScs23ETh2MLFbVzzqzYVMKSDN3S9"],"license":"MIT"}},"version":1},"id":38}