UNPKG

@unruggable/gateways

Version:

Trustless Ethereum Multichain CCIP-Read Gateway

1 lines 53.1 kB
{"abi":[{"type":"constructor","inputs":[{"name":"urls","type":"string[]","internalType":"string[]"},{"name":"window","type":"uint256","internalType":"uint256"},{"name":"hooks","type":"address","internalType":"contract IVerifierHooks"},{"name":"rollup","type":"address","internalType":"contract ILineaRollup"}],"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":"","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":"OwnableInvalidOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"OwnableUnauthorizedAccount","inputs":[{"name":"account","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60e060405234801561000f575f80fd5b5060405161144a38038061144a83398101604081905261002e91610205565b838383338061005657604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b61005f81610099565b5082516100739060019060208601906100e8565b506080919091526001600160a01b0390811660a0529190911660c0525061047e92505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054828255905f5260205f2090810192821561012c579160200282015b8281111561012c578251829061011c90826103bf565b5091602001919060010190610106565b5061013892915061013c565b5090565b80821115610138575f61014f8282610158565b5060010161013c565b5080546101649061033b565b5f825580601f10610173575050565b601f0160209004905f5260205f209081019061018f9190610192565b50565b5b80821115610138575f8155600101610193565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156101e2576101e26101a6565b604052919050565b80516001600160a01b0381168114610200575f80fd5b919050565b5f805f8060808587031215610218575f80fd5b84516001600160401b038082111561022e575f80fd5b818701915087601f830112610241575f80fd5b8151602082821115610255576102556101a6565b8160051b6102648282016101ba565b928352848101820192828101908c85111561027d575f80fd5b83870192505b8483101561030657825186811115610299575f80fd5b8701603f81018e136102a9575f80fd5b84810151878111156102bd576102bd6101a6565b6102cf601f8201601f191687016101ba565b8181528f60408385010111156102e3575f80fd5b81604084018883015e5f9181018701919091528352509183019190830190610283565b809a5050505080890151965050505050610322604086016101ea565b9150610330606086016101ea565b905092959194509250565b600181811c9082168061034f57607f821691505b60208210810361036d57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156103ba57805f5260205f20601f840160051c810160208510156103985750805b601f840160051c820191505b818110156103b7575f81556001016103a4565b50505b505050565b81516001600160401b038111156103d8576103d86101a6565b6103ec816103e6845461033b565b84610373565b602080601f83116001811461041f575f84156104085750858301515b5f19600386901b1c1916600185901b178555610476565b5f85815260208120601f198616915b8281101561044d5788860151825594840194600190910190840161042e565b508582101561046a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b60805160a05160c051610f8f6104bb5f395f8181610308015281816103a2015261043d01525f818160ba015261053101525f608a0152610f8f5ff3fe608060405234801561000f575f80fd5b5060043610610081575f3560e01c80631d80051d146100855780635cd2525e146100b8578063715018a6146100e757806387c484fe146100f15780638da5cb5b146101065780638e5ea8df1461010e578063b50f2fbc14610121578063e3d1666e14610136578063f2fde38b14610157575b5f80fd5b6040517f000000000000000000000000000000000000000000000000000000000000000081526020015b60405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000005b6040516100af9190610750565b6100ef61016a565b005b6100f961017d565b6040516100af9190610792565b6100da6101b0565b6100ef61011c36600461089a565b6101be565b610129610205565b6040516100af9190610956565b6101496101443660046109d6565b6102d9565b6040516100af929190610a99565b6100ef610165366004610b07565b6105dc565b610172610619565b61017b5f61064b565b565b606061018a600143610b2d565b60405160200161019c91815260200190565b604051602081830303815290604052905090565b5f546001600160a01b031690565b6101c6610619565b80516101d990600190602084019061069a565b506040517fe621d803a0c96b9bbeea51d136777f6ea8a4ce0c4ac74f6645e18b4342e2fa07905f90a150565b60606001805480602002602001604051908101604052809291908181526020015f905b828210156102d0578382905f5260205f2001805461024590610b52565b80601f016020809104026020016040519081016040528092919081815260200182805461027190610b52565b80156102bc5780601f10610293576101008083540402835291602001916102bc565b820191905f5260205f20905b81548152906001019060200180831161029f57829003601f168201915b505050505081526020019060010190610228565b50505050905090565b60605f80838060200190518101906102f19190610c5c565b90505f61030382602001516060015190565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f93e98578460200151805190602001206040518263ffffffff1660e01b815260040161035f91815260200190565b602060405180830381865afa15801561037a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039e9190610d13565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663695378f56040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103fc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104209190610d13565b81101561050157604051638be745d160e01b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690638be745d190602401602060405180830381865afa15801561048a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104ae9190610d13565b82146105015760405162461bcd60e51b815260206004820152601f60248201527f556e66696e616c697a65644c696e65613a206e6f742066696e616c697a65640060448201526064015b60405180910390fd5b6040805160a0810182525f8152602081018490528482015181830152606080860151908201526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016608082015290516324a8807560e21b815273__$011ed85421b307e5206de383929e31be73$__916392a201d49161058c918b91600401610d2a565b5f60405180830381865af41580156105a6573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526105cd9190810190610dfb565b94509450505050935093915050565b6105e4610619565b6001600160a01b03811661060d575f604051631e4fbdf760e01b81526004016104f89190610750565b6106168161064b565b50565b336106226101b0565b6001600160a01b03161461017b573360405163118cdaa760e01b81526004016104f89190610750565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054828255905f5260205f209081019282156106de579160200282015b828111156106de57825182906106ce9082610e9a565b50916020019190600101906106b8565b506106ea9291506106ee565b5090565b808211156106ea575f610701828261070a565b506001016106ee565b50805461071690610b52565b5f825580601f10610725575050565b601f0160209004905f5260205f209081019061061691905b808211156106ea575f815560010161073d565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6107a46020830184610764565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156107e1576107e16107ab565b60405290565b604051601f8201601f191681016001600160401b038111828210171561080f5761080f6107ab565b604052919050565b5f6001600160401b0382111561082f5761082f6107ab565b5060051b60200190565b5f6001600160401b03821115610851576108516107ab565b50601f01601f191660200190565b5f61087161086c84610839565b6107e7565b9050828152838383011115610884575f80fd5b828260208301375f602084830101529392505050565b5f60208083850312156108ab575f80fd5b82356001600160401b03808211156108c1575f80fd5b818501915085601f8301126108d4575f80fd5b81356108e261086c82610817565b81815260059190911b83018401908481019088831115610900575f80fd5b8585015b838110156109495780358581111561091a575f80fd5b8601603f81018b1361092a575f80fd5b61093b8b898301356040840161085f565b845250918601918601610904565b5098975050505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b828110156109ab57603f19888603018452610999858351610764565b9450928501929085019060010161097d565b5092979650505050505050565b5f82601f8301126109c7575f80fd5b6107a48383356020850161085f565b5f805f606084860312156109e8575f80fd5b83356001600160401b03808211156109fe575f80fd5b610a0a878388016109b8565b94506020860135915080821115610a1f575f80fd5b9085019060208288031215610a32575f80fd5b604051602081018181108382111715610a4d57610a4d6107ab565b604052823582811115610a5e575f80fd5b610a6a898286016109b8565b82525093506040860135915080821115610a82575f80fd5b50610a8f868287016109b8565b9150509250925092565b5f604082016040835280855180835260608501915060608160051b860101925060208088015f5b83811015610aee57605f19888703018552610adc868351610764565b95509382019390820190600101610ac0565b50505050508091505060ff831660208301529392505050565b5f60208284031215610b17575f80fd5b81356001600160a01b03811681146107a4575f80fd5b81810381811115610b4c57634e487b7160e01b5f52601160045260245ffd5b92915050565b600181811c90821680610b6657607f821691505b602082108103610b8457634e487b7160e01b5f52602260045260245ffd5b50919050565b5f82601f830112610b99575f80fd5b8151610ba761086c82610839565b818152846020838601011115610bbb575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f82601f830112610be6575f80fd5b81516020610bf661086c83610817565b82815260059290921b84018101918181019086841115610c14575f80fd5b8286015b84811015610c515780516001600160401b03811115610c35575f80fd5b610c438986838b0101610b8a565b845250918301918301610c18565b509695505050505050565b5f60208284031215610c6c575f80fd5b81516001600160401b0380821115610c82575f80fd5b9083019060808286031215610c95575f80fd5b610c9d6107bf565b82518152602083015182811115610cb2575f80fd5b610cbe87828601610b8a565b602083015250604083015182811115610cd5575f80fd5b610ce187828601610bd7565b604083015250606083015182811115610cf8575f80fd5b610d0487828601610b8a565b60608301525095945050505050565b5f60208284031215610d23575f80fd5b5051919050565b604081525f83516020806040850152610d466060850183610764565b91508382038185015260a08201855183528186015182840152604086015160a0604085015281815180845260c08601915060c08160051b870101935084830192505f5b81811015610db75760bf19878603018352610da5858551610764565b94509285019291850191600101610d89565b50505050606086015191508281036060840152610dd48183610764565b9150506080850151610df160808401826001600160a01b03169052565b5095945050505050565b5f8060408385031215610e0c575f80fd5b82516001600160401b03811115610e21575f80fd5b610e2d85828601610bd7565b925050602083015160ff81168114610e43575f80fd5b809150509250929050565b601f821115610e9557805f5260205f20601f840160051c81016020851015610e735750805b601f840160051c820191505b81811015610e92575f8155600101610e7f565b50505b505050565b81516001600160401b03811115610eb357610eb36107ab565b610ec781610ec18454610b52565b84610e4e565b602080601f831160018114610efa575f8415610ee35750858301515b5f19600386901b1c1916600185901b178555610f51565b5f85815260208120601f198616915b82811015610f2857888601518255948401946001909101908401610f09565b5085821015610f4557878501515f19600388901b60f8161c191681555b505060018460011b0185555b50505050505056fea2646970667358221220ea700a53936eb70ca9ff273ad52729fe34161464b7678d4d1cc33ec89160b6dd64736f6c63430008190033","sourceMap":"292:2296:20:-:0;;;389:202;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;537:4;543:6;551:5;566:10:0;;1269:95:39;;1322:31;;-1:-1:-1;;;1322:31:39;;1350:1;1322:31;;;2592:51:55;2565:18;;1322:31:39;;;;;;;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;568:16:20;;;::::1;;::::0;-1:-1:-1;292:2296:20;;-1:-1:-1;;;292:2296:20;2912:187:39;2985:16;3004:6;;-1:-1:-1;;;;;3020:17:39;;;-1:-1:-1;;;;;;3020:17:39;;;;;;3052:40;;3004:6;;;;;;;3052:40;;2985:16;3052:40;2975:124;2912:187;:::o;292:2296:20:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;292:2296:20;;;-1:-1:-1;292:2296:20;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;14:127:55;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:55;247:40;;-1:-1:-1;;;;;302:34:55;;338:22;;;299:62;296:88;;;364:18;;:::i;:::-;400:2;393:22;146:275;;-1:-1:-1;146:275:55:o;426:193::-;521:13;;-1:-1:-1;;;;;563:31:55;;553:42;;543:70;;609:1;606;599:12;543:70;426:193;;;:::o;624:1817::-;800:6;808;816;824;877:3;865:9;856:7;852:23;848:33;845:53;;;894:1;891;884:12;845:53;921:16;;-1:-1:-1;;;;;986:14:55;;;983:34;;;1013:1;1010;1003:12;983:34;1051:6;1040:9;1036:22;1026:32;;1096:7;1089:4;1085:2;1081:13;1077:27;1067:55;;1118:1;1115;1108:12;1067:55;1147:2;1141:9;1169:4;1192:2;1188;1185:10;1182:36;;;1198:18;;:::i;:::-;1244:2;1241:1;1237:10;1267:28;1291:2;1287;1283:11;1267:28;:::i;:::-;1329:15;;;1399:11;;;1395:20;;;1360:12;;;;1427:19;;;1424:39;;;1459:1;1456;1449:12;1424:39;1491:2;1487;1483:11;1472:22;;1503:696;1519:6;1514:3;1511:15;1503:696;;;1598:3;1592:10;1634:2;1621:11;1618:19;1615:39;;;1650:1;1647;1640:12;1615:39;1677:20;;1732:2;1724:11;;1720:25;-1:-1:-1;1710:53:55;;1759:1;1756;1749:12;1710:53;1800:2;1796;1792:11;1786:18;1827:2;1823;1820:10;1817:36;;;1833:18;;:::i;:::-;1879:53;1922:2;1903:13;;-1:-1:-1;;1899:27:55;1895:36;;1879:53;:::i;:::-;1959:2;1952:5;1945:17;2003:7;1998:2;1993;1989;1985:11;1981:20;1978:33;1975:53;;;2024:1;2021;2014:12;1975:53;2076:2;2071;2067;2063:11;2058:2;2051:5;2047:14;2041:38;2124:1;2103:14;;;2099:23;;2092:34;;;;2139:18;;-1:-1:-1;1536:12:55;;;;2177;;;;1503:696;;;2218:5;2208:15;;;;;2263:2;2252:9;2248:18;2242:25;2232:35;;;;;;2286:65;2347:2;2336:9;2332:18;2286:65;:::i;:::-;2276:75;;2370:65;2431:2;2420:9;2416:18;2370:65;:::i;:::-;2360:75;;624:1817;;;;;;;:::o;2654:380::-;2733:1;2729:12;;;;2776;;;2797:61;;2851:4;2843:6;2839:17;2829:27;;2797:61;2904:2;2896:6;2893:14;2873:18;2870:38;2867:161;;2950:10;2945:3;2941:20;2938:1;2931:31;2985:4;2982:1;2975:15;3013:4;3010:1;3003:15;2867:161;;2654:380;;;:::o;3165:518::-;3267:2;3262:3;3259:11;3256:421;;;3303:5;3300:1;3293:16;3347:4;3344:1;3334:18;3417:2;3405:10;3401:19;3398:1;3394:27;3388:4;3384:38;3453:4;3441:10;3438:20;3435:47;;;-1:-1:-1;3476:4:55;3435:47;3531:2;3526:3;3522:12;3519:1;3515:20;3509:4;3505:31;3495:41;;3586:81;3604:2;3597:5;3594:13;3586:81;;;3663:1;3649:16;;3630:1;3619:13;3586:81;;;3590:3;;3256:421;3165:518;;;:::o;3859:1345::-;3979:10;;-1:-1:-1;;;;;4001:30:55;;3998:56;;;4034:18;;:::i;:::-;4063:97;4153:6;4113:38;4145:4;4139:11;4113:38;:::i;:::-;4107:4;4063:97;:::i;:::-;4215:4;;4272:2;4261:14;;4289:1;4284:663;;;;4991:1;5008:6;5005:89;;;-1:-1:-1;5060:19:55;;;5054:26;5005:89;-1:-1:-1;;3816:1:55;3812:11;;;3808:24;3804:29;3794:40;3840:1;3836:11;;;3791:57;5107:81;;4254:944;;4284:663;3112:1;3105:14;;;3149:4;3136:18;;-1:-1:-1;;4320:20:55;;;4438:236;4452:7;4449:1;4446:14;4438:236;;;4541:19;;;4535:26;4520:42;;4633:27;;;;4601:1;4589:14;;;;4468:19;;4438:236;;;4442:3;4702:6;4693:7;4690:19;4687:201;;;4763:19;;;4757:26;-1:-1:-1;;4846:1:55;4842:14;;;4858:3;4838:24;4834:37;4830:42;4815:58;4800:74;;4687:201;;;4934:1;4925:6;4922:1;4918:14;4914:22;4908:4;4901:36;4254:944;;;;;3859:1345;;:::o;:::-;292:2296:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{"contracts/GatewayVM.sol":{"GatewayVM":[{"start":2591,"length":20}]}}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b5060043610610081575f3560e01c80631d80051d146100855780635cd2525e146100b8578063715018a6146100e757806387c484fe146100f15780638da5cb5b146101065780638e5ea8df1461010e578063b50f2fbc14610121578063e3d1666e14610136578063f2fde38b14610157575b5f80fd5b6040517f000000000000000000000000000000000000000000000000000000000000000081526020015b60405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000005b6040516100af9190610750565b6100ef61016a565b005b6100f961017d565b6040516100af9190610792565b6100da6101b0565b6100ef61011c36600461089a565b6101be565b610129610205565b6040516100af9190610956565b6101496101443660046109d6565b6102d9565b6040516100af929190610a99565b6100ef610165366004610b07565b6105dc565b610172610619565b61017b5f61064b565b565b606061018a600143610b2d565b60405160200161019c91815260200190565b604051602081830303815290604052905090565b5f546001600160a01b031690565b6101c6610619565b80516101d990600190602084019061069a565b506040517fe621d803a0c96b9bbeea51d136777f6ea8a4ce0c4ac74f6645e18b4342e2fa07905f90a150565b60606001805480602002602001604051908101604052809291908181526020015f905b828210156102d0578382905f5260205f2001805461024590610b52565b80601f016020809104026020016040519081016040528092919081815260200182805461027190610b52565b80156102bc5780601f10610293576101008083540402835291602001916102bc565b820191905f5260205f20905b81548152906001019060200180831161029f57829003601f168201915b505050505081526020019060010190610228565b50505050905090565b60605f80838060200190518101906102f19190610c5c565b90505f61030382602001516060015190565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f93e98578460200151805190602001206040518263ffffffff1660e01b815260040161035f91815260200190565b602060405180830381865afa15801561037a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061039e9190610d13565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663695378f56040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103fc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104209190610d13565b81101561050157604051638be745d160e01b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690638be745d190602401602060405180830381865afa15801561048a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104ae9190610d13565b82146105015760405162461bcd60e51b815260206004820152601f60248201527f556e66696e616c697a65644c696e65613a206e6f742066696e616c697a65640060448201526064015b60405180910390fd5b6040805160a0810182525f8152602081018490528482015181830152606080860151908201526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016608082015290516324a8807560e21b815273__$011ed85421b307e5206de383929e31be73$__916392a201d49161058c918b91600401610d2a565b5f60405180830381865af41580156105a6573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526105cd9190810190610dfb565b94509450505050935093915050565b6105e4610619565b6001600160a01b03811661060d575f604051631e4fbdf760e01b81526004016104f89190610750565b6106168161064b565b50565b336106226101b0565b6001600160a01b03161461017b573360405163118cdaa760e01b81526004016104f89190610750565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054828255905f5260205f209081019282156106de579160200282015b828111156106de57825182906106ce9082610e9a565b50916020019190600101906106b8565b506106ea9291506106ee565b5090565b808211156106ea575f610701828261070a565b506001016106ee565b50805461071690610b52565b5f825580601f10610725575050565b601f0160209004905f5260205f209081019061061691905b808211156106ea575f815560010161073d565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6107a46020830184610764565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604051608081016001600160401b03811182821017156107e1576107e16107ab565b60405290565b604051601f8201601f191681016001600160401b038111828210171561080f5761080f6107ab565b604052919050565b5f6001600160401b0382111561082f5761082f6107ab565b5060051b60200190565b5f6001600160401b03821115610851576108516107ab565b50601f01601f191660200190565b5f61087161086c84610839565b6107e7565b9050828152838383011115610884575f80fd5b828260208301375f602084830101529392505050565b5f60208083850312156108ab575f80fd5b82356001600160401b03808211156108c1575f80fd5b818501915085601f8301126108d4575f80fd5b81356108e261086c82610817565b81815260059190911b83018401908481019088831115610900575f80fd5b8585015b838110156109495780358581111561091a575f80fd5b8601603f81018b1361092a575f80fd5b61093b8b898301356040840161085f565b845250918601918601610904565b5098975050505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b828110156109ab57603f19888603018452610999858351610764565b9450928501929085019060010161097d565b5092979650505050505050565b5f82601f8301126109c7575f80fd5b6107a48383356020850161085f565b5f805f606084860312156109e8575f80fd5b83356001600160401b03808211156109fe575f80fd5b610a0a878388016109b8565b94506020860135915080821115610a1f575f80fd5b9085019060208288031215610a32575f80fd5b604051602081018181108382111715610a4d57610a4d6107ab565b604052823582811115610a5e575f80fd5b610a6a898286016109b8565b82525093506040860135915080821115610a82575f80fd5b50610a8f868287016109b8565b9150509250925092565b5f604082016040835280855180835260608501915060608160051b860101925060208088015f5b83811015610aee57605f19888703018552610adc868351610764565b95509382019390820190600101610ac0565b50505050508091505060ff831660208301529392505050565b5f60208284031215610b17575f80fd5b81356001600160a01b03811681146107a4575f80fd5b81810381811115610b4c57634e487b7160e01b5f52601160045260245ffd5b92915050565b600181811c90821680610b6657607f821691505b602082108103610b8457634e487b7160e01b5f52602260045260245ffd5b50919050565b5f82601f830112610b99575f80fd5b8151610ba761086c82610839565b818152846020838601011115610bbb575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f82601f830112610be6575f80fd5b81516020610bf661086c83610817565b82815260059290921b84018101918181019086841115610c14575f80fd5b8286015b84811015610c515780516001600160401b03811115610c35575f80fd5b610c438986838b0101610b8a565b845250918301918301610c18565b509695505050505050565b5f60208284031215610c6c575f80fd5b81516001600160401b0380821115610c82575f80fd5b9083019060808286031215610c95575f80fd5b610c9d6107bf565b82518152602083015182811115610cb2575f80fd5b610cbe87828601610b8a565b602083015250604083015182811115610cd5575f80fd5b610ce187828601610bd7565b604083015250606083015182811115610cf8575f80fd5b610d0487828601610b8a565b60608301525095945050505050565b5f60208284031215610d23575f80fd5b5051919050565b604081525f83516020806040850152610d466060850183610764565b91508382038185015260a08201855183528186015182840152604086015160a0604085015281815180845260c08601915060c08160051b870101935084830192505f5b81811015610db75760bf19878603018352610da5858551610764565b94509285019291850191600101610d89565b50505050606086015191508281036060840152610dd48183610764565b9150506080850151610df160808401826001600160a01b03169052565b5095945050505050565b5f8060408385031215610e0c575f80fd5b82516001600160401b03811115610e21575f80fd5b610e2d85828601610bd7565b925050602083015160ff81168114610e43575f80fd5b809150509250929050565b601f821115610e9557805f5260205f20601f840160051c81016020851015610e735750805b601f840160051c820191505b81811015610e92575f8155600101610e7f565b50505b505050565b81516001600160401b03811115610eb357610eb36107ab565b610ec781610ec18454610b52565b84610e4e565b602080601f831160018114610efa575f8415610ee35750858301515b5f19600386901b1c1916600185901b178555610f51565b5f85815260208120601f198616915b82811015610f2857888601518255948401946001909101908401610f09565b5085821015610f4557878501515f19600388901b60f8161c191681555b505060018460011b0185555b50505050505056fea2646970667358221220ea700a53936eb70ca9ff273ad52729fe34161464b7678d4d1cc33ec89160b6dd64736f6c63430008190033","sourceMap":"292:2296:20:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;896:84:0;;;966:7;160:25:55;;148:2;133:18;896:84:0;;;;;;;;986:89;1062:6;986:89;;;;;;;:::i;2293:101:39:-;;;:::i;:::-;;597:117:20;;;:::i;:::-;;;;;;;:::i;1638:85:39:-;;;:::i;663:129:0:-;;;;;;:::i;:::-;;:::i;798:92::-;;;:::i;:::-;;;;;;;:::i;860:1523:20:-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;2543:215:39:-;;;;;;:::i;:::-;;:::i;2293:101::-;1531:13;:11;:13::i;:::-;2357:30:::1;2384:1;2357:18;:30::i;:::-;2293:101::o:0;597:117:20:-;648:12;690:16;705:1;690:12;:16;:::i;:::-;679:28;;;;;;160:25:55;;148:2;133:18;;14:177;679:28:20;;;;;;;;;;;;;672:35;;597:117;:::o;1638:85:39:-;1684:7;1710:6;-1:-1:-1;;;;;1710:6:39;;1638:85::o;663:129:0:-;1531:13:39;: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;860:1523:20:-;1012:14;1028;1121:21;1156:5;1145:33;;;;;;;;;;;;:::i;:::-;1121:57;;1587:17;1607:36;1625:1;:17;;;2547:2;2540:10;2534:17;;2389:197;1607:36;1587:56;;1653:21;1677:7;-1:-1:-1;;;;;1677:31:20;;1732:1;:17;;;1722:28;;;;;;1677:83;;;;;;;;;;;;;160:25:55;;148:2;133:18;;14:177;1677:83:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1653:107;;1892:7;-1:-1:-1;;;;;1892:28:20;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1876:13;:46;1872:348;;;2106:38;;-1:-1:-1;;;2106:38:20;;;;;160:25:55;;;2106:7:20;-1:-1:-1;;;;;2106:23:20;;;;133:18:55;;2106:38:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2093:9;:51;2068:141;;;;-1:-1:-1;;;2068:141:20;;10949:2:55;2068:141:20;;;10931:21:55;10988:2;10968:18;;;10961:30;11027:33;11007:18;;;11000:61;11078:18;;2068:141:20;;;;;;;;;2308:54;;;;;;;;-1:-1:-1;2308:54:20;;;;;;;;2336:8;;;;2308:54;;;;;2346:7;;;;2308:54;;;;-1:-1:-1;;;;;2355:6:20;2308:54;;;;;2248:128;;-1:-1:-1;;;2248:128:20;;:9;;:21;;:128;;2287:3;;2248:128;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2248:128:20;;;;;;;;;;;;:::i;:::-;2229:147;;;;;;;860:1523;;;;;;:::o;2543:215:39:-;1531:13;:11;:13::i;:::-;-1:-1:-1;;;;;2627:22:39;::::1;2623:91;;2700:1;2672:31;;-1:-1:-1::0;;;2672:31:39::1;;;;;;;;:::i;2623:91::-;2723:28;2742:8;2723:18;:28::i;:::-;2543:215:::0;:::o;1796:162::-;735:10:40;1855:7:39;:5;:7::i;:::-;-1:-1:-1;;;;;1855:23:39;;1851:101;;735:10:40;1901:40:39;;-1:-1:-1;;;1901:40:39;;;;;;;;:::i;2912:187::-;2985:16;3004:6;;-1:-1:-1;;;;;3020:17:39;;;-1:-1:-1;;;;;;3020:17:39;;;;;;3052:40;;3004:6;;;;;;;3052:40;;2985:16;3052:40;2975:124;2912:187;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;321:226:55;-1:-1:-1;;;;;508:32:55;;;;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:55: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:55;;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:55;1766:40;;-1:-1:-1;;;;;1821:34:55;;1857:22;;;1818:62;1815:88;;;1883:18;;:::i;:::-;1919:2;1912:22;1665:275;;-1:-1:-1;1665:275:55:o;1945:182::-;2004:4;-1:-1:-1;;;;;2026:30:55;;2023:56;;;2059:18;;:::i;:::-;-1:-1:-1;2104:1:55;2100:14;2116:4;2096:25;;1945:182::o;2132:187::-;2181:4;-1:-1:-1;;;;;2203:30:55;;2200:56;;;2236:18;;:::i;:::-;-1:-1:-1;2302:2:55;2281:15;-1:-1:-1;;2277:29:55;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:55;;;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:55;;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:55;;;;3449;;3416:418;;;-1:-1:-1;3853:5:55;2667:1197;-1:-1:-1;;;;;;;;2667:1197:55: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:55;;;;4585:15;;;;4424:1;4417:9;4388:254;;;-1:-1:-1;4659:6:55;;3869:802;-1:-1:-1;;;;;;;3869:802:55: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:55;;;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:55;-1:-1:-1;5930:2:55;5915:18;;5902:32;;-1:-1:-1;5946:16:55;;;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:55;;;;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:55;;7145:42;;7135:70;;7201:1;7198;7191:12;7240:225;7307:9;;;7328:11;;;7325:134;;;7381:10;7376:3;7372:20;7369:1;7362:31;7416:4;7413:1;7406:15;7444:4;7441:1;7434:15;7325:134;7240:225;;;;:::o;7470:380::-;7549:1;7545:12;;;;7592;;;7613:61;;7667:4;7659:6;7655:17;7645:27;;7613:61;7720:2;7712:6;7709:14;7689:18;7686:38;7683:161;;7766:10;7761:3;7757:20;7754:1;7747:31;7801:4;7798:1;7791:15;7829:4;7826:1;7819:15;7683:161;;7470:380;;;:::o;7855:460::-;7908:5;7961:3;7954:4;7946:6;7942:17;7938:27;7928:55;;7979:1;7976;7969:12;7928:55;8008:6;8002:13;8039:49;8055:32;8084:2;8055:32;:::i;8039:49::-;8113:2;8104:7;8097:19;8159:3;8152:4;8147:2;8139:6;8135:15;8131:26;8128:35;8125:55;;;8176:1;8173;8166:12;8125:55;8234:2;8227:4;8219:6;8215:17;8208:4;8199:7;8195:18;8189:48;8282:1;8257:16;;;8275:4;8253:27;8246:38;;;;8261:7;7855:460;-1:-1:-1;;;7855:460:55:o;8320:823::-;8383:5;8436:3;8429:4;8421:6;8417:17;8413:27;8403:55;;8454:1;8451;8444:12;8403:55;8483:6;8477:13;8509:4;8533:59;8549:42;8588:2;8549:42;:::i;8533:59::-;8626:15;;;8712:1;8708:10;;;;8696:23;;8692:32;;;8657:12;;;;8736:15;;;8733:35;;;8764:1;8761;8754:12;8733:35;8800:2;8792:6;8788:15;8812:302;8828:6;8823:3;8820:15;8812:302;;;8901:10;;-1:-1:-1;;;;;8927:35:55;;8924:55;;;8975:1;8972;8965:12;8924:55;9004:67;9067:3;9062:2;9048:11;9040:6;9036:24;9032:33;9004:67;:::i;:::-;8992:80;;-1:-1:-1;9092:12:55;;;;8845;;8812:302;;;-1:-1:-1;9132:5:55;8320:823;-1:-1:-1;;;;;;8320:823:55:o;9148:1034::-;9248:6;9301:2;9289:9;9280:7;9276:23;9272:32;9269:52;;;9317:1;9314;9307:12;9269:52;9344:16;;-1:-1:-1;;;;;9409:14:55;;;9406:34;;;9436:1;9433;9426:12;9406:34;9459:22;;;;9515:4;9497:16;;;9493:27;9490:47;;;9533:1;9530;9523:12;9490:47;9559:22;;:::i;:::-;9610:2;9604:9;9597:5;9590:24;9653:2;9649;9645:11;9639:18;9682:2;9672:8;9669:16;9666:36;;;9698:1;9695;9688:12;9666:36;9734:55;9781:7;9770:8;9766:2;9762:17;9734:55;:::i;:::-;9729:2;9722:5;9718:14;9711:79;;9829:2;9825;9821:11;9815:18;9858:2;9848:8;9845:16;9842:36;;;9874:1;9871;9864:12;9842:36;9910:65;9967:7;9956:8;9952:2;9948:17;9910:65;:::i;:::-;9905:2;9898:5;9894:14;9887:89;;10015:2;10011;10007:11;10001:18;10044:2;10034:8;10031:16;10028:36;;;10060:1;10057;10050:12;10028:36;10096:55;10143:7;10132:8;10128:2;10124:17;10096:55;:::i;:::-;10091:2;10080:14;;10073:79;-1:-1:-1;10084:5:55;9148:1034;-1:-1:-1;;;;;9148:1034:55:o;10369:184::-;10439:6;10492:2;10480:9;10471:7;10467:23;10463:32;10460:52;;;10508:1;10505;10498:12;10460:52;-1:-1:-1;10531:16:55;;10369:184;-1:-1:-1;10369:184:55:o;11107:1569::-;11398:2;11387:9;11380:21;11361:4;11436:6;11430:13;11462:4;11502:2;11497;11486:9;11482:18;11475:30;11525:50;11571:2;11560:9;11556:18;11542:12;11525:50;:::i;:::-;11514:61;;11620:9;11615:3;11611:19;11606:2;11595:9;11591:18;11584:47;11663:4;11658:3;11654:14;11695:6;11689:13;11684:3;11677:26;11751:2;11743:6;11739:15;11733:22;11728:2;11723:3;11719:12;11712:44;11805:2;11797:6;11793:15;11787:22;11839:4;11834:2;11829:3;11825:12;11818:26;11864:6;11899:14;11893:21;11938:6;11930;11923:22;11970:3;11965;11961:13;11954:20;;12027:3;12017:6;12014:1;12010:14;12005:3;12001:24;11997:34;11983:48;;12074:2;12058:14;12054:23;12040:37;;12095:1;12105:249;12119:6;12116:1;12113:13;12105:249;;;12206:3;12202:8;12196:3;12188:6;12184:16;12180:31;12175:3;12168:44;12235:39;12267:6;12258;12252:13;12235:39;:::i;:::-;12225:49;-1:-1:-1;12297:15:55;;;;12332:12;;;;12141:1;12134:9;12105:249;;;12109:3;;;;12403:2;12395:6;12391:15;12385:22;12363:44;;12449:3;12441:6;12437:16;12432:2;12427:3;12423:12;12416:38;12477:40;12510:6;12494:14;12477:40;:::i;:::-;12463:54;;;12566:4;12558:6;12554:17;12548:24;12581:66;12641:4;12636:3;12632:14;12616;-1:-1:-1;;;;;278:31:55;266:44;;196:120;12581:66;-1:-1:-1;12664:6:55;11107:1569;-1:-1:-1;;;;;11107:1569:55:o;12681:520::-;12792:6;12800;12853:2;12841:9;12832:7;12828:23;12824:32;12821:52;;;12869:1;12866;12859:12;12821:52;12896:16;;-1:-1:-1;;;;;12924:30:55;;12921:50;;;12967:1;12964;12957:12;12921:50;12990:70;13052:7;13043:6;13032:9;13028:22;12990:70;:::i;:::-;12980:80;;;13103:2;13092:9;13088:18;13082:25;13147:4;13140:5;13136:16;13129:5;13126:27;13116:55;;13167:1;13164;13157:12;13116:55;13190:5;13180:15;;;12681:520;;;;;:::o;13332:518::-;13434:2;13429:3;13426:11;13423:421;;;13470:5;13467:1;13460:16;13514:4;13511:1;13501:18;13584:2;13572:10;13568:19;13565:1;13561:27;13555:4;13551:38;13620:4;13608:10;13605:20;13602:47;;;-1:-1:-1;13643:4:55;13602:47;13698:2;13693:3;13689:12;13686:1;13682:20;13676:4;13672:31;13662:41;;13753:81;13771:2;13764:5;13761:13;13753:81;;;13830:1;13816:16;;13797:1;13786:13;13753:81;;;13757:3;;13423:421;13332:518;;;:::o;14026:1345::-;14146:10;;-1:-1:-1;;;;;14168:30:55;;14165:56;;;14201:18;;:::i;:::-;14230:97;14320:6;14280:38;14312:4;14306:11;14280:38;:::i;:::-;14274:4;14230:97;:::i;:::-;14382:4;;14439:2;14428:14;;14456:1;14451:663;;;;15158:1;15175:6;15172:89;;;-1:-1:-1;15227:19:55;;;15221:26;15172:89;-1:-1:-1;;13983:1:55;13979:11;;;13975:24;13971:29;13961:40;14007:1;14003:11;;;13958:57;15274:81;;14421:944;;14451:663;13279:1;13272:14;;;13316:4;13303:18;;-1:-1:-1;;14487:20:55;;;14605:236;14619:7;14616:1;14613:14;14605:236;;;14708:19;;;14702:26;14687:42;;14800:27;;;;14768:1;14756:14;;;;14635:19;;14605:236;;;14609:3;14869:6;14860:7;14857:19;14854:201;;;14930:19;;;14924:26;-1:-1:-1;;15013:1:55;15009:14;;;15025:3;15005:24;15001:37;14997:42;14982:58;14967:74;;14854:201;;;15101:1;15092:6;15089:1;15085:14;15081:22;15075:4;15068:36;14421:944;;;;;14026:1345;;:::o","linkReferences":{"contracts/GatewayVM.sol":{"GatewayVM":[{"start":1380,"length":20}]}},"immutableReferences":{"20":[{"start":138,"length":32}],"23":[{"start":186,"length":32},{"start":1329,"length":32}],"7230":[{"start":776,"length":32},{"start":930,"length":32},{"start":1085,"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\":\"contract ILineaRollup\",\"name\":\"rollup\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"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\":\"\",\"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/linea/UnfinalizedLineaVerifier.sol\":\"UnfinalizedLineaVerifier\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[\":@eth-optimism/=lib/optimism/packages/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":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/linea/ILineaRollup.sol\":{\"keccak256\":\"0x3cf0f162ffc2745e7acfabeeb15ee0574ac0de0e76b080b9378603a43ca19bcc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3a80775db81060092552e4c2159cc07c3558124063093bf1572ede609f43dd29\",\"dweb:/ipfs/QmWLxpYvbKdEg9VaD68V4ZdUsJXAiK8Acx8erKnjkMn4yJ\"]},\"contracts/linea/UnfinalizedLineaVerifier.sol\":{\"keccak256\":\"0x74740ad943d5d4c1c4c8ce46456665cb89263d1f31ec1fe46154922d9d86a44c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://93af61927ad653dbe59a5cfada70e2481188fe4f593ee2d0adcdc4a5d4ed7cfb\",\"dweb:/ipfs/QmRu9jCAe6oi716XpadJEeq4Dox9W4fn4716WbGLUTY9Ks\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0xf61cb43a94d8318049d0a7f567af8c0aa952b5762a43851b130b90b3fcde0c6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://53a52c6c3aeb22f7a18f53fca16af590308a8e3e5507e74df9b8e2561c932194\",\"dweb:/ipfs/QmaaXuY8mC66YoE2xyZdWuLHXqAxLjbnNxiofx8BTP1MRn\"]},\"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\"]}},\"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":"contract ILineaRollup","name":"rollup","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"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":"","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/","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/linea/UnfinalizedLineaVerifier.sol":"UnfinalizedLineaVerifier"},"evmVersion":"cancun","libraries":{}},"sources":{"contracts/AbstractVerifier.sol":{"keccak256":"0x4868ee9c8ade05b23ce93c2fce05