{"abi":[{"type":"constructor","inputs":[{"name":"urls","type":"string[]","internalType":"string[]"},{"name":"window","type":"uint256","internalType":"uint256"},{"name":"hooks","type":"address","internalType":"contract IVerifierHooks"},{"name":"portal","type":"address","internalType":"address"},{"name":"outputFinder","type":"address","internalType":"contract IOPOutputFinder"},{"name":"minAgeSec","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"gatewayURLs","inputs":[],"outputs":[{"name":"","type":"string[]","internalType":"string[]"}],"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":"getWindow","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"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":"setGatewayURLs","inputs":[{"name":"urls","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"GatewayURLsChanged","inputs":[],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"CommitTooNew","inputs":[{"name":"latest","type":"uint256","internalType":"uint256"},{"name":"got","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"CommitTooOld","inputs":[{"name":"latest","type":"uint256","internalType":"uint256"},{"name":"got","type":"uint256","internalType":"uint256"},{"name":"window","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"OwnableInvalidOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"OwnableUnauthorizedAccount","inputs":[{"name":"account","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x610120604052348015610010575f80fd5b5060405161174038038061174083398101604081905261002f9161020e565b858585338061005757604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b610060816100a2565b5082516100749060019060208601906100f1565b506080919091526001600160a01b0390811660a05293841660c05250911660e05261010052506104c7915050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054828255905f5260205f20908101928215610135579160200282015b8281111561013557825182906101259082610408565b509160200191906001019061010f565b50610141929150610145565b5090565b80821115610141575f6101588282610161565b50600101610145565b50805461016d90610384565b5f825580601f1061017c575050565b601f0160209004905f5260205f2090810190610198919061019b565b50565b5b80821115610141575f815560010161019c565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156101eb576101eb6101af565b604052919050565b80516001600160a01b0381168114610209575f80fd5b919050565b5f805f805f8060c08789031215610223575f80fd5b86516001600160401b03811115610238575f80fd5b8701601f81018913610248575f80fd5b80516001600160401b03811115610261576102616101af565b61027060208260051b016101c3565b808282526020820191508b60208460051b860101111561028e575f80fd5b602084015b60208460051b86010181101561033a5780516001600160401b038111156102b8575f80fd5b8d603f82880101126102c8575f80fd5b858101602001516001600160401b038111156102e6576102e66101af565b6102f9601f8201601f19166020016101c3565b8181528f604083858b010101111561030f575f80fd5b816040848a0101602083015e5f60208383010152808652505050602083019250602081019050610293565b508099505050505060208701519450610355604088016101f3565b9350610363606088016101f3565b9250610371608088016101f3565b915060a087015190509295509295509295565b600181811c9082168061039857607f821691505b6020821081036103b657634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561040357805f5260205f20601f840160051c810160208510156103e15750805b601f840160051c820191505b81811015610400575f81556001016103ed565b50505b505050565b81516001600160401b03811115610421576104216101af565b6104358161042f8454610384565b846103bc565b602080601f831160018114610468575f84156104515750858301515b5f19600386901b1c1916600185901b1785556104bf565b5f85815260208120601f198616915b8281101561049657888601518255948401946001909101908401610477565b50858210156104b357878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b60805160a05160c05160e0516101005161120d6105335f395f6101e601525f8181610197015281816103e901526104a101525f81816101c40152818161041601526104ce01525f818160ba01526105ee01525f8181608a0152818161075e01526107a6015261120d5ff3fe608060405234801561000f575f80fd5b5060043610610081575f3560e01c80631d80051d146100855780635cd2525e146100b8578063715018a6146100e757806387c484fe146100f15780638da5cb5b146101065780638e5ea8df1461010e578063b50f2fbc14610121578063e3d1666e14610136578063f2fde38b14610157575b5f80fd5b6040517f000000000000000000000000000000000000000000000000000000000000000081526020015b60405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000005b6040516100af9190610911565b6100ef61016a565b005b6100f961017d565b6040516100af9190610953565b6100da610273565b6100ef61011c366004610a5b565b610281565b6101296102c8565b6040516100af9190610b17565b610149610144366004610b97565b61039c565b6040516100af929190610c5a565b6100ef610165366004610cc8565b61069a565b6101726106d7565b61017b5f610709565b565b6040516303a1bd6560e61b81526060906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e86f59409061020e907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090600401610cee565b602060405180830381865afa158015610229573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061024d9190610d07565b60405160200161025f91815260200190565b604051602081830303815290604052905090565b5f546001600160a01b031690565b6102896106d7565b805161029c90600190602084019061085b565b506040517fe621d803a0c96b9bbeea51d136777f6ea8a4ce0c4ac74f6645e18b4342e2fa07905f90a150565b60606001805480602002602001604051908101604052809291908181526020015f905b82821015610393578382905f5260205f2001805461030890610d1e565b80601f016020809104026020016040519081016040528092919081815260200182805461033490610d1e565b801561037f5780601f106103565761010080835404028352916020019161037f565b820191905f5260205f20905b81548152906001019060200180831161036257829003601f168201915b5050505050815260200190600101906102eb565b50505050905090565b60605f80858060200190518101906103b49190610d07565b90505f848060200190518101906103cb9190610e28565b805160405163b0b651eb60e01b81529192505f916001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169163b0b651eb9161043e917f000000000000000000000000000000000000000000000000000000000000000091600401610cee565b606060405180830381865afa158015610459573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061047d9190610f21565b8251909150831461055f5760405163b0b651eb60e01b81525f906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b0b651eb906104f8907f0000000000000000000000000000000000000000000000000000000000000000908890600401610cee565b606060405180830381865afa158015610513573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105379190610f21565b905061055d81602001516001600160801b031683602001516001600160801b0316610758565b505b5f61056d8360200151610801565b825190915081146105b85760405162461bcd60e51b815260206004820152601060248201526f13d40e881a5b9d985b1a59081c9bdbdd60821b60448201526064015b60405180910390fd5b6040805160a0810182525f8152602085810151810151908201528482015181830152606080860151908201526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016608082015290516324a8807560e21b815273__$011ed85421b307e5206de383929e31be73$__916392a201d491610649918c91600401610f83565b5f60405180830381865af4158015610663573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261068a9190810190611054565b9550955050505050935093915050565b6106a26106d7565b6001600160a01b0381166106cb575f604051631e4fbdf760e01b81526004016105af9190610911565b6106d481610709565b50565b336106e0610273565b6001600160a01b03161461017b573360405163118cdaa760e01b81526004016105af9190610911565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b816107837f0000000000000000000000000000000000000000000000000000000000000000836110a7565b10156107d257604051632a54241d60e21b815260048101839052602481018290527f000000000000000000000000000000000000000000000000000000000000000060448201526064016105af565b818111156107fd5760405163b356ade760e01b815260048101839052602481018290526044016105af565b5050565b5f815f015182602001518360400151846060015160405160200161083e949392919093845260208401929092526040830152606082015260800190565b604051602081830303815290604052805190602001209050919050565b828054828255905f5260205f2090810192821561089f579160200282015b8281111561089f578251829061088f9082611118565b5091602001919060010190610879565b506108ab9291506108af565b5090565b808211156108ab575f6108c282826108cb565b506001016108af565b5080546108d790610d1e565b5f825580601f106108e6575050565b601f0160209004905f5260205f20908101906106d491905b808211156108ab575f81556001016108fe565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6109656020830184610925565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156109a2576109a261096c565b60405290565b604051601f8201601f191681016001600160401b03811182821017156109d0576109d061096c565b604052919050565b5f6001600160401b038211156109f0576109f061096c565b5060051b60200190565b5f6001600160401b03821115610a1257610a1261096c565b50601f01601f191660200190565b5f610a32610a2d846109fa565b6109a8565b9050828152838383011115610a45575f80fd5b828260208301375f602084830101529392505050565b5f6020808385031215610a6c575f80fd5b82356001600160401b0380821115610a82575f80fd5b818501915085601f830112610a95575f80fd5b8135610aa3610a2d826109d8565b81815260059190911b83018401908481019088831115610ac1575f80fd5b8585015b83811015610b0a57803585811115610adb575f80fd5b8601603f81018b13610aeb575f80fd5b610afc8b8983013560408401610a20565b845250918601918601610ac5565b5098975050505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b82811015610b6c57603f19888603018452610b5a858351610925565b94509285019290850190600101610b3e565b5092979650505050505050565b5f82601f830112610b88575f80fd5b61096583833560208501610a20565b5f805f60608486031215610ba9575f80fd5b83356001600160401b0380821115610bbf575f80fd5b610bcb87838801610b79565b94506020860135915080821115610be0575f80fd5b9085019060208288031215610bf3575f80fd5b604051602081018181108382111715610c0e57610c0e61096c565b604052823582811115610c1f575f80fd5b610c2b89828601610b79565b82525093506040860135915080821115610c43575f80fd5b50610c5086828701610b79565b9150509250925092565b5f604082016040835280855180835260608501915060608160051b860101925060208088015f5b83811015610caf57605f19888703018552610c9d868351610925565b95509382019390820190600101610c81565b50505050508091505060ff831660208301529392505050565b5f60208284031215610cd8575f80fd5b81356001600160a01b0381168114610965575f80fd5b6001600160a01b03929092168252602082015260400190565b5f60208284031215610d17575f80fd5b5051919050565b600181811c90821680610d3257607f821691505b602082108103610d5057634e487b7160e01b5f52602260045260245ffd5b50919050565b5f82601f830112610d65575f80fd5b8151610d73610a2d826109fa565b818152846020838601011115610d87575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f82601f830112610db2575f80fd5b81516020610dc2610a2d836109d8565b82815260059290921b84018101918181019086841115610de0575f80fd5b8286015b84811015610e1d5780516001600160401b03811115610e01575f80fd5b610e0f8986838b0101610d56565b845250918301918301610de4565b509695505050505050565b5f60208284031215610e38575f80fd5b81516001600160401b0380821115610e4e575f80fd5b9083019081850360e0811215610e62575f80fd5b610e6a610980565b835181526080601f1983011215610e7f575f80fd5b610e87610980565b91506020840151825260408401516020830152606084015160408301526080840151606083015281602082015260a0840151915082821115610ec7575f80fd5b610ed387838601610da3565b604082015260c0840151915082821115610eeb575f80fd5b610ef787838601610d56565b60608201529695505050505050565b80516001600160801b0381168114610f1c575f80fd5b919050565b5f60608284031215610f31575f80fd5b604051606081016001600160401b0381118282101715610f5357610f5361096c565b60405282518152610f6660208401610f06565b6020820152610f7760408401610f06565b60408201529392505050565b604081525f83516020806040850152610f9f6060850183610925565b91508382038185015260a08201855183528186015182840152604086015160a0604085015281815180845260c08601915060c08160051b870101935084830192505f5b818110156110105760bf19878603018352610ffe858551610925565b94509285019291850191600101610fe2565b5050505060608601519150828103606084015261102d8183610925565b915050608085015161104a60808401826001600160a01b03169052565b5095945050505050565b5f8060408385031215611065575f80fd5b82516001600160401b0381111561107a575f80fd5b61108685828601610da3565b925050602083015160ff8116811461109c575f80fd5b809150509250929050565b808201808211156110c657634e487b7160e01b5f52601160045260245ffd5b92915050565b601f82111561111357805f5260205f20601f840160051c810160208510156110f15750805b601f840160051c820191505b81811015611110575f81556001016110fd565b50505b505050565b81516001600160401b038111156111315761113161096c565b6111458161113f8454610d1e565b846110cc565b602080601f831160018114611178575f84156111615750858301515b5f19600386901b1c1916600185901b1785556111cf565b5f85815260208120601f198616915b828110156111a657888601518255948401946001909101908401611187565b50858210156111c357878501515f19600388901b60f8161c191681555b505060018460011b0185555b50505050505056fea26469706673582212209f41575c6b5b9e1ba8bcd429c2a3cb98dff3d70680300cf8319b5d346963aba264736f6c63430008190033","sourceMap":"575:2167:28:-:0;;;732:320;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;934:4;940:6;948:5;566:10:0;;1269:95:48;;1322:31;;-1:-1:-1;;;1322:31:48;;1350:1;1322:31;;;2812:51:65;2785:18;;1322:31:48;;;;;;;1269:95;1373:32;1392:12;1373:18;:32::i;:::-;-1:-1:-1;588:12:0;;::::1;::::0;:5:::1;::::0;:12:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;610:16:0::1;::::0;;;;-1:-1:-1;;;;;636:14:0;;::::1;;::::0;965:16:28;;::::1;;::::0;-1:-1:-1;985:28:28;::::1;;::::0;1023:22:::1;::::0;-1:-1:-1;575:2167:28;;-1:-1:-1;;575:2167:28;2912:187:48;2985:16;3004:6;;-1:-1:-1;;;;;3020:17:48;;;-1:-1:-1;;;;;;3020:17:48;;;;;;3052:40;;3004:6;;;;;;;3052:40;;2985:16;3052:40;2975:124;2912:187;:::o;575:2167:28:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;575:2167:28;;;-1:-1:-1;575:2167:28;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;14:127:65;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:275;217:2;211:9;282:2;263:13;;-1:-1:-1;;259:27:65;247:40;;-1:-1:-1;;;;;302:34:65;;338:22;;;299:62;296:88;;;364:18;;:::i;:::-;400:2;393:22;146:275;;-1:-1:-1;146:275:65:o;426:193::-;521:13;;-1:-1:-1;;;;;563:31:65;;553:42;;543:70;;609:1;606;599:12;543:70;426:193;;;:::o;624:2037::-;821:6;829;837;845;853;861;914:3;902:9;893:7;889:23;885:33;882:53;;;931:1;928;921:12;882:53;958:16;;-1:-1:-1;;;;;986:30:65;;983:50;;;1029:1;1026;1019:12;983:50;1052:22;;1105:4;1097:13;;1093:27;-1:-1:-1;1083:55:65;;1134:1;1131;1124:12;1083:55;1157:9;;-1:-1:-1;;;;;1178:26:65;;1175:52;;;1207:18;;:::i;:::-;1247:38;1279:4;1274:2;1271:1;1267:10;1263:21;1247:38;:::i;:::-;1307:3;1331:2;1326:3;1319:15;1359:4;1354:3;1350:14;1343:21;;1411:7;1404:4;1398:2;1395:1;1391:10;1387:2;1383:19;1379:30;1376:43;1373:63;;;1432:1;1429;1422:12;1373:63;1464:4;1460:2;1456:13;1478:809;1527:4;1521:2;1518:1;1514:10;1510:2;1506:19;1502:30;1497:3;1494:39;1478:809;;;1609:10;;-1:-1:-1;;;;;1635:35:65;;1632:55;;;1683:1;1680;1673:12;1632:55;1745:7;1740:2;1726:11;1722:2;1718:20;1714:29;1710:43;1700:71;;1767:1;1764;1757:12;1700:71;1804:20;;;1826:4;1800:31;1794:38;-1:-1:-1;;;;;1848:26:65;;1845:52;;;1877:18;;:::i;:::-;1923:55;1966:2;1947:13;;-1:-1:-1;;1943:27:65;1972:4;1939:38;1923:55;:::i;:::-;2005:2;1998:5;1991:17;2067:7;2062:2;2057;2043:11;2039:2;2035:20;2031:29;2027:38;2024:51;2021:71;;;2088:1;2085;2078:12;2021:71;2160:2;2155;2141:11;2137:2;2133:20;2129:29;2122:4;2115:5;2111:16;2105:58;2210:1;2203:4;2198:2;2191:5;2187:14;2183:25;2176:36;2237:5;2232:3;2225:18;;;;2272:4;2267:3;2263:14;2256:21;;1560:4;1555:3;1551:14;1544:21;;1478:809;;;1482:3;2306:5;2296:15;;;;;;2351:4;2340:9;2336:20;2330:27;2320:37;;2376:65;2437:2;2426:9;2422:18;2376:65;:::i;:::-;2366:75;;2460:65;2521:2;2510:9;2506:18;2460:65;:::i;:::-;2450:75;;2544:66;2605:3;2594:9;2590:19;2544:66;:::i;:::-;2534:76;;2650:3;2639:9;2635:19;2629:26;2619:36;;624:2037;;;;;;;;:::o;2874:380::-;2953:1;2949:12;;;;2996;;;3017:61;;3071:4;3063:6;3059:17;3049:27;;3017:61;3124:2;3116:6;3113:14;3093:18;3090:38;3087:161;;3170:10;3165:3;3161:20;3158:1;3151:31;3205:4;3202:1;3195:15;3233:4;3230:1;3223:15;3087:161;;2874:380;;;:::o;3385:518::-;3487:2;3482:3;3479:11;3476:421;;;3523:5;3520:1;3513:16;3567:4;3564:1;3554:18;3637:2;3625:10;3621:19;3618:1;3614:27;3608:4;3604:38;3673:4;3661:10;3658:20;3655:47;;;-1:-1:-1;3696:4:65;3655:47;3751:2;3746:3;3742:12;3739:1;3735:20;3729:4;3725:31;3715:41;;3806:81;3824:2;3817:5;3814:13;3806:81;;;3883:1;3869:16;;3850:1;3839:13;3806:81;;;3810:3;;3476:421;3385:518;;;:::o;4079:1345::-;4199:10;;-1:-1:-1;;;;;4221:30:65;;4218:56;;;4254:18;;:::i;:::-;4283:97;4373:6;4333:38;4365:4;4359:11;4333:38;:::i;:::-;4327:4;4283:97;:::i;:::-;4435:4;;4492:2;4481:14;;4509:1;4504:663;;;;5211:1;5228:6;5225:89;;;-1:-1:-1;5280:19:65;;;5274:26;5225:89;-1:-1:-1;;4036:1:65;4032:11;;;4028:24;4024:29;4014:40;4060:1;4056:11;;;4011:57;5327:81;;4474:944;;4504:663;3332:1;3325:14;;;3369:4;3356:18;;-1:-1:-1;;4540:20:65;;;4658:236;4672:7;4669:1;4666:14;4658:236;;;4761:19;;;4755:26;4740:42;;4853:27;;;;4821:1;4809:14;;;;4688:19;;4658:236;;;4662:3;4922:6;4913:7;4910:19;4907:201;;;4983:19;;;4977:26;-1:-1:-1;;5066:1:65;5062:14;;;5078:3;5058:24;5054:37;5050:42;5035:58;5020:74;;4907:201;;;5154:1;5145:6;5142:1;5138:14;5134:22;5128:4;5121:36;4474:944;;;;;4079:1345;;:::o;:::-;575:2167:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{"contracts/GatewayVM.sol":{"GatewayVM":[{"start":2900,"length":20}]}}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b5060043610610081575f3560e01c80631d80051d146100855780635cd2525e146100b8578063715018a6146100e757806387c484fe146100f15780638da5cb5b146101065780638e5ea8df1461010e578063b50f2fbc14610121578063e3d1666e14610136578063f2fde38b14610157575b5f80fd5b6040517f000000000000000000000000000000000000000000000000000000000000000081526020015b60405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000005b6040516100af9190610911565b6100ef61016a565b005b6100f961017d565b6040516100af9190610953565b6100da610273565b6100ef61011c366004610a5b565b610281565b6101296102c8565b6040516100af9190610b17565b610149610144366004610b97565b61039c565b6040516100af929190610c5a565b6100ef610165366004610cc8565b61069a565b6101726106d7565b61017b5f610709565b565b6040516303a1bd6560e61b81526060906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063e86f59409061020e907f0000000000000000000000000000000000000000000000000000000000000000907f000000000000000000000000000000000000000000000000000000000000000090600401610cee565b602060405180830381865afa158015610229573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061024d9190610d07565b60405160200161025f91815260200190565b604051602081830303815290604052905090565b5f546001600160a01b031690565b6102896106d7565b805161029c90600190602084019061085b565b506040517fe621d803a0c96b9bbeea51d136777f6ea8a4ce0c4ac74f6645e18b4342e2fa07905f90a150565b60606001805480602002602001604051908101604052809291908181526020015f905b82821015610393578382905f5260205f2001805461030890610d1e565b80601f016020809104026020016040519081016040528092919081815260200182805461033490610d1e565b801561037f5780601f106103565761010080835404028352916020019161037f565b820191905f5260205f20905b81548152906001019060200180831161036257829003601f168201915b5050505050815260200190600101906102eb565b50505050905090565b60605f80858060200190518101906103b49190610d07565b90505f848060200190518101906103cb9190610e28565b805160405163b0b651eb60e01b81529192505f916001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169163b0b651eb9161043e917f000000000000000000000000000000000000000000000000000000000000000091600401610cee565b606060405180830381865afa158015610459573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061047d9190610f21565b8251909150831461055f5760405163b0b651eb60e01b81525f906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b0b651eb906104f8907f0000000000000000000000000000000000000000000000000000000000000000908890600401610cee565b606060405180830381865afa158015610513573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105379190610f21565b905061055d81602001516001600160801b031683602001516001600160801b0316610758565b505b5f61056d8360200151610801565b825190915081146105b85760405162461bcd60e51b815260206004820152601060248201526f13d40e881a5b9d985b1a59081c9bdbdd60821b60448201526064015b60405180910390fd5b6040805160a0810182525f8152602085810151810151908201528482015181830152606080860151908201526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016608082015290516324a8807560e21b815273__$011ed85421b307e5206de383929e31be73$__916392a201d491610649918c91600401610f83565b5f60405180830381865af4158015610663573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261068a9190810190611054565b9550955050505050935093915050565b6106a26106d7565b6001600160a01b0381166106cb575f604051631e4fbdf760e01b81526004016105af9190610911565b6106d481610709565b50565b336106e0610273565b6001600160a01b03161461017b573360405163118cdaa760e01b81526004016105af9190610911565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b816107837f0000000000000000000000000000000000000000000000000000000000000000836110a7565b10156107d257604051632a54241d60e21b815260048101839052602481018290527f000000000000000000000000000000000000000000000000000000000000000060448201526064016105af565b818111156107fd5760405163b356ade760e01b815260048101839052602481018290526044016105af565b5050565b5f815f015182602001518360400151846060015160405160200161083e949392919093845260208401929092526040830152606082015260800190565b604051602081830303815290604052805190602001209050919050565b828054828255905f5260205f2090810192821561089f579160200282015b8281111561089f578251829061088f9082611118565b5091602001919060010190610879565b506108ab9291506108af565b5090565b808211156108ab575f6108c282826108cb565b506001016108af565b5080546108d790610d1e565b5f825580601f106108e6575050565b601f0160209004905f5260205f20908101906106d491905b808211156108ab575f81556001016108fe565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6109656020830184610925565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156109a2576109a261096c565b60405290565b604051601f8201601f191681016001600160401b03811182821017156109d0576109d061096c565b604052919050565b5f6001600160401b038211156109f0576109f061096c565b5060051b60200190565b5f6001600160401b03821115610a1257610a1261096c565b50601f01601f191660200190565b5f610a32610a2d846109fa565b6109a8565b9050828152838383011115610a45575f80fd5b828260208301375f602084830101529392505050565b5f6020808385031215610a6c575f80fd5b82356001600160401b0380821115610a82575f80fd5b818501915085601f830112610a95575f80fd5b8135610aa3610a2d826109d8565b81815260059190911b83018401908481019088831115610ac1575f80fd5b8585015b83811015610b0a57803585811115610adb575f80fd5b8601603f81018b13610aeb575f80fd5b610afc8b8983013560408401610a20565b845250918601918601610ac5565b5098975050505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b82811015610b6c57603f19888603018452610b5a858351610925565b94509285019290850190600101610b3e565b5092979650505050505050565b5f82601f830112610b88575f80fd5b61096583833560208501610a20565b5f805f60608486031215610ba9575f80fd5b83356001600160401b0380821115610bbf575f80fd5b610bcb87838801610b79565b94506020860135915080821115610be0575f80fd5b9085019060208288031215610bf3575f80fd5b604051602081018181108382111715610c0e57610c0e61096c565b604052823582811115610c1f575f80fd5b610c2b89828601610b79565b82525093506040860135915080821115610c43575f80fd5b50610c5086828701610b79565b9150509250925092565b5f604082016040835280855180835260608501915060608160051b860101925060208088015f5b83811015610caf57605f19888703018552610c9d868351610925565b95509382019390820190600101610c81565b50505050508091505060ff831660208301529392505050565b5f60208284031215610cd8575f80fd5b81356001600160a01b0381168114610965575f80fd5b6001600160a01b03929092168252602082015260400190565b5f60208284031215610d17575f80fd5b5051919050565b600181811c90821680610d3257607f821691505b602082108103610d5057634e487b7160e01b5f52602260045260245ffd5b50919050565b5f82601f830112610d65575f80fd5b8151610d73610a2d826109fa565b818152846020838601011115610d87575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f82601f830112610db2575f80fd5b81516020610dc2610a2d836109d8565b82815260059290921b84018101918181019086841115610de0575f80fd5b8286015b84811015610e1d5780516001600160401b03811115610e01575f80fd5b610e0f8986838b0101610d56565b845250918301918301610de4565b509695505050505050565b5f60208284031215610e38575f80fd5b81516001600160401b0380821115610e4e575f80fd5b9083019081850360e0811215610e62575f80fd5b610e6a610980565b835181526080601f1983011215610e7f575f80fd5b610e87610980565b91506020840151825260408401516020830152606084015160408301526080840151606083015281602082015260a0840151915082821115610ec7575f80fd5b610ed387838601610da3565b604082015260c0840151915082821115610eeb575f80fd5b610ef787838601610d56565b60608201529695505050505050565b80516001600160801b0381168114610f1c575f80fd5b919050565b5f60608284031215610f31575f80fd5b604051606081016001600160401b0381118282101715610f5357610f5361096c565b60405282518152610f6660208401610f06565b6020820152610f7760408401610f06565b60408201529392505050565b604081525f83516020806040850152610f9f6060850183610925565b91508382038185015260a08201855183528186015182840152604086015160a0604085015281815180845260c08601915060c08160051b870101935084830192505f5b818110156110105760bf19878603018352610ffe858551610925565b94509285019291850191600101610fe2565b5050505060608601519150828103606084015261102d8183610925565b915050608085015161104a60808401826001600160a01b03169052565b5095945050505050565b5f8060408385031215611065575f80fd5b82516001600160401b0381111561107a575f80fd5b61108685828601610da3565b925050602083015160ff8116811461109c575f80fd5b809150509250929050565b808201808211156110c657634e487b7160e01b5f52601160045260245ffd5b92915050565b601f82111561111357805f5260205f20601f840160051c810160208510156110f15750805b601f840160051c820191505b81811015611110575f81556001016110fd565b50505b505050565b81516001600160401b038111156111315761113161096c565b6111458161113f8454610d1e565b846110cc565b602080601f831160018114611178575f84156111615750858301515b5f19600386901b1c1916600185901b1785556111cf565b5f85815260208120601f198616915b828110156111a657888601518255948401946001909101908401611187565b50858210156111c357878501515f19600388901b60f8161c191681555b505060018460011b0185555b50505050505056fea26469706673582212209f41575c6b5b9e1ba8bcd429c2a3cb98dff3d70680300cf8319b5d346963aba264736f6c63430008190033","sourceMap":"575:2167:28:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;896:84:0;;;966:7;160:25:65;;148:2;133:18;896:84:0;;;;;;;;986:89;1062:6;986:89;;;;;;;:::i;2293:101:48:-;;;:::i;:::-;;1058:151:28;;;:::i;:::-;;;;;;;:::i;1638:85:48:-;;;:::i;663:129:0:-;;;;;;:::i;:::-;;:::i;798:92::-;;;:::i;:::-;;;;;;;:::i;1369:1371:28:-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;2543:215:48:-;;;;;;:::i;:::-;;:::i;2293:101::-;1531:13;:11;:13::i;:::-;2357:30:::1;2384:1;2357:18;:30::i;:::-;2293:101::o:0;1058:151:28:-;1151:50;;-1:-1:-1;;;1151:50:28;;1109:12;;-1:-1:-1;;;;;1151:13:28;:29;;;;:50;;1181:7;;1190:10;;1151:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1140:62;;;;;;160:25:65;;148:2;133:18;;14:177;1140:62:28;;;;;;;;;;;;;1133:69;;1058:151;:::o;1638:85:48:-;1684:7;1710:6;-1:-1:-1;;;;;1710:6:48;;1638:85::o;663:129:0:-;1531:13:48;:11;:13::i;:::-;738:12:0;;::::1;::::0;:5:::1;::::0;:12:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;765:20:0::1;::::0;::::1;::::0;;;::::1;663:129:::0;:::o;798:92::-;844:15;878:5;871:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;798:92;:::o;1369:1371:28:-;1517:14;1533;1559:20;1593:7;1582:30;;;;;;;;;;;;:::i;:::-;1559:53;;1622:21;1657:5;1646:33;;;;;;;;;;;;:::i;:::-;1785:13;;1726:82;;-1:-1:-1;;;1726:82:28;;1622:57;;-1:-1:-1;1689:34:28;;-1:-1:-1;;;;;1726:13:28;:23;;;;:82;;1763:7;;1726:82;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1822:13;;1689:119;;-1:-1:-1;1822:29:28;;1818:472;;1905:76;;-1:-1:-1;;;1905:76:28;;1867:35;;-1:-1:-1;;;;;1905:13:28;:23;;;;:76;;1946:7;;1955:12;;1905:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1867:114;;1995:49;2008:7;:17;;;-1:-1:-1;;;;;1995:49:28;2027:6;:16;;;-1:-1:-1;;;;;1995:49:28;:12;:49::i;:::-;1853:437;1818:472;2299:20;2322:46;2350:1;:17;;;2322:27;:46::i;:::-;2402:17;;2299:69;;-1:-1:-1;2386:33:28;;2378:62;;;;-1:-1:-1;;;2378:62:28;;11624:2:65;2378:62:28;;;11606:21:65;11663:2;11643:18;;;11636:30;-1:-1:-1;;;11682:18:65;;;11675:46;11738:18;;2378:62:28;;;;;;;;;2529:190;;;;;;;;-1:-1:-1;2529:190:28;;;2587:17;;;;:27;;;2529:190;;;;2636:8;;;;2529:190;;;;;2666:7;;;;2529:190;;;;-1:-1:-1;;;;;2695:6:28;2529:190;;;;;2469:264;;-1:-1:-1;;;2469:264:28;;:9;;:21;;:264;;2508:3;;2469:264;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2469:264:28;;;;;;;;;;;;:::i;:::-;2450:283;;;;;;;;1369:1371;;;;;;:::o;2543:215:48:-;1531:13;:11;:13::i;:::-;-1:-1:-1;;;;;2627:22:48;::::1;2623:91;;2700:1;2672:31;;-1:-1:-1::0;;;2672:31:48::1;;;;;;;;:::i;2623:91::-;2723:28;2742:8;2723:18;:28::i;:::-;2543:215:::0;:::o;1796:162::-;735:10:50;1855:7:48;:5;:7::i;:::-;-1:-1:-1;;;;;1855:23:48;;1851:101;;735:10:50;1901:40:48;;-1:-1:-1;;;1901:40:48;;;;;;;;:::i;2912:187::-;2985:16;3004:6;;-1:-1:-1;;;;;3020:17:48;;;-1:-1:-1;;;;;;3020:17:48;;;;;;3052:40;;3004:6;;;;;;;3052:40;;2985:16;3052:40;2975:124;2912:187;:::o;1081:211:0:-;1176:6;1160:13;1166:7;1160:3;:13;:::i;:::-;:22;1156:69;;;1191:34;;-1:-1:-1;;;1191:34:0;;;;;14295:25:65;;;14336:18;;;14329:34;;;1217:7:0;14379:18:65;;;14372:34;14268:18;;1191:34:0;14093:319:65;1156:69:0;1245:6;1239:3;:12;1235:50;;;1260:25;;-1:-1:-1;;;1260:25:0;;;;;14591::65;;;14632:18;;;14625:34;;;14564:18;;1260:25:0;14417:248:65;1235:50:0;1081:211;;:::o;4937:384:60:-;5036:7;5113:16;:24;;;5155:16;:26;;;5199:16;:41;;;5258:16;:32;;;5085:219;;;;;;;;;;14901:25:65;;;14957:2;14942:18;;14935:34;;;;15000:2;14985:18;;14978:34;15043:2;15028:18;;15021:34;14888:3;14873:19;;14670:391;5085:219:60;;;;;;;;;;;;;5062:252;;;;;;5055:259;;4937:384;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;321:226:65;-1:-1:-1;;;;;508:32:65;;;;490:51;;478:2;463:18;;321:226::o;552:288::-;593:3;631:5;625:12;658:6;653:3;646:19;714:6;707:4;700:5;696:16;689:4;684:3;680:14;674:47;766:1;759:4;750:6;745:3;741:16;737:27;730:38;829:4;822:2;818:7;813:2;805:6;801:15;797:29;792:3;788:39;784:50;777:57;;;552:288;;;;:::o;845:217::-;992:2;981:9;974:21;955:4;1012:44;1052:2;1041:9;1037:18;1029:6;1012:44;:::i;:::-;1004:52;845:217;-1:-1:-1;;;845:217:65:o;1275:127::-;1336:10;1331:3;1327:20;1324:1;1317:31;1367:4;1364:1;1357:15;1391:4;1388:1;1381:15;1407:253;1479:2;1473:9;1521:4;1509:17;;-1:-1:-1;;;;;1541:34:65;;1577:22;;;1538:62;1535:88;;;1603:18;;:::i;:::-;1639:2;1632:22;1407:253;:::o;1665:275::-;1736:2;1730:9;1801:2;1782:13;;-1:-1:-1;;1778:27:65;1766:40;;-1:-1:-1;;;;;1821:34:65;;1857:22;;;1818:62;1815:88;;;1883:18;;:::i;:::-;1919:2;1912:22;1665:275;;-1:-1:-1;1665:275:65:o;1945:182::-;2004:4;-1:-1:-1;;;;;2026:30:65;;2023:56;;;2059:18;;:::i;:::-;-1:-1:-1;2104:1:65;2100:14;2116:4;2096:25;;1945:182::o;2132:187::-;2181:4;-1:-1:-1;;;;;2203:30:65;;2200:56;;;2236:18;;:::i;:::-;-1:-1:-1;2302:2:65;2281:15;-1:-1:-1;;2277:29:65;2308:4;2273:40;;2132:187::o;2324:338::-;2389:5;2418:53;2434:36;2463:6;2434:36;:::i;:::-;2418:53;:::i;:::-;2409:62;;2494:6;2487:5;2480:21;2534:3;2525:6;2520:3;2516:16;2513:25;2510:45;;;2551:1;2548;2541:12;2510:45;2600:6;2595:3;2588:4;2581:5;2577:16;2564:43;2654:1;2647:4;2638:6;2631:5;2627:18;2623:29;2616:40;2324:338;;;;;:::o;2667:1197::-;2761:6;2792:2;2835;2823:9;2814:7;2810:23;2806:32;2803:52;;;2851:1;2848;2841:12;2803:52;2878:23;;-1:-1:-1;;;;;2950:14:65;;;2947:34;;;2977:1;2974;2967:12;2947:34;3015:6;3004:9;3000:22;2990:32;;3060:7;3053:4;3049:2;3045:13;3041:27;3031:55;;3082:1;3079;3072:12;3031:55;3118:2;3105:16;3141:59;3157:42;3196:2;3157:42;:::i;3141:59::-;3234:15;;;3316:1;3312:10;;;;3304:19;;3300:28;;;3265:12;;;;3340:19;;;3337:39;;;3372:1;3369;3362:12;3337:39;3404:2;3400;3396:11;3416:418;3432:6;3427:3;3424:15;3416:418;;;3518:3;3505:17;3554:2;3541:11;3538:19;3535:39;;;3570:1;3567;3560:12;3535:39;3597:20;;3652:2;3644:11;;3640:25;-1:-1:-1;3630:53:65;;3679:1;3676;3669:12;3630:53;3708:83;3783:7;3777:2;3773;3769:11;3756:25;3751:2;3747;3743:11;3708:83;:::i;:::-;3696:96;;-1:-1:-1;3812:12:65;;;;3449;;3416:418;;;-1:-1:-1;3853:5:65;2667:1197;-1:-1:-1;;;;;;;;2667:1197:65:o;3869:802::-;4031:4;4060:2;4100;4089:9;4085:18;4130:2;4119:9;4112:21;4153:6;4188;4182:13;4219:6;4211;4204:22;4257:2;4246:9;4242:18;4235:25;;4319:2;4309:6;4306:1;4302:14;4291:9;4287:30;4283:39;4269:53;;4357:2;4349:6;4345:15;4378:1;4388:254;4402:6;4399:1;4396:13;4388:254;;;4495:2;4491:7;4479:9;4471:6;4467:22;4463:36;4458:3;4451:49;4523:39;4555:6;4546;4540:13;4523:39;:::i;:::-;4513:49;-1:-1:-1;4620:12:65;;;;4585:15;;;;4424:1;4417:9;4388:254;;;-1:-1:-1;4659:6:65;;3869:802;-1:-1:-1;;;;;;;3869:802:65:o;4676:221::-;4718:5;4771:3;4764:4;4756:6;4752:17;4748:27;4738:55;;4789:1;4786;4779:12;4738:55;4811:80;4887:3;4878:6;4865:20;4858:4;4850:6;4846:17;4811:80;:::i;4902:1153::-;5029:6;5037;5045;5098:2;5086:9;5077:7;5073:23;5069:32;5066:52;;;5114:1;5111;5104:12;5066:52;5141:23;;-1:-1:-1;;;;;5213:14:65;;;5210:34;;;5240:1;5237;5230:12;5210:34;5263:49;5304:7;5295:6;5284:9;5280:22;5263:49;:::i;:::-;5253:59;;5365:2;5354:9;5350:18;5337:32;5321:48;;5394:2;5384:8;5381:16;5378:36;;;5410:1;5407;5400:12;5378:36;5433:24;;;;5491:2;5473:16;;;5469:25;5466:45;;;5507:1;5504;5497:12;5466:45;5540:2;5534:9;5582:2;5574:6;5570:15;5635:6;5623:10;5620:22;5615:2;5603:10;5600:18;5597:46;5594:72;;;5646:18;;:::i;:::-;5682:2;5675:22;5722:16;;5750;;;5747:36;;;5779:1;5776;5769:12;5747:36;5807:44;5843:7;5832:8;5828:2;5824:17;5807:44;:::i;:::-;5792:60;;-1:-1:-1;5799:6:65;-1:-1:-1;5930:2:65;5915:18;;5902:32;;-1:-1:-1;5946:16:65;;;5943:36;;;5975:1;5972;5965:12;5943:36;;5998:51;6041:7;6030:8;6019:9;6015:24;5998:51;:::i;:::-;5988:61;;;4902:1153;;;;;:::o;6060:884::-;6244:4;6292:2;6281:9;6277:18;6322:2;6311:9;6304:21;6345:6;6380;6374:13;6411:6;6403;6396:22;6449:2;6438:9;6434:18;6427:25;;6511:2;6501:6;6498:1;6494:14;6483:9;6479:30;6475:39;6461:53;;6533:4;6572;6564:6;6560:17;6595:1;6605:254;6619:6;6616:1;6613:13;6605:254;;;6712:2;6708:7;6696:9;6688:6;6684:22;6680:36;6675:3;6668:49;6740:39;6772:6;6763;6757:13;6740:39;:::i;:::-;6730:49;-1:-1:-1;6837:12:65;;;;6802:15;;;;6641:1;6634:9;6605:254;;;6609:3;;;;;6876:6;6868:14;;;6932:4;6924:6;6920:17;6913:4;6902:9;6898:20;6891:47;6060:884;;;;;:::o;6949:286::-;7008:6;7061:2;7049:9;7040:7;7036:23;7032:32;7029:52;;;7077:1;7074;7067:12;7029:52;7103:23;;-1:-1:-1;;;;;7155:31:65;;7145:42;;7135:70;;7201:1;7198;7191:12;7240:274;-1:-1:-1;;;;;7432:32:65;;;;7414:51;;7496:2;7481:18;;7474:34;7402:2;7387:18;;7240:274::o;7519:184::-;7589:6;7642:2;7630:9;7621:7;7617:23;7613:32;7610:52;;;7658:1;7655;7648:12;7610:52;-1:-1:-1;7681:16:65;;7519:184;-1:-1:-1;7519:184:65:o;7708:380::-;7787:1;7783:12;;;;7830;;;7851:61;;7905:4;7897:6;7893:17;7883:27;;7851:61;7958:2;7950:6;7947:14;7927:18;7924:38;7921:161;;8004:10;7999:3;7995:20;7992:1;7985:31;8039:4;8036:1;8029:15;8067:4;8064:1;8057:15;7921:161;;7708:380;;;:::o;8093:460::-;8146:5;8199:3;8192:4;8184:6;8180:17;8176:27;8166:55;;8217:1;8214;8207:12;8166:55;8246:6;8240:13;8277:49;8293:32;8322:2;8293:32;:::i;8277:49::-;8351:2;8342:7;8335:19;8397:3;8390:4;8385:2;8377:6;8373:15;8369:26;8366:35;8363:55;;;8414:1;8411;8404:12;8363:55;8472:2;8465:4;8457:6;8453:17;8446:4;8437:7;8433:18;8427:48;8520:1;8495:16;;;8513:4;8491:27;8484:38;;;;8499:7;8093:460;-1:-1:-1;;;8093:460:65:o;8558:823::-;8621:5;8674:3;8667:4;8659:6;8655:17;8651:27;8641:55;;8692:1;8689;8682:12;8641:55;8721:6;8715:13;8747:4;8771:59;8787:42;8826:2;8787:42;:::i;8771:59::-;8864:15;;;8950:1;8946:10;;;;8934:23;;8930:32;;;8895:12;;;;8974:15;;;8971:35;;;9002:1;8999;8992:12;8971:35;9038:2;9030:6;9026:15;9050:302;9066:6;9061:3;9058:15;9050:302;;;9139:10;;-1:-1:-1;;;;;9165:35:65;;9162:55;;;9213:1;9210;9203:12;9162:55;9242:67;9305:3;9300:2;9286:11;9278:6;9274:24;9270:33;9242:67;:::i;:::-;9230:80;;-1:-1:-1;9330:12:65;;;;9083;;9050:302;;;-1:-1:-1;9370:5:65;8558:823;-1:-1:-1;;;;;;8558:823:65:o;9386:1228::-;9486:6;9539:2;9527:9;9518:7;9514:23;9510:32;9507:52;;;9555:1;9552;9545:12;9507:52;9582:16;;-1:-1:-1;;;;;9647:14:65;;;9644:34;;;9674:1;9671;9664:12;9644:34;9697:22;;;;9738:16;;;9774:4;9766:13;;9763:33;;;9792:1;9789;9782:12;9763:33;9818:22;;:::i;:::-;9863:9;;9849:24;;9907:4;-1:-1:-1;;9889:16:65;;9885:27;9882:47;;;9925:1;9922;9915:12;9882:47;9953:22;;:::i;:::-;9938:37;;10014:2;10010;10006:11;10000:18;9991:7;9984:35;10067:2;10063;10059:11;10053:18;10048:2;10039:7;10035:16;10028:44;10120:2;10116;10112:11;10106:18;10101:2;10092:7;10088:16;10081:44;10173:4;10169:2;10165:13;10159:20;10154:2;10145:7;10141:16;10134:46;10212:7;10207:2;10200:5;10196:14;10189:31;10259:3;10255:2;10251:12;10245:19;10229:35;;10289:2;10279:8;10276:16;10273:36;;;10305:1;10302;10295:12;10273:36;10341:65;10398:7;10387:8;10383:2;10379:17;10341:65;:::i;:::-;10336:2;10329:5;10325:14;10318:89;10446:3;10442:2;10438:12;10432:19;10416:35;;10476:2;10466:8;10463:16;10460:36;;;10492:1;10489;10482:12;10460:36;10528:55;10575:7;10564:8;10560:2;10556:17;10528:55;:::i;:::-;10523:2;10512:14;;10505:79;10516:5;9386:1228;-1:-1:-1;;;;;;9386:1228:65:o;10619:177::-;10698:13;;-1:-1:-1;;;;;10740:31:65;;10730:42;;10720:70;;10786:1;10783;10776:12;10720:70;10619:177;;;:::o;10801:616::-;10904:6;10957:2;10945:9;10936:7;10932:23;10928:32;10925:52;;;10973:1;10970;10963:12;10925:52;11006:2;11000:9;11048:2;11036:15;;-1:-1:-1;;;;;11066:34:65;;11102:22;;;11063:62;11060:88;;;11128:18;;:::i;:::-;11164:2;11157:22;11203:16;;11188:32;;11253:49;11298:2;11283:18;;11253:49;:::i;:::-;11248:2;11240:6;11236:15;11229:74;11336:49;11381:2;11370:9;11366:18;11336:49;:::i;:::-;11331:2;11319:15;;11312:74;11323:6;10801:616;-1:-1:-1;;;10801:616:65:o;11767:1569::-;12058:2;12047:9;12040:21;12021:4;12096:6;12090:13;12122:4;12162:2;12157;12146:9;12142:18;12135:30;12185:50;12231:2;12220:9;12216:18;12202:12;12185:50;:::i;:::-;12174:61;;12280:9;12275:3;12271:19;12266:2;12255:9;12251:18;12244:47;12323:4;12318:3;12314:14;12355:6;12349:13;12344:3;12337:26;12411:2;12403:6;12399:15;12393:22;12388:2;12383:3;12379:12;12372:44;12465:2;12457:6;12453:15;12447:22;12499:4;12494:2;12489:3;12485:12;12478:26;12524:6;12559:14;12553:21;12598:6;12590;12583:22;12630:3;12625;12621:13;12614:20;;12687:3;12677:6;12674:1;12670:14;12665:3;12661:24;12657:34;12643:48;;12734:2;12718:14;12714:23;12700:37;;12755:1;12765:249;12779:6;12776:1;12773:13;12765:249;;;12866:3;12862:8;12856:3;12848:6;12844:16;12840:31;12835:3;12828:44;12895:39;12927:6;12918;12912:13;12895:39;:::i;:::-;12885:49;-1:-1:-1;12957:15:65;;;;12992:12;;;;12801:1;12794:9;12765:249;;;12769:3;;;;13063:2;13055:6;13051:15;13045:22;13023:44;;13109:3;13101:6;13097:16;13092:2;13087:3;13083:12;13076:38;13137:40;13170:6;13154:14;13137:40;:::i;:::-;13123:54;;;13226:4;13218:6;13214:17;13208:24;13241:66;13301:4;13296:3;13292:14;13276;-1:-1:-1;;;;;278:31:65;266:44;;196:120;13241:66;-1:-1:-1;13324:6:65;11767:1569;-1:-1:-1;;;;;11767:1569:65:o;13341:520::-;13452:6;13460;13513:2;13501:9;13492:7;13488:23;13484:32;13481:52;;;13529:1;13526;13519:12;13481:52;13556:16;;-1:-1:-1;;;;;13584:30:65;;13581:50;;;13627:1;13624;13617:12;13581:50;13650:70;13712:7;13703:6;13692:9;13688:22;13650:70;:::i;:::-;13640:80;;;13763:2;13752:9;13748:18;13742:25;13807:4;13800:5;13796:16;13789:5;13786:27;13776:55;;13827:1;13824;13817:12;13776:55;13850:5;13840:15;;;13341:520;;;;;:::o;13866:222::-;13931:9;;;13952:10;;;13949:133;;;14004:10;13999:3;13995:20;13992:1;13985:31;14039:4;14036:1;14029:15;14067:4;14064:1;14057:15;13949:133;13866:222;;;;:::o;15192:518::-;15294:2;15289:3;15286:11;15283:421;;;15330:5;15327:1;15320:16;15374:4;15371:1;15361:18;15444:2;15432:10;15428:19;15425:1;15421:27;15415:4;15411:38;15480:4;15468:10;15465:20;15462:47;;;-1:-1:-1;15503:4:65;15462:47;15558:2;15553:3;15549:12;15546:1;15542:20;15536:4;15532:31;15522:41;;15613:81;15631:2;15624:5;15621:13;15613:81;;;15690:1;15676:16;;15657:1;15646:13;15613:81;;;15617:3;;15283:421;15192:518;;;:::o;15886:1345::-;16006:10;;-1:-1:-1;;;;;16028:30:65;;16025:56;;;16061:18;;:::i;:::-;16090:97;16180:6;16140:38;16172:4;16166:11;16140:38;:::i;:::-;16134:4;16090:97;:::i;:::-;16242:4;;16299:2;16288:14;;16316:1;16311:663;;;;17018:1;17035:6;17032:89;;;-1:-1:-1;17087:19:65;;;17081:26;17032:89;-1:-1:-1;;15843:1:65;15839:11;;;15835:24;15831:29;15821:40;15867:1;15863:11;;;15818:57;17134:81;;16281:944;;16311:663;15139:1;15132:14;;;15176:4;15163:18;;-1:-1:-1;;16347:20:65;;;16465:236;16479:7;16476:1;16473:14;16465:236;;;16568:19;;;16562:26;16547:42;;16660:27;;;;16628:1;16616:14;;;;16495:19;;16465:236;;;16469:3;16729:6;16720:7;16717:19;16714:201;;;16790:19;;;16784:26;-1:-1:-1;;16873:1:65;16869:14;;;16885:3;16865:24;16861:37;16857:42;16842:58;16827:74;;16714:201;;;16961:1;16952:6;16949:1;16945:14;16941:22;16935:4;16928:36;16281:944;;;;;15886:1345;;:::o","linkReferences":{"contracts/GatewayVM.sol":{"GatewayVM":[{"start":1569,"length":20}]}},"immutableReferences":{"20":[{"start":138,"length":32},{"start":1886,"length":32},{"start":1958,"length":32}],"23":[{"start":186,"length":32},{"start":1518,"length":32}],"9108":[{"start":452,"length":32},{"start":1046,"length":32},{"start":1230,"length":32}],"9111":[{"start":407,"length":32},{"start":1001,"length":32},{"start":1185,"length":32}],"9113":[{"start":486,"length":32}]}},"methodIdentifiers":{"gatewayURLs()":"b50f2fbc","getHooks()":"5cd2525e","getLatestContext()":"87c484fe","getStorageValues(bytes,(bytes),bytes)":"e3d1666e","getWindow()":"1d80051d","owner()":"8da5cb5b","renounceOwnership()":"715018a6","setGatewayURLs(string[])":"8e5ea8df","transferOwnership(address)":"f2fde38b"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"urls\",\"type\":\"string[]\"},{\"internalType\":\"uint256\",\"name\":\"window\",\"type\":\"uint256\"},{\"internalType\":\"contract IVerifierHooks\",\"name\":\"hooks\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"portal\",\"type\":\"address\"},{\"internalType\":\"contract IOPOutputFinder\",\"name\":\"outputFinder\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"minAgeSec\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"latest\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"got\",\"type\":\"uint256\"}],\"name\":\"CommitTooNew\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"latest\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"got\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"window\",\"type\":\"uint256\"}],\"name\":\"CommitTooOld\",\"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\":[],\"name\":\"GatewayURLsChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"gatewayURLs\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"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\":[],\"name\":\"getWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"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\":\"string[]\",\"name\":\"urls\",\"type\":\"string[]\"}],\"name\":\"setGatewayURLs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"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/op/OPVerifier.sol\":\"OPVerifier\"},\"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/AbstractVerifier.sol\":{\"keccak256\":\"0x4868ee9c8ade05b23ce93c2fce0507588583597df087f9494a69df005cff2652\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e822d963a8461edcf72a7e500b53b0bfaf0d98412ae5da3287246cc491ef705\",\"dweb:/ipfs/QmU8NJXEg5oFCoahg9F8qtQoWsW1sYfKmDCVD7vtNX9qbZ\"]},\"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/op/OPVerifier.sol\":{\"keccak256\":\"0x9199d3b29173aa51a6d077e6585b3a46db57532d4408fb2fb5f0c1dd27289af4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5b19fa95f6fb4ee4c1c303cd776d2ec71e2b553ca7f4d484476015a0236a8ebf\",\"dweb:/ipfs/QmZebiobhqRPWhYaAjUuJiEk1SCP83vpSSo5XMj6AnFMp7\"]},\"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/optimism/packages/contracts-bedrock/src/libraries/Bytes.sol\":{\"keccak256\":\"0x827f47d123b0fdf3b08816d5b33831811704dbf4e554e53f2269354f6bba8859\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3137ac7204d30a245a8b0d67aa6da5286f1bd8c90379daab561f84963b6db782\",\"dweb:/ipfs/QmWRhisw3axJK833gUScs23ETh2MLFbVzzqzYVMKSDN3S9\"]},\"lib/optimism/packages/contracts-bedrock/src/libraries/Encoding.sol\":{\"keccak256\":\"0x30752a85ed38dbbdb0a36adcce6f3c5dffa5807623b6cab903dd6bf28611cc66\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1356d3f99888f7ed0f71315cfe4685b4a0cf56d40560dbac10badcb6cf0ee989\",\"dweb:/ipfs/QmPsgPFBrrwTxu7Nr9VYtMv9gL3fFvodyv9BgaJuMqSmb7\"]},\"lib/optimism/packages/contracts-bedrock/src/libraries/Hashing.sol\":{\"keccak256\":\"0x44e2b2dcfffc39c0fc95ccd3c2118c7e7585fadf3dca327877d5756c7d4b21c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c89e0d9cfcb08a0d3c46c85367a32bbd9703468ba4c0c5bb6e124c1d173b26b\",\"dweb:/ipfs/QmaY3nQHBBhHK1wrurVXiEeNL8hfZ1pRmhpqW44tFDJnDf\"]},\"lib/optimism/packages/contracts-bedrock/src/libraries/Types.sol\":{\"keccak256\":\"0x75900d651301940d24c00d14f0b3b6cbd6dcf379173ceaa31d9bf5be934a9aa4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99c2632c5bf4fa3982391c32110eec9fa07917b483b2442cbaf18bdde5bdb24e\",\"dweb:/ipfs/QmSUs6Amkeootf5gKGbKi4mJpvhN2U8i1ED6ef2dskV5xc\"]},\"lib/optimism/packages/contracts-bedrock/src/libraries/rlp/RLPWriter.sol\":{\"keccak256\":\"0x60ac401490f321c9c55e996a2c65151cd5e60de5f8f297e7c94d541c29820bb6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://070f5814db07e4a89173d44a36d90e4261ce530f7336034c01635347f2c2d88b\",\"dweb:/ipfs/QmXqr9yW5Kc8MYgr5wSehU5AiqS9pZ4FKxv7vwiwpZCcyV\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.25+commit.b61c2a91"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"string[]","name":"urls","type":"string[]"},{"internalType":"uint256","name":"window","type":"uint256"},{"internalType":"contract IVerifierHooks","name":"hooks","type":"address"},{"internalType":"address","name":"portal","type":"address"},{"internalType":"contract IOPOutputFinder","name":"outputFinder","type":"address"},{"internalType":"uint256","name":"minAgeSec","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"latest","type":"uint256"},{"internalType":"uint256","name":"got","type":"uint256"}],"type":"error","name":"CommitTooNew"},{"inputs":[{"internalType":"uint256","name":"latest","type":"uint256"},{"internalType":"uint256","name":"got","type":"uint256"},{"internalType":"uint256","name":"window","type":"uint256"}],"type":"error","name":"CommitTooOld"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"type":"error","name":"OwnableInvalidOwner"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"OwnableUnauthorizedAccount"},{"inputs":[],"type":"event","name":"GatewayURLsChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"gatewayURLs","outputs":[{"internalType":"string[]","name":"","type":"string[]"}]},{"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":[],"stateMutability":"view","type":"function","name":"getWindow","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"string[]","name":"urls","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"setGatewayURLs"},{"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/op/OPVerifier.sol":"OPVerifier"},"evmVersion":"cancun","libraries":{}},"sources":{"contracts/AbstractVerifier.sol":{"keccak256":"0x4868ee9c8ade05b23ce93c2fce0507588583597df087f9494a69df005cff2652","urls":["bzz-raw://9e822d963a8461edcf72a7e500b53b0bfaf0d98412ae5da3287246cc491ef705","dweb:/ipfs/QmU8NJXEg5oFCoahg9F8qtQoWsW1sYfKmDCVD7vtNX9qbZ"],"license":"MIT"},"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/op/OPVerifier.sol":{"keccak256":"0x9199d3b29173aa51a6d077e6585b3a46db57532d4408fb2fb5f0c1dd27289af4","urls":["bzz-raw://5b19fa95f6fb4ee4c1c303cd776d2ec71e2b553ca7f4d484476015a0236a8ebf","dweb:/ipfs/QmZebiobhqRPWhYaAjUuJiEk1SCP83vpSSo5XMj6AnFMp7"],"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/optimism/packages/contracts-bedrock/src/libraries/Bytes.sol":{"keccak256":"0x827f47d123b0fdf3b08816d5b33831811704dbf4e554e53f2269354f6bba8859","urls":["bzz-raw://3137ac7204d30a245a8b0d67aa6da5286f1bd8c90379daab561f84963b6db782","dweb:/ipfs/QmWRhisw3axJK833gUScs23ETh2MLFbVzzqzYVMKSDN3S9"],"license":"MIT"},"lib/optimism/packages/contracts-bedrock/src/libraries/Encoding.sol":{"keccak256":"0x30752a85ed38dbbdb0a36adcce6f3c5dffa5807623b6cab903dd6bf28611cc66","urls":["bzz-raw://1356d3f99888f7ed0f71315cfe4685b4a0cf56d40560dbac10badcb6cf0ee989","dweb:/ipfs/QmPsgPFBrrwTxu7Nr9VYtMv9gL3fFvodyv9BgaJuMqSmb7"],"license":"MIT"},"lib/optimism/packages/contracts-bedrock/src/libraries/Hashing.sol":{"keccak256":"0x44e2b2dcfffc39c0fc95ccd3c2118c7e7585fadf3dca327877d5756c7d4b21c3","urls":["bzz-raw://6c89e0d9cfcb08a0d3c46c85367a32bbd9703468ba4c0c5bb6e124c1d173b26b","dweb:/ipfs/QmaY3nQHBBhHK1wrurVXiEeNL8hfZ1pRmhpqW44tFDJnDf"],"license":"MIT"},"lib/optimism/packages/contracts-bedrock/src/libraries/Types.sol":{"keccak256":"0x75900d651301940d24c00d14f0b3b6cbd6dcf379173ceaa31d9bf5be934a9aa4","urls":["bzz-raw://99c2632c5bf4fa3982391c32110eec9fa07917b483b2442cbaf18bdde5bdb24e","dweb:/ipfs/QmSUs6Amkeootf5gKGbKi4mJpvhN2U8i1ED6ef2dskV5xc"],"license":"MIT"},"lib/optimism/packages/contracts-bedrock/src/libraries/rlp/RLPWriter.sol":{"keccak256":"0x60ac401490f321c9c55e996a2c65151cd5e60de5f8f297e7c94d541c29820bb6","urls":["bzz-raw://070f5814db07e4a89173d44a36d90e4261ce530f7336034c01635347f2c2d88b","dweb:/ipfs/QmXqr9yW5Kc8MYgr5wSehU5AiqS9pZ4FKxv7vwiwpZCcyV"],"license":"MIT"}},"version":1},"id":28}