UNPKG

@unruggable/gateways

Version:

Trustless Ethereum Multichain CCIP-Read Gateway

1 lines 54.7 kB
{"abi":[{"type":"constructor","inputs":[{"name":"urls","type":"string[]","internalType":"string[]"},{"name":"window","type":"uint256","internalType":"uint256"},{"name":"hooks","type":"address","internalType":"contract IVerifierHooks"}],"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":"values","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":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"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":"0x60c060405234801561000f575f80fd5b506040516112f73803806112f783398101604081905261002e916101fc565b828282338061005657604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b61005f81610090565b5082516100739060019060208601906100df565b506080919091526001600160a01b031660a0525061046592505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054828255905f5260205f20908101928215610123579160200282015b82811115610123578251829061011390826103a6565b50916020019190600101906100fd565b5061012f929150610133565b5090565b8082111561012f575f610146828261014f565b50600101610133565b50805461015b90610322565b5f825580601f1061016a575050565b601f0160209004905f5260205f20908101906101869190610189565b50565b5b8082111561012f575f815560010161018a565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156101d9576101d961019d565b604052919050565b80516001600160a01b03811681146101f7575f80fd5b919050565b5f805f6060848603121561020e575f80fd5b83516001600160401b0380821115610224575f80fd5b818601915086601f830112610237575f80fd5b815160208282111561024b5761024b61019d565b8160051b61025a8282016101b1565b928352848101820192828101908b851115610273575f80fd5b83870192505b848310156102fd5782518681111561028f575f80fd5b8701603f81018d1361029f575f80fd5b848101516040888211156102b5576102b561019d565b6102c7601f8301601f191688016101b1565b8281528f828486010111156102da575f80fd5b828285018983015e5f928101880192909252508352509183019190830190610279565b80995050505080880151955050505050610319604085016101e1565b90509250925092565b600181811c9082168061033657607f821691505b60208210810361035457634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156103a157805f5260205f20601f840160051c8101602085101561037f5750805b601f840160051c820191505b8181101561039e575f815560010161038b565b50505b505050565b81516001600160401b038111156103bf576103bf61019d565b6103d3816103cd8454610322565b8461035a565b602080601f831160018114610406575f84156103ef5750858301515b5f19600386901b1c1916600185901b17855561045d565b5f85815260208120601f198616915b8281101561043457888601518255948401946001909101908401610415565b508582101561045157878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b60805160a051610e5e6104995f395f818160e801526103ad01525f818160bd01528181610526015261056e0152610e5e5ff3fe608060405234801561000f575f80fd5b506004361061008c575f3560e01c806301ffc9a7146100905780631d80051d146100b85780635cd2525e146100e6578063715018a61461011557806387c484fe1461011f5780638da5cb5b146101515780638e5ea8df14610159578063b50f2fbc1461016c578063e3d1666e14610181578063f2fde38b146101a2575b5f80fd5b6100a361009e36600461067f565b6101b5565b60405190151581526020015b60405180910390f35b6040517f000000000000000000000000000000000000000000000000000000000000000081526020016100af565b7f00000000000000000000000000000000000000000000000000000000000000005b6040516100af91906106ad565b61011d610206565b005b6101446040805142602082015260609101604051602081830303815290604052905090565b6040516100af91906106ef565b610108610219565b61011d6101673660046107c8565b610227565b61017461026e565b6040516100af9190610884565b61019461018f366004610904565b610342565b6040516100af9291906109c7565b61011d6101b0366004610a35565b610459565b5f6001600160e01b03198216633446b34b60e21b14806101e557506001600160e01b03198216634152574360e01b145b8061020057506301ffc9a760e01b6001600160e01b03198316145b92915050565b61020e61049f565b6102175f6104d1565b565b5f546001600160a01b031690565b61022f61049f565b80516102429060019060208401906105c9565b506040517fe621d803a0c96b9bbeea51d136777f6ea8a4ce0c4ac74f6645e18b4342e2fa07905f90a150565b60606001805480602002602001604051908101604052809291908181526020015f905b82821015610339578382905f5260205f200180546102ae90610a5b565b80601f01602080910402602001604051908101604052809291908181526020018280546102da90610a5b565b80156103255780601f106102fc57610100808354040283529160200191610325565b820191905f5260205f20905b81548152906001019060200180831161030857829003601f168201915b505050505081526020019060010190610291565b50505050905090565b60605f808580602001905181019061035a9190610a93565b90505f805f868060200190518101906103739190610b7c565b9250925092506103838484610520565b6040805160a0810182525f8082526020820152808201849052606081018390526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016608082015290516324a8807560e21b815273__$011ed85421b307e5206de383929e31be73$__916392a201d491610408918c91600401610bda565b5f60405180830381865af4158015610422573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526104499190810190610cab565b9550955050505050935093915050565b61046161049f565b6001600160a01b038116610493575f604051631e4fbdf760e01b815260040161048a91906106ad565b60405180910390fd5b61049c816104d1565b50565b336104a8610219565b6001600160a01b031614610217573360405163118cdaa760e01b815260040161048a91906106ad565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b8161054b7f000000000000000000000000000000000000000000000000000000000000000083610cfe565b101561059a57604051632a54241d60e21b815260048101839052602481018290527f0000000000000000000000000000000000000000000000000000000000000000604482015260640161048a565b818111156105c55760405163b356ade760e01b8152600481018390526024810182905260440161048a565b5050565b828054828255905f5260205f2090810192821561060d579160200282015b8281111561060d57825182906105fd9082610d69565b50916020019190600101906105e7565b5061061992915061061d565b5090565b80821115610619575f6106308282610639565b5060010161061d565b50805461064590610a5b565b5f825580601f10610654575050565b601f0160209004905f5260205f209081019061049c91905b80821115610619575f815560010161066c565b5f6020828403121561068f575f80fd5b81356001600160e01b0319811681146106a6575f80fd5b9392505050565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6106a660208301846106c1565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b038111828210171561073d5761073d610701565b604052919050565b5f6001600160401b0382111561075d5761075d610701565b5060051b60200190565b5f6001600160401b0382111561077f5761077f610701565b50601f01601f191660200190565b5f61079f61079a84610767565b610715565b90508281528383830111156107b2575f80fd5b828260208301375f602084830101529392505050565b5f60208083850312156107d9575f80fd5b82356001600160401b03808211156107ef575f80fd5b818501915085601f830112610802575f80fd5b813561081061079a82610745565b81815260059190911b8301840190848101908883111561082e575f80fd5b8585015b8381101561087757803585811115610848575f80fd5b8601603f81018b13610858575f80fd5b6108698b898301356040840161078d565b845250918601918601610832565b5098975050505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b828110156108d957603f198886030184526108c78583516106c1565b945092850192908501906001016108ab565b5092979650505050505050565b5f82601f8301126108f5575f80fd5b6106a68383356020850161078d565b5f805f60608486031215610916575f80fd5b83356001600160401b038082111561092c575f80fd5b610938878388016108e6565b9450602086013591508082111561094d575f80fd5b9085019060208288031215610960575f80fd5b60405160208101818110838211171561097b5761097b610701565b60405282358281111561098c575f80fd5b610998898286016108e6565b825250935060408601359150808211156109b0575f80fd5b506109bd868287016108e6565b9150509250925092565b5f604082016040835280855180835260608501915060608160051b860101925060208088015f5b83811015610a1c57605f19888703018552610a0a8683516106c1565b955093820193908201906001016109ee565b50505050508091505060ff831660208301529392505050565b5f60208284031215610a45575f80fd5b81356001600160a01b03811681146106a6575f80fd5b600181811c90821680610a6f57607f821691505b602082108103610a8d57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215610aa3575f80fd5b5051919050565b5f82601f830112610ab9575f80fd5b8151610ac761079a82610767565b818152846020838601011115610adb575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f82601f830112610b06575f80fd5b81516020610b1661079a83610745565b82815260059290921b84018101918181019086841115610b34575f80fd5b8286015b84811015610b715780516001600160401b03811115610b55575f80fd5b610b638986838b0101610aaa565b845250918301918301610b38565b509695505050505050565b5f805f60608486031215610b8e575f80fd5b835160208501519093506001600160401b0380821115610bac575f80fd5b610bb887838801610af7565b93506040860151915080821115610bcd575f80fd5b506109bd86828701610aaa565b604081525f83516020806040850152610bf660608501836106c1565b91508382038185015260a08201855183528186015182840152604086015160a0604085015281815180845260c08601915060c08160051b870101935084830192505f5b81811015610c675760bf19878603018352610c558585516106c1565b94509285019291850191600101610c39565b50505050606086015191508281036060840152610c8481836106c1565b9150506080850151610ca160808401826001600160a01b03169052565b5095945050505050565b5f8060408385031215610cbc575f80fd5b82516001600160401b03811115610cd1575f80fd5b610cdd85828601610af7565b925050602083015160ff81168114610cf3575f80fd5b809150509250929050565b8082018082111561020057634e487b7160e01b5f52601160045260245ffd5b601f821115610d6457805f5260205f20601f840160051c81016020851015610d425750805b601f840160051c820191505b81811015610d61575f8155600101610d4e565b50505b505050565b81516001600160401b03811115610d8257610d82610701565b610d9681610d908454610a5b565b84610d1d565b602080601f831160018114610dc9575f8415610db25750858301515b5f19600386901b1c1916600185901b178555610e20565b5f85815260208120601f198616915b82811015610df757888601518255948401946001909101908401610dd8565b5085821015610e1457878501515f19600388901b60f8161c191681555b505060018460011b0185555b50505050505056fea26469706673582212205e1f127e453995da19d1a17f9f7bebe41390397a1054ee798bf1cb15b1c1814f64736f6c63430008190033","sourceMap":"208:1060:43:-:0;;;261:142;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;380:4;386:6;394:5;668:10:0;;1269:95:51;;1322:31;;-1:-1:-1;;;1322:31:51;;1350:1;1322:31;;;2494:51:64;2467:18;;1322:31:51;;;;;;;1269:95;1373:32;1392:12;1373:18;:32::i;:::-;-1:-1:-1;690:12:0;;::::1;::::0;:5:::1;::::0;:12:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;712:16:0::1;::::0;;;;-1:-1:-1;;;;;738:14:0::1;;::::0;-1:-1:-1;208:1060:43;;-1:-1:-1;;;208:1060:43;2912:187:51;2985:16;3004:6;;-1:-1:-1;;;;;3020:17:51;;;-1:-1:-1;;;;;;3020:17:51;;;;;;3052:40;;3004:6;;;;;;;3052:40;;2985:16;3052:40;2975:124;2912:187;:::o;208:1060:43:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;208:1060:43;;;-1:-1:-1;208:1060:43;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;14:127:64;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:64;247:40;;-1:-1:-1;;;;;302:34:64;;338:22;;;299:62;296:88;;;364:18;;:::i;:::-;400:2;393:22;146:275;;-1:-1:-1;146:275:64:o;426:193::-;521:13;;-1:-1:-1;;;;;563:31:64;;553:42;;543:70;;609:1;606;599:12;543:70;426:193;;;:::o;624:1719::-;770:6;778;786;839:2;827:9;818:7;814:23;810:32;807:52;;;855:1;852;845:12;807:52;882:16;;-1:-1:-1;;;;;947:14:64;;;944:34;;;974:1;971;964:12;944:34;1012:6;1001:9;997:22;987:32;;1057:7;1050:4;1046:2;1042:13;1038:27;1028:55;;1079:1;1076;1069:12;1028:55;1108:2;1102:9;1130:4;1153:2;1149;1146:10;1143:36;;;1159:18;;:::i;:::-;1205:2;1202:1;1198:10;1228:28;1252:2;1248;1244:11;1228:28;:::i;:::-;1290:15;;;1360:11;;;1356:20;;;1321:12;;;;1388:19;;;1385:39;;;1420:1;1417;1410:12;1385:39;1452:2;1448;1444:11;1433:22;;1464:721;1480:6;1475:3;1472:15;1464:721;;;1559:3;1553:10;1595:2;1582:11;1579:19;1576:39;;;1611:1;1608;1601:12;1576:39;1638:20;;1693:2;1685:11;;1681:25;-1:-1:-1;1671:53:64;;1720:1;1717;1710:12;1671:53;1761:2;1757;1753:11;1747:18;1788:2;1813;1809;1806:10;1803:36;;;1819:18;;:::i;:::-;1865:53;1908:2;1889:13;;-1:-1:-1;;1885:27:64;1881:36;;1865:53;:::i;:::-;1945:2;1938:5;1931:17;1989:7;1984:2;1979;1975;1971:11;1967:20;1964:33;1961:53;;;2010:1;2007;2000:12;1961:53;2062:2;2057;2053;2049:11;2044:2;2037:5;2033:14;2027:38;2110:1;2089:14;;;2085:23;;2078:34;;;;-1:-1:-1;2125:18:64;;-1:-1:-1;1497:12:64;;;;2163;;;;1464:721;;;2204:5;2194:15;;;;;2249:2;2238:9;2234:18;2228:25;2218:35;;;;;;2272:65;2333:2;2322:9;2318:18;2272:65;:::i;:::-;2262:75;;624:1719;;;;;:::o;2556:380::-;2635:1;2631:12;;;;2678;;;2699:61;;2753:4;2745:6;2741:17;2731:27;;2699:61;2806:2;2798:6;2795:14;2775:18;2772:38;2769:161;;2852:10;2847:3;2843:20;2840:1;2833:31;2887:4;2884:1;2877:15;2915:4;2912:1;2905:15;2769:161;;2556:380;;;:::o;3067:518::-;3169:2;3164:3;3161:11;3158:421;;;3205:5;3202:1;3195:16;3249:4;3246:1;3236:18;3319:2;3307:10;3303:19;3300:1;3296:27;3290:4;3286:38;3355:4;3343:10;3340:20;3337:47;;;-1:-1:-1;3378:4:64;3337:47;3433:2;3428:3;3424:12;3421:1;3417:20;3411:4;3407:31;3397:41;;3488:81;3506:2;3499:5;3496:13;3488:81;;;3565:1;3551:16;;3532:1;3521:13;3488:81;;;3492:3;;3158:421;3067:518;;;:::o;3761:1345::-;3881:10;;-1:-1:-1;;;;;3903:30:64;;3900:56;;;3936:18;;:::i;:::-;3965:97;4055:6;4015:38;4047:4;4041:11;4015:38;:::i;:::-;4009:4;3965:97;:::i;:::-;4117:4;;4174:2;4163:14;;4191:1;4186:663;;;;4893:1;4910:6;4907:89;;;-1:-1:-1;4962:19:64;;;4956:26;4907:89;-1:-1:-1;;3718:1:64;3714:11;;;3710:24;3706:29;3696:40;3742:1;3738:11;;;3693:57;5009:81;;4156:944;;4186:663;3014:1;3007:14;;;3051:4;3038:18;;-1:-1:-1;;4222:20:64;;;4340:236;4354:7;4351:1;4348:14;4340:236;;;4443:19;;;4437:26;4422:42;;4535:27;;;;4503:1;4491:14;;;;4370:19;;4340:236;;;4344:3;4604:6;4595:7;4592:19;4589:201;;;4665:19;;;4659:26;-1:-1:-1;;4748:1:64;4744:14;;;4760:3;4740:24;4736:37;4732:42;4717:58;4702:74;;4589:201;;;4836:1;4827:6;4824:1;4820:14;4816:22;4810:4;4803:36;4156:944;;;;;3761:1345;;:::o;:::-;208:1060:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{"contracts/GatewayVM.sol":{"GatewayVM":[{"start":2169,"length":20}]}}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b506004361061008c575f3560e01c806301ffc9a7146100905780631d80051d146100b85780635cd2525e146100e6578063715018a61461011557806387c484fe1461011f5780638da5cb5b146101515780638e5ea8df14610159578063b50f2fbc1461016c578063e3d1666e14610181578063f2fde38b146101a2575b5f80fd5b6100a361009e36600461067f565b6101b5565b60405190151581526020015b60405180910390f35b6040517f000000000000000000000000000000000000000000000000000000000000000081526020016100af565b7f00000000000000000000000000000000000000000000000000000000000000005b6040516100af91906106ad565b61011d610206565b005b6101446040805142602082015260609101604051602081830303815290604052905090565b6040516100af91906106ef565b610108610219565b61011d6101673660046107c8565b610227565b61017461026e565b6040516100af9190610884565b61019461018f366004610904565b610342565b6040516100af9291906109c7565b61011d6101b0366004610a35565b610459565b5f6001600160e01b03198216633446b34b60e21b14806101e557506001600160e01b03198216634152574360e01b145b8061020057506301ffc9a760e01b6001600160e01b03198316145b92915050565b61020e61049f565b6102175f6104d1565b565b5f546001600160a01b031690565b61022f61049f565b80516102429060019060208401906105c9565b506040517fe621d803a0c96b9bbeea51d136777f6ea8a4ce0c4ac74f6645e18b4342e2fa07905f90a150565b60606001805480602002602001604051908101604052809291908181526020015f905b82821015610339578382905f5260205f200180546102ae90610a5b565b80601f01602080910402602001604051908101604052809291908181526020018280546102da90610a5b565b80156103255780601f106102fc57610100808354040283529160200191610325565b820191905f5260205f20905b81548152906001019060200180831161030857829003601f168201915b505050505081526020019060010190610291565b50505050905090565b60605f808580602001905181019061035a9190610a93565b90505f805f868060200190518101906103739190610b7c565b9250925092506103838484610520565b6040805160a0810182525f8082526020820152808201849052606081018390526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016608082015290516324a8807560e21b815273__$011ed85421b307e5206de383929e31be73$__916392a201d491610408918c91600401610bda565b5f60405180830381865af4158015610422573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526104499190810190610cab565b9550955050505050935093915050565b61046161049f565b6001600160a01b038116610493575f604051631e4fbdf760e01b815260040161048a91906106ad565b60405180910390fd5b61049c816104d1565b50565b336104a8610219565b6001600160a01b031614610217573360405163118cdaa760e01b815260040161048a91906106ad565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b8161054b7f000000000000000000000000000000000000000000000000000000000000000083610cfe565b101561059a57604051632a54241d60e21b815260048101839052602481018290527f0000000000000000000000000000000000000000000000000000000000000000604482015260640161048a565b818111156105c55760405163b356ade760e01b8152600481018390526024810182905260440161048a565b5050565b828054828255905f5260205f2090810192821561060d579160200282015b8281111561060d57825182906105fd9082610d69565b50916020019190600101906105e7565b5061061992915061061d565b5090565b80821115610619575f6106308282610639565b5060010161061d565b50805461064590610a5b565b5f825580601f10610654575050565b601f0160209004905f5260205f209081019061049c91905b80821115610619575f815560010161066c565b5f6020828403121561068f575f80fd5b81356001600160e01b0319811681146106a6575f80fd5b9392505050565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6106a660208301846106c1565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b038111828210171561073d5761073d610701565b604052919050565b5f6001600160401b0382111561075d5761075d610701565b5060051b60200190565b5f6001600160401b0382111561077f5761077f610701565b50601f01601f191660200190565b5f61079f61079a84610767565b610715565b90508281528383830111156107b2575f80fd5b828260208301375f602084830101529392505050565b5f60208083850312156107d9575f80fd5b82356001600160401b03808211156107ef575f80fd5b818501915085601f830112610802575f80fd5b813561081061079a82610745565b81815260059190911b8301840190848101908883111561082e575f80fd5b8585015b8381101561087757803585811115610848575f80fd5b8601603f81018b13610858575f80fd5b6108698b898301356040840161078d565b845250918601918601610832565b5098975050505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b828110156108d957603f198886030184526108c78583516106c1565b945092850192908501906001016108ab565b5092979650505050505050565b5f82601f8301126108f5575f80fd5b6106a68383356020850161078d565b5f805f60608486031215610916575f80fd5b83356001600160401b038082111561092c575f80fd5b610938878388016108e6565b9450602086013591508082111561094d575f80fd5b9085019060208288031215610960575f80fd5b60405160208101818110838211171561097b5761097b610701565b60405282358281111561098c575f80fd5b610998898286016108e6565b825250935060408601359150808211156109b0575f80fd5b506109bd868287016108e6565b9150509250925092565b5f604082016040835280855180835260608501915060608160051b860101925060208088015f5b83811015610a1c57605f19888703018552610a0a8683516106c1565b955093820193908201906001016109ee565b50505050508091505060ff831660208301529392505050565b5f60208284031215610a45575f80fd5b81356001600160a01b03811681146106a6575f80fd5b600181811c90821680610a6f57607f821691505b602082108103610a8d57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215610aa3575f80fd5b5051919050565b5f82601f830112610ab9575f80fd5b8151610ac761079a82610767565b818152846020838601011115610adb575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f82601f830112610b06575f80fd5b81516020610b1661079a83610745565b82815260059290921b84018101918181019086841115610b34575f80fd5b8286015b84811015610b715780516001600160401b03811115610b55575f80fd5b610b638986838b0101610aaa565b845250918301918301610b38565b509695505050505050565b5f805f60608486031215610b8e575f80fd5b835160208501519093506001600160401b0380821115610bac575f80fd5b610bb887838801610af7565b93506040860151915080821115610bcd575f80fd5b506109bd86828701610aaa565b604081525f83516020806040850152610bf660608501836106c1565b91508382038185015260a08201855183528186015182840152604086015160a0604085015281815180845260c08601915060c08160051b870101935084830192505f5b81811015610c675760bf19878603018352610c558585516106c1565b94509285019291850191600101610c39565b50505050606086015191508281036060840152610c8481836106c1565b9150506080850151610ca160808401826001600160a01b03169052565b5095945050505050565b5f8060408385031215610cbc575f80fd5b82516001600160401b03811115610cd1575f80fd5b610cdd85828601610af7565b925050602083015160ff81168114610cf3575f80fd5b809150509250929050565b8082018082111561020057634e487b7160e01b5f52601160045260245ffd5b601f821115610d6457805f5260205f20601f840160051c81016020851015610d425750805b601f840160051c820191505b81811015610d61575f8155600101610d4e565b50505b505050565b81516001600160401b03811115610d8257610d82610701565b610d9681610d908454610a5b565b84610d1d565b602080601f831160018114610dc9575f8415610db25750858301515b5f19600386901b1c1916600185901b178555610e20565b5f85815260208120601f198616915b82811015610df757888601518255948401946001909101908401610dd8565b5085821015610e1457878501515f19600388901b60f8161c191681555b505060018460011b0185555b50505050505056fea26469706673582212205e1f127e453995da19d1a17f9f7bebe41390397a1054ee798bf1cb15b1c1814f64736f6c63430008190033","sourceMap":"208:1060:43:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;792:315:0;;;;;;:::i;:::-;;:::i;:::-;;;470:14:64;;463:22;445:41;;433:2;418:18;792:315:0;;;;;;;;1428:84;;;1498:7;643:25:64;;631:2;616:18;1428:84:0;497:177:64;1563:89:0;1639:6;1563:89;;;;;;;:::i;2293:101:51:-;;;:::i;:::-;;409:116:43;;491:27;;;502:15;491:27;;;643:25:64;460:12:43;;616:18:64;491:27:43;;;;;;;;;;;;484:34;;409:116;;;;;;;;;:::i;1638:85:51:-;;;:::i;1113:129:0:-;;;;;;:::i;:::-;;:::i;1285:92::-;;;:::i;:::-;;;;;;;:::i;531:735:43:-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;2543:215:51:-;;;;;;:::i;:::-;;:::i;792:315:0:-;891:4;-1:-1:-1;;;;;;926:49:0;;-1:-1:-1;;;926:49:0;;:122;;-1:-1:-1;;;;;;;991:57:0;;-1:-1:-1;;;991:57:0;926:122;:174;;;-1:-1:-1;;;;;;;;;;861:40:55;;;1064:36:0;907:193;792:315;-1:-1:-1;;792:315:0:o;2293:101:51:-;1531:13;:11;:13::i;:::-;2357:30:::1;2384:1;2357:18;:30::i;:::-;2293:101::o:0;1638:85::-;1684:7;1710:6;-1:-1:-1;;;;;1710:6:51;;1638:85::o;1113:129:0:-;1531:13:51;:11;:13::i;:::-;1188:12:0;;::::1;::::0;:5:::1;::::0;:12:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;1215:20:0::1;::::0;::::1;::::0;;;::::1;1113:129:::0;:::o;1285:92::-;1331:15;1365:5;1358:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1285:92;:::o;531:735:43:-;679:21;702:14;728:10;752:7;741:30;;;;;;;;;;;;:::i;:::-;728:43;;782:9;793:21;816:18;862:5;838:78;;;;;;;;;;;;:::i;:::-;781:135;;;;;;926:19;939:2;943:1;926:12;:19::i;:::-;1034:211;;;;;;;;-1:-1:-1;1034:211:43;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1220:6:43;1034:211;;;;;974:285;;-1:-1:-1;;;974:285:43;;:9;;:21;;:285;;1013:3;;974:285;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;974:285:43;;;;;;;;;;;;:::i;:::-;955:304;;;;;;;;531:735;;;;;;:::o;2543:215:51:-;1531:13;:11;:13::i;:::-;-1:-1:-1;;;;;2627:22:51;::::1;2623:91;;2700:1;2672:31;;-1:-1:-1::0;;;2672:31:51::1;;;;;;;;:::i;:::-;;;;;;;;2623:91;2723:28;2742:8;2723:18;:28::i;:::-;2543:215:::0;:::o;1796:162::-;735:10:53;1855:7:51;:5;:7::i;:::-;-1:-1:-1;;;;;1855:23:51;;1851:101;;735:10:53;1901:40:51;;-1:-1:-1;;;1901:40:51;;;;;;;;:::i;2912:187::-;2985:16;3004:6;;-1:-1:-1;;;;;3020:17:51;;;-1:-1:-1;;;;;;3020:17:51;;;;;;3052:40;;3004:6;;;;;;;3052:40;;2985:16;3052:40;2975:124;2912:187;:::o;1658:211:0:-;1753:6;1737:13;1743:7;1737:3;:13;:::i;:::-;:22;1733:69;;;1768:34;;-1:-1:-1;;;1768:34:0;;;;;12519:25:64;;;12560:18;;;12553:34;;;1794:7:0;12603:18:64;;;12596:34;12492:18;;1768:34:0;12317:319:64;1733:69:0;1822:6;1816:3;:12;1812:50;;;1837:25;;-1:-1:-1;;;1837:25:0;;;;;12815::64;;;12856:18;;;12849:34;;;12788:18;;1837:25:0;12641:248:64;1812:50:0;1658:211;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:64;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:64;;209:43;;199:71;;266:1;263;256:12;199:71;289:5;14:286;-1:-1:-1;;;14:286:64:o;804:226::-;-1:-1:-1;;;;;991:32:64;;;;973:51;;961:2;946:18;;804:226::o;1035:288::-;1076:3;1114:5;1108:12;1141:6;1136:3;1129:19;1197:6;1190:4;1183:5;1179:16;1172:4;1167:3;1163:14;1157:47;1249:1;1242:4;1233:6;1228:3;1224:16;1220:27;1213:38;1312:4;1305:2;1301:7;1296:2;1288:6;1284:15;1280:29;1275:3;1271:39;1267:50;1260:57;;;1035:288;;;;:::o;1328:217::-;1475:2;1464:9;1457:21;1438:4;1495:44;1535:2;1524:9;1520:18;1512:6;1495:44;:::i;1758:127::-;1819:10;1814:3;1810:20;1807:1;1800:31;1850:4;1847:1;1840:15;1874:4;1871:1;1864:15;1890:275;1961:2;1955:9;2026:2;2007:13;;-1:-1:-1;;2003:27:64;1991:40;;-1:-1:-1;;;;;2046:34:64;;2082:22;;;2043:62;2040:88;;;2108:18;;:::i;:::-;2144:2;2137:22;1890:275;;-1:-1:-1;1890:275:64:o;2170:182::-;2229:4;-1:-1:-1;;;;;2251:30:64;;2248:56;;;2284:18;;:::i;:::-;-1:-1:-1;2329:1:64;2325:14;2341:4;2321:25;;2170:182::o;2357:187::-;2406:4;-1:-1:-1;;;;;2428:30:64;;2425:56;;;2461:18;;:::i;:::-;-1:-1:-1;2527:2:64;2506:15;-1:-1:-1;;2502:29:64;2533:4;2498:40;;2357:187::o;2549:338::-;2614:5;2643:53;2659:36;2688:6;2659:36;:::i;:::-;2643:53;:::i;:::-;2634:62;;2719:6;2712:5;2705:21;2759:3;2750:6;2745:3;2741:16;2738:25;2735:45;;;2776:1;2773;2766:12;2735:45;2825:6;2820:3;2813:4;2806:5;2802:16;2789:43;2879:1;2872:4;2863:6;2856:5;2852:18;2848:29;2841:40;2549:338;;;;;:::o;2892:1197::-;2986:6;3017:2;3060;3048:9;3039:7;3035:23;3031:32;3028:52;;;3076:1;3073;3066:12;3028:52;3103:23;;-1:-1:-1;;;;;3175:14:64;;;3172:34;;;3202:1;3199;3192:12;3172:34;3240:6;3229:9;3225:22;3215:32;;3285:7;3278:4;3274:2;3270:13;3266:27;3256:55;;3307:1;3304;3297:12;3256:55;3343:2;3330:16;3366:59;3382:42;3421:2;3382:42;:::i;3366:59::-;3459:15;;;3541:1;3537:10;;;;3529:19;;3525:28;;;3490:12;;;;3565:19;;;3562:39;;;3597:1;3594;3587:12;3562:39;3629:2;3625;3621:11;3641:418;3657:6;3652:3;3649:15;3641:418;;;3743:3;3730:17;3779:2;3766:11;3763:19;3760:39;;;3795:1;3792;3785:12;3760:39;3822:20;;3877:2;3869:11;;3865:25;-1:-1:-1;3855:53:64;;3904:1;3901;3894:12;3855:53;3933:83;4008:7;4002:2;3998;3994:11;3981:25;3976:2;3972;3968:11;3933:83;:::i;:::-;3921:96;;-1:-1:-1;4037:12:64;;;;3674;;3641:418;;;-1:-1:-1;4078:5:64;2892:1197;-1:-1:-1;;;;;;;;2892:1197:64:o;4094:802::-;4256:4;4285:2;4325;4314:9;4310:18;4355:2;4344:9;4337:21;4378:6;4413;4407:13;4444:6;4436;4429:22;4482:2;4471:9;4467:18;4460:25;;4544:2;4534:6;4531:1;4527:14;4516:9;4512:30;4508:39;4494:53;;4582:2;4574:6;4570:15;4603:1;4613:254;4627:6;4624:1;4621:13;4613:254;;;4720:2;4716:7;4704:9;4696:6;4692:22;4688:36;4683:3;4676:49;4748:39;4780:6;4771;4765:13;4748:39;:::i;:::-;4738:49;-1:-1:-1;4845:12:64;;;;4810:15;;;;4649:1;4642:9;4613:254;;;-1:-1:-1;4884:6:64;;4094:802;-1:-1:-1;;;;;;;4094:802:64:o;4901:221::-;4943:5;4996:3;4989:4;4981:6;4977:17;4973:27;4963:55;;5014:1;5011;5004:12;4963:55;5036:80;5112:3;5103:6;5090:20;5083:4;5075:6;5071:17;5036:80;:::i;5127:1153::-;5254:6;5262;5270;5323:2;5311:9;5302:7;5298:23;5294:32;5291:52;;;5339:1;5336;5329:12;5291:52;5366:23;;-1:-1:-1;;;;;5438:14:64;;;5435:34;;;5465:1;5462;5455:12;5435:34;5488:49;5529:7;5520:6;5509:9;5505:22;5488:49;:::i;:::-;5478:59;;5590:2;5579:9;5575:18;5562:32;5546:48;;5619:2;5609:8;5606:16;5603:36;;;5635:1;5632;5625:12;5603:36;5658:24;;;;5716:2;5698:16;;;5694:25;5691:45;;;5732:1;5729;5722:12;5691:45;5765:2;5759:9;5807:2;5799:6;5795:15;5860:6;5848:10;5845:22;5840:2;5828:10;5825:18;5822:46;5819:72;;;5871:18;;:::i;:::-;5907:2;5900:22;5947:16;;5975;;;5972:36;;;6004:1;6001;5994:12;5972:36;6032:44;6068:7;6057:8;6053:2;6049:17;6032:44;:::i;:::-;6017:60;;-1:-1:-1;6024:6:64;-1:-1:-1;6155:2:64;6140:18;;6127:32;;-1:-1:-1;6171:16:64;;;6168:36;;;6200:1;6197;6190:12;6168:36;;6223:51;6266:7;6255:8;6244:9;6240:24;6223:51;:::i;:::-;6213:61;;;5127:1153;;;;;:::o;6285:884::-;6469:4;6517:2;6506:9;6502:18;6547:2;6536:9;6529:21;6570:6;6605;6599:13;6636:6;6628;6621:22;6674:2;6663:9;6659:18;6652:25;;6736:2;6726:6;6723:1;6719:14;6708:9;6704:30;6700:39;6686:53;;6758:4;6797;6789:6;6785:17;6820:1;6830:254;6844:6;6841:1;6838:13;6830:254;;;6937:2;6933:7;6921:9;6913:6;6909:22;6905:36;6900:3;6893:49;6965:39;6997:6;6988;6982:13;6965:39;:::i;:::-;6955:49;-1:-1:-1;7062:12:64;;;;7027:15;;;;6866:1;6859:9;6830:254;;;6834:3;;;;;7101:6;7093:14;;;7157:4;7149:6;7145:17;7138:4;7127:9;7123:20;7116:47;6285:884;;;;;:::o;7174:286::-;7233:6;7286:2;7274:9;7265:7;7261:23;7257:32;7254:52;;;7302:1;7299;7292:12;7254:52;7328:23;;-1:-1:-1;;;;;7380:31:64;;7370:42;;7360:70;;7426:1;7423;7416:12;7465:380;7544:1;7540:12;;;;7587;;;7608:61;;7662:4;7654:6;7650:17;7640:27;;7608:61;7715:2;7707:6;7704:14;7684:18;7681:38;7678:161;;7761:10;7756:3;7752:20;7749:1;7742:31;7796:4;7793:1;7786:15;7824:4;7821:1;7814:15;7678:161;;7465:380;;;:::o;7850:184::-;7920:6;7973:2;7961:9;7952:7;7948:23;7944:32;7941:52;;;7989:1;7986;7979:12;7941:52;-1:-1:-1;8012:16:64;;7850:184;-1:-1:-1;7850:184:64:o;8039:460::-;8092:5;8145:3;8138:4;8130:6;8126:17;8122:27;8112:55;;8163:1;8160;8153:12;8112:55;8192:6;8186:13;8223:49;8239:32;8268:2;8239:32;:::i;8223:49::-;8297:2;8288:7;8281:19;8343:3;8336:4;8331:2;8323:6;8319:15;8315:26;8312:35;8309:55;;;8360:1;8357;8350:12;8309:55;8418:2;8411:4;8403:6;8399:17;8392:4;8383:7;8379:18;8373:48;8466:1;8441:16;;;8459:4;8437:27;8430:38;;;;8445:7;8039:460;-1:-1:-1;;;8039:460:64:o;8504:823::-;8567:5;8620:3;8613:4;8605:6;8601:17;8597:27;8587:55;;8638:1;8635;8628:12;8587:55;8667:6;8661:13;8693:4;8717:59;8733:42;8772:2;8733:42;:::i;8717:59::-;8810:15;;;8896:1;8892:10;;;;8880:23;;8876:32;;;8841:12;;;;8920:15;;;8917:35;;;8948:1;8945;8938:12;8917:35;8984:2;8976:6;8972:15;8996:302;9012:6;9007:3;9004:15;8996:302;;;9085:10;;-1:-1:-1;;;;;9111:35:64;;9108:55;;;9159:1;9156;9149:12;9108:55;9188:67;9251:3;9246:2;9232:11;9224:6;9220:24;9216:33;9188:67;:::i;:::-;9176:80;;-1:-1:-1;9276:12:64;;;;9029;;8996:302;;;-1:-1:-1;9316:5:64;8504:823;-1:-1:-1;;;;;;8504:823:64:o;9332:654::-;9463:6;9471;9479;9532:2;9520:9;9511:7;9507:23;9503:32;9500:52;;;9548:1;9545;9538:12;9500:52;9571:16;;9631:2;9616:18;;9610:25;9571:16;;-1:-1:-1;;;;;;9684:14:64;;;9681:34;;;9711:1;9708;9701:12;9681:34;9734:70;9796:7;9787:6;9776:9;9772:22;9734:70;:::i;:::-;9724:80;;9850:2;9839:9;9835:18;9829:25;9813:41;;9879:2;9869:8;9866:16;9863:36;;;9895:1;9892;9885:12;9863:36;;9918:62;9972:7;9961:8;9950:9;9946:24;9918:62;:::i;9991:1569::-;10282:2;10271:9;10264:21;10245:4;10320:6;10314:13;10346:4;10386:2;10381;10370:9;10366:18;10359:30;10409:50;10455:2;10444:9;10440:18;10426:12;10409:50;:::i;:::-;10398:61;;10504:9;10499:3;10495:19;10490:2;10479:9;10475:18;10468:47;10547:4;10542:3;10538:14;10579:6;10573:13;10568:3;10561:26;10635:2;10627:6;10623:15;10617:22;10612:2;10607:3;10603:12;10596:44;10689:2;10681:6;10677:15;10671:22;10723:4;10718:2;10713:3;10709:12;10702:26;10748:6;10783:14;10777:21;10822:6;10814;10807:22;10854:3;10849;10845:13;10838:20;;10911:3;10901:6;10898:1;10894:14;10889:3;10885:24;10881:34;10867:48;;10958:2;10942:14;10938:23;10924:37;;10979:1;10989:249;11003:6;11000:1;10997:13;10989:249;;;11090:3;11086:8;11080:3;11072:6;11068:16;11064:31;11059:3;11052:44;11119:39;11151:6;11142;11136:13;11119:39;:::i;:::-;11109:49;-1:-1:-1;11181:15:64;;;;11216:12;;;;11025:1;11018:9;10989:249;;;10993:3;;;;11287:2;11279:6;11275:15;11269:22;11247:44;;11333:3;11325:6;11321:16;11316:2;11311:3;11307:12;11300:38;11361:40;11394:6;11378:14;11361:40;:::i;:::-;11347:54;;;11450:4;11442:6;11438:17;11432:24;11465:66;11525:4;11520:3;11516:14;11500;-1:-1:-1;;;;;761:31:64;749:44;;679:120;11465:66;-1:-1:-1;11548:6:64;9991:1569;-1:-1:-1;;;;;9991:1569:64:o;11565:520::-;11676:6;11684;11737:2;11725:9;11716:7;11712:23;11708:32;11705:52;;;11753:1;11750;11743:12;11705:52;11780:16;;-1:-1:-1;;;;;11808:30:64;;11805:50;;;11851:1;11848;11841:12;11805:50;11874:70;11936:7;11927:6;11916:9;11912:22;11874:70;:::i;:::-;11864:80;;;11987:2;11976:9;11972:18;11966:25;12031:4;12024:5;12020:16;12013:5;12010:27;12000:55;;12051:1;12048;12041:12;12000:55;12074:5;12064:15;;;11565:520;;;;;:::o;12090:222::-;12155:9;;;12176:10;;;12173:133;;;12228:10;12223:3;12219:20;12216:1;12209:31;12263:4;12260:1;12253:15;12291:4;12288:1;12281:15;13020:518;13122:2;13117:3;13114:11;13111:421;;;13158:5;13155:1;13148:16;13202:4;13199:1;13189:18;13272:2;13260:10;13256:19;13253:1;13249:27;13243:4;13239:38;13308:4;13296:10;13293:20;13290:47;;;-1:-1:-1;13331:4:64;13290:47;13386:2;13381:3;13377:12;13374:1;13370:20;13364:4;13360:31;13350:41;;13441:81;13459:2;13452:5;13449:13;13441:81;;;13518:1;13504:16;;13485:1;13474:13;13441:81;;;13445:3;;13111:421;13020:518;;;:::o;13714:1345::-;13834:10;;-1:-1:-1;;;;;13856:30:64;;13853:56;;;13889:18;;:::i;:::-;13918:97;14008:6;13968:38;14000:4;13994:11;13968:38;:::i;:::-;13962:4;13918:97;:::i;:::-;14070:4;;14127:2;14116:14;;14144:1;14139:663;;;;14846:1;14863:6;14860:89;;;-1:-1:-1;14915:19:64;;;14909:26;14860:89;-1:-1:-1;;13671:1:64;13667:11;;;13663:24;13659:29;13649:40;13695:1;13691:11;;;13646:57;14962:81;;14109:944;;14139:663;12967:1;12960:14;;;13004:4;12991:18;;-1:-1:-1;;14175:20:64;;;14293:236;14307:7;14304:1;14301:14;14293:236;;;14396:19;;;14390:26;14375:42;;14488:27;;;;14456:1;14444:14;;;;14323:19;;14293:236;;;14297:3;14557:6;14548:7;14545:19;14542:201;;;14618:19;;;14612:26;-1:-1:-1;;14701:1:64;14697:14;;;14713:3;14693:24;14689:37;14685:42;14670:58;14655:74;;14542:201;;;14789:1;14780:6;14777:1;14773:14;14769:22;14763:4;14756:36;14109:944;;;;;13714:1345;;:::o","linkReferences":{"contracts/GatewayVM.sol":{"GatewayVM":[{"start":992,"length":20}]}},"immutableReferences":{"23":[{"start":189,"length":32},{"start":1318,"length":32},{"start":1390,"length":32}],"26":[{"start":232,"length":32},{"start":941,"length":32}]}},"methodIdentifiers":{"gatewayURLs()":"b50f2fbc","getHooks()":"5cd2525e","getLatestContext()":"87c484fe","getStorageValues(bytes,(bytes),bytes)":"e3d1666e","getWindow()":"1d80051d","owner()":"8da5cb5b","renounceOwnership()":"715018a6","setGatewayURLs(string[])":"8e5ea8df","supportsInterface(bytes4)":"01ffc9a7","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\"}],\"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\":\"values\",\"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\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"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.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"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/unchecked/UncheckedVerifier.sol\":\"UncheckedVerifier\"},\"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\":\"0xa8e87fee5132283b9ee97a10959e05de5022bebfaccb7eb2b241415a046266a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://291cdf4eacc1460b3ceec3b5264df2126132738f47173f5a8016af98b1267787\",\"dweb:/ipfs/QmYV2tfkG3Urk5tvhceJhNNjkxJD4gCGnUef7bBmR83LSe\"]},\"contracts/GatewayRequest.sol\":{\"keccak256\":\"0xba49c78107ea6454d2cf92d1d06bbf863365d79676780758d16aedfe0bbfa75e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://631f7553e68cd7ad406832d6cce0008ebcf85d4e729a7e08b4cdac13a84a82b2\",\"dweb:/ipfs/QmY6vQRvw3B7i86gzYTdXrRBWBjegfoS5sfwmv53qqPjXF\"]},\"contracts/GatewayVM.sol\":{\"keccak256\":\"0xd08e9cd6d89b6939d754d5406d9e4527794d9ee665772bc95d91cbaa0f43726f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b938dbb1553e2fb8936f8ae8b16af6f9cbe528cd4ee56d907721df64cd1b9a62\",\"dweb:/ipfs/QmeR9mUL9TdQf8FmojpTTCBMJX56FLBU8oEvtrVMYunb22\"]},\"contracts/IGatewayVerifier.sol\":{\"keccak256\":\"0x4ebc820d6a7d6c6a1ec55e16fd1dac18b1952497fbf54dbbf9b6fdef50114000\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1d872a7921e60927fa071a62ca0b23931a8bd9e43edad113f8241f127d4ef534\",\"dweb:/ipfs/QmbtpQ4NzrBcaHy4EjAECDz17R5DY8KH6TBfqeW9K9qjPw\"]},\"contracts/IStandardGatewayVerifier.sol\":{\"keccak256\":\"0x5e3d6574dde18ce6445e5f9786ef1690ff3779c4d88e729c3a5f9e2642878461\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://178c3de7735725e33ab6a44126161e2da3ce9a565bbf438a6902679912d9bab6\",\"dweb:/ipfs/QmeYJf3AMPCvsrW5TkwYxAxeKdFkhiXEKEeggKaTaxqAdz\"]},\"contracts/IVerifierHooks.sol\":{\"keccak256\":\"0xd85e9b52270a88d0df9b26454d9c80389405c230b7d67060742a4a0ea5917248\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://81de43a606284b5b9b146e06dbf6f54db5480058deb5fbe150302a37ffe14e1a\",\"dweb:/ipfs/QmSDH39aPAch4bKhRZbJ5vSDEUUDic76gWxDDDGaYxbPat\"]},\"contracts/unchecked/UncheckedVerifier.sol\":{\"keccak256\":\"0xc7a6529532ee56ae04f4d6d4706276d5ed303a69a98eb951a1191d3c617889b0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01d46f653b53229113d59a860acacee64c9c936343bc3b9d4c021bd8ff1c66aa\",\"dweb:/ipfs/QmS8jZmaeZXqNybGPijdkvdFfDKrfgKyEjUey6yGbUcrvs\"]},\"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/introspection/ERC165.sol\":{\"keccak256\":\"0x9e8778b14317ba9e256c30a76fd6c32b960af621987f56069e1e819c77c6a133\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1777404f1dcd0fac188e55a288724ec3c67b45288e49cc64723e95e702b49ab8\",\"dweb:/ipfs/QmZFdC626GButBApwDUvvTnUzdinevC3B24d7yyh57XkiA\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x4296879f55019b23e135000eb36896057e7101fb7fb859c5ef690cf14643757b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://87b3541437c8c443ccd36795e56a338ed12855eec17f8da624511b8d1a7e14df\",\"dweb:/ipfs/QmeJQCtZrQjtJLr6u7ZHWeH3pBnjtLWzvRrKViAi7UZqxL\"]},\"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":"string[]","name":"urls","type":"string[]"},{"internalType":"uint256","name":"window","type":"uint256"},{"internalType":"contract IVerifierHooks","name":"hooks","type":"address"}],"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":"values","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":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"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."},"supportsInterface(bytes4)":{"details":