{"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 IRollupCore"},{"name":"minBlocks","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"gatewayURLs","inputs":[],"outputs":[{"name":"","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"getHooks","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IVerifierHooks"}],"stateMutability":"view"},{"type":"function","name":"getLatestContext","inputs":[],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getStorageValues","inputs":[{"name":"context","type":"bytes","internalType":"bytes"},{"name":"req","type":"tuple","internalType":"struct GatewayRequest","components":[{"name":"ops","type":"bytes","internalType":"bytes"}]},{"name":"proof","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes[]","internalType":"bytes[]"},{"name":"exitCode","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"getWindow","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setGatewayURLs","inputs":[{"name":"urls","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"GatewayURLsChanged","inputs":[],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"CommitTooNew","inputs":[{"name":"latest","type":"uint256","internalType":"uint256"},{"name":"got","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"CommitTooOld","inputs":[{"name":"latest","type":"uint256","internalType":"uint256"},{"name":"got","type":"uint256","internalType":"uint256"},{"name":"window","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ContentLengthMismatch","inputs":[]},{"type":"error","name":"EmptyItem","inputs":[]},{"type":"error","name":"InvalidDataRemainder","inputs":[]},{"type":"error","name":"InvalidHeader","inputs":[]},{"type":"error","name":"OwnableInvalidOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"OwnableUnauthorizedAccount","inputs":[{"name":"account","type":"address","internalType":"address"}]},{"type":"error","name":"UnexpectedList","inputs":[]},{"type":"error","name":"UnexpectedString","inputs":[]}],"bytecode":{"object":"0x610100604052348015610010575f80fd5b506040516122a43803806122a483398101604081905261002f91610209565b848484338061005757604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b6100608161009d565b5082516100749060019060208601906100ec565b506080919091526001600160a01b0390811660a0529290921660c05260e0525061049892505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054828255905f5260205f20908101928215610130579160200282015b82811115610130578251829061012090826103d9565b509160200191906001019061010a565b5061013c929150610140565b5090565b8082111561013c575f610153828261015c565b50600101610140565b50805461016890610355565b5f825580601f10610177575050565b601f0160209004905f5260205f20908101906101939190610196565b50565b5b8082111561013c575f8155600101610197565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156101e6576101e66101aa565b604052919050565b80516001600160a01b0381168114610204575f80fd5b919050565b5f805f805f60a0868803121561021d575f80fd5b85516001600160401b0380821115610233575f80fd5b818801915088601f830112610246575f80fd5b815181811115610258576102586101aa565b61026760208260051b016101be565b8082825260208201915060208360051b86010192508b831115610288575f80fd5b602085015b83811015610318578051858111156102a3575f80fd5b8601603f81018e136102b3575f80fd5b6020810151868111156102c8576102c86101aa565b6102db601f8201601f19166020016101be565b8181528f60408385010111156102ef575f80fd5b8160408401602083015e5f6020838301015280865250505060208301925060208101905061028d565b50809950505050505060208601519350610334604087016101ee565b9250610342606087016101ee565b9150608086015190509295509295909350565b600181811c9082168061036957607f821691505b60208210810361038757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156103d457805f5260205f20601f840160051c810160208510156103b25750805b601f840160051c820191505b818110156103d1575f81556001016103be565b50505b505050565b81516001600160401b038111156103f2576103f26101aa565b610406816104008454610355565b8461038d565b602080601f831160018114610439575f84156104225750858301515b5f19600386901b1c1916600185901b178555610490565b5f85815260208120601f198616915b8281101561046757888601518255948401946001909101908401610448565b508582101561048457878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b60805160a05160c05160e051611d8e6105165f395f8181610181015281816102d301526109c701525f81816101a80152818161024d01528181610314015281816107640152818161087f015281816109280152610a2701525f818160ba01526105f501525f8181608a01528181610c180152610c600152611d8e5ff3fe608060405234801561000f575f80fd5b5060043610610081575f3560e01c80631d80051d146100855780635cd2525e146100b8578063715018a6146100e757806387c484fe146100f15780638da5cb5b146101065780638e5ea8df1461010e578063b50f2fbc14610121578063e3d1666e14610136578063f2fde38b14610157575b5f80fd5b6040517f000000000000000000000000000000000000000000000000000000000000000081526020015b60405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000005b6040516100af9190611389565b6100ef61016a565b005b6100f961017d565b6040516100af91906113cb565b6100da610440565b6100ef61011c3660046114ef565b61044e565b610129610495565b6040516100af91906115ab565b61014961014436600461162b565b610569565b6040516100af9291906116ee565b6100ef61016536600461175c565b61068d565b6101726106ca565b61017b5f6106fc565b565b60607f00000000000000000000000000000000000000000000000000000000000000005f0361024a577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166365f7f80d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610202573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610226919061179d565b60405160200161023691906117b6565b604051602081830303815290604052905090565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637ba9534a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102a7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102cb919061179d565b90505f6102f87f0000000000000000000000000000000000000000000000000000000000000000436117de565b90505b6040516324b204d360e21b81525f906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906392c8134c906103499086906004016117b6565b61018060405180830381865afa158015610365573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061038991906117f1565b9050818161014001516001600160401b0316111580156103ae57506103ae838261074b565b156103db57826040516020016103c491906117b6565b604051602081830303815290604052935050505090565b826001600160401b03165f036103f15750610402565b6103fa836118c1565b9250506102fb565b60405162461bcd60e51b815260206004820152600e60248201526d4e6974726f3a206e6f206e6f646560901b60448201526064015b60405180910390fd5b5f546001600160a01b031690565b6104566106ca565b80516104699060019060208401906112bb565b506040517fe621d803a0c96b9bbeea51d136777f6ea8a4ce0c4ac74f6645e18b4342e2fa07905f90a150565b60606001805480602002602001604051908101604052809291908181526020015f905b82821015610560578382905f5260205f200180546104d5906118e2565b80601f0160208091040260200160405190810160405280929190818152602001828054610501906118e2565b801561054c5780601f106105235761010080835404028352916020019161054c565b820191905f5260205f20905b81548152906001019060200180831161052f57829003601f168201915b5050505050815260200190600101906104b8565b50505050905090565b60605f808380602001905181019061058191906119ec565b90505f61059187835f01516107f0565b90505f6105ab826040015184604001518560200151610b56565b905073__$011ed85421b307e5206de383929e31be73$__6392a201d4886040518060a001604052805f815260200185815260200187606001518152602001876080015181526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152506040518363ffffffff1660e01b815260040161063d929190611ab4565b5f60405180830381865af4158015610657573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261067e9190810190611b85565b94509450505050935093915050565b6106956106ca565b6001600160a01b0381166106be575f604051631e4fbdf760e01b81526004016104379190611389565b6106c7816106fc565b50565b336106d3610440565b6001600160a01b03161461017b573360405163118cdaa760e01b81526004016104379190611389565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6040516317185fa560e21b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635c617e94906107999086906004016117b6565b602060405180830381865afa1580156107b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d89190611bd8565b8260c001516001600160401b03161190505b92915050565b60408051610180810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081018290526101008101829052610120810182905261014081018290526101608101919091525f83806020019051810190610865919061179d565b6040516324b204d360e21b81529091506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906392c8134c906108b49086906004016117b6565b61018060405180830381865afa1580156108d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f491906117f1565b9150806001600160401b0316836001600160401b031614610b4f576040516324b204d360e21b81525f906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906392c8134c9061095d9085906004016117b6565b61018060405180830381865afa158015610979573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099d91906117f1565b90506109c58161014001516001600160401b03168461014001516001600160401b0316610c12565b7f00000000000000000000000000000000000000000000000000000000000000005f03610b03575b836001600160401b031681606001516001600160401b03161115610aa25760608101516040516324b204d360e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916392c8134c91610a5b91906004016117b6565b61018060405180830381865afa158015610a77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a9b91906117f1565b90506109ed565b836001600160401b031681606001516001600160401b031614610afe5760405162461bcd60e51b8152602060048201526014602482015273139a5d1c9bce881b9bdd08199a5b985b1a5e995960621b6044820152606401610437565b610b4d565b610b0d848261074b565b610b4d5760405162461bcd60e51b81526020600482015260116024820152704e6974726f3a206e6f7420757361626c6560781b6044820152606401610437565b505b5092915050565b5f80838051906020012083604051602001610b7b929190918252602082015260400190565b604051602081830303815290604052805190602001209050848114610bd75760405162461bcd60e51b81526020600482015260126024820152714e6974726f3a20636f6e6669726d4461746160701b6044820152606401610437565b5f610be185610cbb565b9050610c0681600381518110610bf957610bf9611bef565b6020026020010151610cce565b925050505b9392505050565b81610c3d7f000000000000000000000000000000000000000000000000000000000000000083611c03565b1015610c8c57604051632a54241d60e21b815260048101839052602481018290527f00000000000000000000000000000000000000000000000000000000000000006044820152606401610437565b81811115610cb75760405163b356ade760e01b81526004810183905260248101829052604401610437565b5050565b60606107ea610cc983610d06565b610d4d565b5f80610cd983610ec0565b90508051602014610cfd576040516366c9448560e01b815260040160405180910390fd5b610c0b81611c16565b610d0e61130f565b81515f03610d2f57604051635ab458fb60e01b815260040160405180910390fd5b50604080518082019091528151815260209182019181019190915290565b60605f805f610d5b85610f48565b919450925090506001816001811115610d7657610d76611c39565b14610d94576040516325ce355f60e11b815260040160405180910390fd5b8451610da08385611c03565b14610dbe57604051630b8aa6f760e31b815260040160405180910390fd5b604080516020808252610420820190925290816020015b610ddd61130f565b815260200190600190039081610dd55790505093505f835b8651811015610eb4575f80610e396040518060400160405280858c5f0151610e1d91906117de565b8152602001858c60200151610e329190611c03565b9052610f48565b509150915060405180604001604052808383610e559190611c03565b8152602001848b60200151610e6a9190611c03565b815250888581518110610e7f57610e7f611bef565b6020908102919091010152610e95600185611c03565b9350610ea18183611c03565b610eab9084611c03565b92505050610df5565b50845250919392505050565b60605f805f610ece85610f48565b919450925090505f816001811115610ee857610ee8611c39565b14610f06576040516307fe6cb960e21b815260040160405180910390fd5b610f108284611c03565b855114610f3057604051630b8aa6f760e31b815260040160405180910390fd5b610f3f8560200151848461122b565b95945050505050565b5f805f835f01515f03610f6e57604051635ab458fb60e01b815260040160405180910390fd5b602084015180515f1a607f8111610f90575f60015f9450945094505050611224565b60b78111611025575f610fa46080836117de565b905080875f015111610fc9576040516366c9448560e01b815260040160405180910390fd5b6001838101516001600160f81b0319169082148015610ff55750600160ff1b6001600160f81b03198216105b156110135760405163babb01dd60e01b815260040160405180910390fd5b506001955093505f9250611224915050565b60bf8111611103575f61103960b7836117de565b905080875f01511161105e576040516366c9448560e01b815260040160405180910390fd5b60018301516001600160f81b0319165f81900361108e5760405163babb01dd60e01b815260040160405180910390fd5b600184015160088302610100031c603781116110bd5760405163babb01dd60e01b815260040160405180910390fd5b6110c78184611c03565b8951116110e7576040516366c9448560e01b815260040160405180910390fd5b6110f2836001611c03565b975095505f94506112249350505050565b60f7811161114d575f61111760c0836117de565b905080875f01511161113c576040516366c9448560e01b815260040160405180910390fd5b600195509350849250611224915050565b5f61115960f7836117de565b905080875f01511161117e576040516366c9448560e01b815260040160405180910390fd5b60018301516001600160f81b0319165f8190036111ae5760405163babb01dd60e01b815260040160405180910390fd5b600184015160088302610100031c603781116111dd5760405163babb01dd60e01b815260040160405180910390fd5b6111e78184611c03565b895111611207576040516366c9448560e01b815260040160405180910390fd5b611212836001611c03565b97509550600194506112249350505050565b9193909250565b6060816001600160401b03811115611245576112456113dd565b6040519080825280601f01601f19166020018201604052801561126f576020820181803683370190505b5090508115610c0b575f6112838486611c03565b9050602082015f5b848110156112a357828101518282015260200161128b565b848111156112b1575f858301525b5050509392505050565b828054828255905f5260205f209081019282156112ff579160200282015b828111156112ff57825182906112ef9082611c99565b50916020019190600101906112d9565b5061130b929150611327565b5090565b60405180604001604052805f81526020015f81525090565b8082111561130b575f61133a8282611343565b50600101611327565b50805461134f906118e2565b5f825580601f1061135e575050565b601f0160209004905f5260205f20908101906106c791905b8082111561130b575f8155600101611376565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610c0b602083018461139d565b634e487b7160e01b5f52604160045260245ffd5b60405161018081016001600160401b0381118282101715611414576114146113dd565b60405290565b60405160a081016001600160401b0381118282101715611414576114146113dd565b604051601f8201601f191681016001600160401b0381118282101715611464576114646113dd565b604052919050565b5f6001600160401b03821115611484576114846113dd565b5060051b60200190565b5f6001600160401b038211156114a6576114a66113dd565b50601f01601f191660200190565b5f6114c66114c18461148e565b61143c565b90508281528383830111156114d9575f80fd5b828260208301375f602084830101529392505050565b5f6020808385031215611500575f80fd5b82356001600160401b0380821115611516575f80fd5b818501915085601f830112611529575f80fd5b81356115376114c18261146c565b81815260059190911b83018401908481019088831115611555575f80fd5b8585015b8381101561159e5780358581111561156f575f80fd5b8601603f81018b1361157f575f80fd5b6115908b89830135604084016114b4565b845250918601918601611559565b5098975050505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561160057603f198886030184526115ee85835161139d565b945092850192908501906001016115d2565b5092979650505050505050565b5f82601f83011261161c575f80fd5b610c0b838335602085016114b4565b5f805f6060848603121561163d575f80fd5b83356001600160401b0380821115611653575f80fd5b61165f8783880161160d565b94506020860135915080821115611674575f80fd5b9085019060208288031215611687575f80fd5b6040516020810181811083821117156116a2576116a26113dd565b6040528235828111156116b3575f80fd5b6116bf8982860161160d565b825250935060408601359150808211156116d7575f80fd5b506116e48682870161160d565b9150509250925092565b5f604082016040835280855180835260608501915060608160051b860101925060208088015f5b8381101561174357605f1988870301855261173186835161139d565b95509382019390820190600101611715565b50505050508091505060ff831660208301529392505050565b5f6020828403121561176c575f80fd5b81356001600160a01b0381168114610c0b575f80fd5b80516001600160401b0381168114611798575f80fd5b919050565b5f602082840312156117ad575f80fd5b610c0b82611782565b6001600160401b0391909116815260200190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156107ea576107ea6117ca565b5f6101808284031215611802575f80fd5b61180a6113f1565b82518152602083015160208201526040830151604082015261182e60608401611782565b606082015261183f60808401611782565b608082015261185060a08401611782565b60a082015261186160c08401611782565b60c082015261187260e08401611782565b60e0820152610100611885818501611782565b90820152610120611897848201611782565b908201526101406118a9848201611782565b90820152610160928301519281019290925250919050565b5f6001600160401b038216806118d9576118d96117ca565b5f190192915050565b600181811c908216806118f657607f821691505b60208210810361191457634e487b7160e01b5f52602260045260245ffd5b50919050565b5f82601f830112611929575f80fd5b81516119376114c18261148e565b81815284602083860101111561194b575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f82601f830112611976575f80fd5b815160206119866114c18361146c565b82815260059290921b840181019181810190868411156119a4575f80fd5b8286015b848110156119e15780516001600160401b038111156119c5575f80fd5b6119d38986838b010161191a565b8452509183019183016119a8565b509695505050505050565b5f602082840312156119fc575f80fd5b81516001600160401b0380821115611a12575f80fd5b9083019060a08286031215611a25575f80fd5b611a2d61141a565b611a3683611782565b815260208301516020820152604083015182811115611a53575f80fd5b611a5f8782860161191a565b604083015250606083015182811115611a76575f80fd5b611a8287828601611967565b606083015250608083015182811115611a99575f80fd5b611aa58782860161191a565b60808301525095945050505050565b604081525f83516020806040850152611ad0606085018361139d565b91508382038185015260a08201855183528186015182840152604086015160a0604085015281815180845260c08601915060c08160051b870101935084830192505f5b81811015611b415760bf19878603018352611b2f85855161139d565b94509285019291850191600101611b13565b50505050606086015191508281036060840152611b5e818361139d565b9150506080850151611b7b60808401826001600160a01b03169052565b5095945050505050565b5f8060408385031215611b96575f80fd5b82516001600160401b03811115611bab575f80fd5b611bb785828601611967565b925050602083015160ff81168114611bcd575f80fd5b809150509250929050565b5f60208284031215611be8575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b808201808211156107ea576107ea6117ca565b80516020808301519190811015611914575f1960209190910360031b1b16919050565b634e487b7160e01b5f52602160045260245ffd5b601f821115611c9457805f5260205f20601f840160051c81016020851015611c725750805b601f840160051c820191505b81811015611c91575f8155600101611c7e565b50505b505050565b81516001600160401b03811115611cb257611cb26113dd565b611cc681611cc084546118e2565b84611c4d565b602080601f831160018114611cf9575f8415611ce25750858301515b5f19600386901b1c1916600185901b178555611d50565b5f85815260208120601f198616915b82811015611d2757888601518255948401946001909101908401611d08565b5085821015611d4457878501515f19600388901b60f8161c191681555b505060018460011b0185555b50505050505056fea2646970667358221220c813f36cd66a36c537155b10de7dfd9f7c5a56a83866b1cfddc7ff313f0f793864736f6c63430008190033","sourceMap":"360:3297:23:-:0;;;479:260;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;653:4;659:6;667:5;566:10:0;;1269:95:39;;1322:31;;-1:-1:-1;;;1322:31:39;;1350:1;1322:31;;;2639:51:55;2612: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;684:16:23;;;::::1;;::::0;710:22:::1;::::0;-1:-1:-1;360:3297:23;;-1:-1:-1;;;360:3297:23;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;360:3297:23:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;360:3297:23;;;-1:-1:-1;360:3297:23;:::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:1864::-;808:6;816;824;832;840;893:3;881:9;872:7;868:23;864:33;861:53;;;910:1;907;900:12;861:53;937:16;;-1:-1:-1;;;;;1002:14:55;;;999:34;;;1029:1;1026;1019:12;999:34;1067:6;1056:9;1052:22;1042:32;;1112:7;1105:4;1101:2;1097:13;1093:27;1083:55;;1134:1;1131;1124:12;1083:55;1163:2;1157:9;1185:2;1181;1178:10;1175:36;;;1191:18;;:::i;:::-;1231:38;1263:4;1258:2;1255:1;1251:10;1247:21;1231:38;:::i;:::-;1291:3;1315:2;1310:3;1303:15;1343:4;1338:3;1334:14;1327:21;;1396:4;1390:2;1387:1;1383:10;1379:2;1375:19;1371:30;1357:44;;1424:7;1416:6;1413:19;1410:39;;;1445:1;1442;1435:12;1410:39;1477:4;1473:2;1469:13;1491:708;1507:6;1502:3;1499:15;1491:708;;;1588:3;1582:10;1624:2;1611:11;1608:19;1605:39;;;1640:1;1637;1630:12;1605:39;1667:20;;1722:2;1714:11;;1710:25;-1:-1:-1;1700:53:55;;1749:1;1746;1739:12;1700:53;1790:4;1786:2;1782:13;1776:20;1819:2;1815;1812:10;1809:36;;;1825:18;;:::i;:::-;1871:55;1914:2;1895:13;;-1:-1:-1;;1891:27:55;1920:4;1887:38;1871:55;:::i;:::-;1953:2;1946:5;1939:17;1997:7;1992:2;1987;1983;1979:11;1975:20;1972:33;1969:53;;;2018:1;2015;2008:12;1969:53;2072:2;2067;2063;2059:11;2052:4;2045:5;2041:16;2035:40;2122:1;2115:4;2110:2;2103:5;2099:14;2095:25;2088:36;2149:5;2144:3;2137:18;;;;2184:4;2179:3;2175:14;2168:21;;1533:4;1528:3;1524:14;1517:21;;1491:708;;;1495:3;2218:5;2208:15;;;;;;;2263:4;2252:9;2248:20;2242:27;2232:37;;2288:65;2349:2;2338:9;2334:18;2288:65;:::i;:::-;2278:75;;2372:65;2433:2;2422:9;2418:18;2372:65;:::i;:::-;2362:75;;2477:3;2466:9;2462:19;2456:26;2446:36;;624:1864;;;;;;;;:::o;2701:380::-;2780:1;2776:12;;;;2823;;;2844:61;;2898:4;2890:6;2886:17;2876:27;;2844:61;2951:2;2943:6;2940:14;2920:18;2917:38;2914:161;;2997:10;2992:3;2988:20;2985:1;2978:31;3032:4;3029:1;3022:15;3060:4;3057:1;3050:15;2914:161;;2701:380;;;:::o;3212:518::-;3314:2;3309:3;3306:11;3303:421;;;3350:5;3347:1;3340:16;3394:4;3391:1;3381:18;3464:2;3452:10;3448:19;3445:1;3441:27;3435:4;3431:38;3500:4;3488:10;3485:20;3482:47;;;-1:-1:-1;3523:4:55;3482:47;3578:2;3573:3;3569:12;3566:1;3562:20;3556:4;3552:31;3542:41;;3633:81;3651:2;3644:5;3641:13;3633:81;;;3710:1;3696:16;;3677:1;3666:13;3633:81;;;3637:3;;3303:421;3212:518;;;:::o;3906:1345::-;4026:10;;-1:-1:-1;;;;;4048:30:55;;4045:56;;;4081:18;;:::i;:::-;4110:97;4200:6;4160:38;4192:4;4186:11;4160:38;:::i;:::-;4154:4;4110:97;:::i;:::-;4262:4;;4319:2;4308:14;;4336:1;4331:663;;;;5038:1;5055:6;5052:89;;;-1:-1:-1;5107:19:55;;;5101:26;5052:89;-1:-1:-1;;3863:1:55;3859:11;;;3855:24;3851:29;3841:40;3887:1;3883:11;;;3838:57;5154:81;;4301:944;;4331:663;3159:1;3152:14;;;3196:4;3183:18;;-1:-1:-1;;4367:20:55;;;4485:236;4499:7;4496:1;4493:14;4485:236;;;4588:19;;;4582:26;4567:42;;4680:27;;;;4648:1;4636:14;;;;4515:19;;4485:236;;;4489:3;4749:6;4740:7;4737:19;4734:201;;;4810:19;;;4804:26;-1:-1:-1;;4893:1:55;4889:14;;;4905:3;4885:24;4881:37;4877:42;4862:58;4847:74;;4734:201;;;4981:1;4972:6;4969:1;4965:14;4961:22;4955:4;4948:36;4301:944;;;;;3906:1345;;:::o;:::-;360:3297:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{"contracts/GatewayVM.sol":{"GatewayVM":[{"start":2757,"length":20}]}}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b5060043610610081575f3560e01c80631d80051d146100855780635cd2525e146100b8578063715018a6146100e757806387c484fe146100f15780638da5cb5b146101065780638e5ea8df1461010e578063b50f2fbc14610121578063e3d1666e14610136578063f2fde38b14610157575b5f80fd5b6040517f000000000000000000000000000000000000000000000000000000000000000081526020015b60405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000005b6040516100af9190611389565b6100ef61016a565b005b6100f961017d565b6040516100af91906113cb565b6100da610440565b6100ef61011c3660046114ef565b61044e565b610129610495565b6040516100af91906115ab565b61014961014436600461162b565b610569565b6040516100af9291906116ee565b6100ef61016536600461175c565b61068d565b6101726106ca565b61017b5f6106fc565b565b60607f00000000000000000000000000000000000000000000000000000000000000005f0361024a577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166365f7f80d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610202573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610226919061179d565b60405160200161023691906117b6565b604051602081830303815290604052905090565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637ba9534a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102a7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102cb919061179d565b90505f6102f87f0000000000000000000000000000000000000000000000000000000000000000436117de565b90505b6040516324b204d360e21b81525f906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906392c8134c906103499086906004016117b6565b61018060405180830381865afa158015610365573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061038991906117f1565b9050818161014001516001600160401b0316111580156103ae57506103ae838261074b565b156103db57826040516020016103c491906117b6565b604051602081830303815290604052935050505090565b826001600160401b03165f036103f15750610402565b6103fa836118c1565b9250506102fb565b60405162461bcd60e51b815260206004820152600e60248201526d4e6974726f3a206e6f206e6f646560901b60448201526064015b60405180910390fd5b5f546001600160a01b031690565b6104566106ca565b80516104699060019060208401906112bb565b506040517fe621d803a0c96b9bbeea51d136777f6ea8a4ce0c4ac74f6645e18b4342e2fa07905f90a150565b60606001805480602002602001604051908101604052809291908181526020015f905b82821015610560578382905f5260205f200180546104d5906118e2565b80601f0160208091040260200160405190810160405280929190818152602001828054610501906118e2565b801561054c5780601f106105235761010080835404028352916020019161054c565b820191905f5260205f20905b81548152906001019060200180831161052f57829003601f168201915b5050505050815260200190600101906104b8565b50505050905090565b60605f808380602001905181019061058191906119ec565b90505f61059187835f01516107f0565b90505f6105ab826040015184604001518560200151610b56565b905073__$011ed85421b307e5206de383929e31be73$__6392a201d4886040518060a001604052805f815260200185815260200187606001518152602001876080015181526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152506040518363ffffffff1660e01b815260040161063d929190611ab4565b5f60405180830381865af4158015610657573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261067e9190810190611b85565b94509450505050935093915050565b6106956106ca565b6001600160a01b0381166106be575f604051631e4fbdf760e01b81526004016104379190611389565b6106c7816106fc565b50565b336106d3610440565b6001600160a01b03161461017b573360405163118cdaa760e01b81526004016104379190611389565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6040516317185fa560e21b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635c617e94906107999086906004016117b6565b602060405180830381865afa1580156107b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107d89190611bd8565b8260c001516001600160401b03161190505b92915050565b60408051610180810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081018290526101008101829052610120810182905261014081018290526101608101919091525f83806020019051810190610865919061179d565b6040516324b204d360e21b81529091506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906392c8134c906108b49086906004016117b6565b61018060405180830381865afa1580156108d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f491906117f1565b9150806001600160401b0316836001600160401b031614610b4f576040516324b204d360e21b81525f906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906392c8134c9061095d9085906004016117b6565b61018060405180830381865afa158015610979573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099d91906117f1565b90506109c58161014001516001600160401b03168461014001516001600160401b0316610c12565b7f00000000000000000000000000000000000000000000000000000000000000005f03610b03575b836001600160401b031681606001516001600160401b03161115610aa25760608101516040516324b204d360e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916392c8134c91610a5b91906004016117b6565b61018060405180830381865afa158015610a77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a9b91906117f1565b90506109ed565b836001600160401b031681606001516001600160401b031614610afe5760405162461bcd60e51b8152602060048201526014602482015273139a5d1c9bce881b9bdd08199a5b985b1a5e995960621b6044820152606401610437565b610b4d565b610b0d848261074b565b610b4d5760405162461bcd60e51b81526020600482015260116024820152704e6974726f3a206e6f7420757361626c6560781b6044820152606401610437565b505b5092915050565b5f80838051906020012083604051602001610b7b929190918252602082015260400190565b604051602081830303815290604052805190602001209050848114610bd75760405162461bcd60e51b81526020600482015260126024820152714e6974726f3a20636f6e6669726d4461746160701b6044820152606401610437565b5f610be185610cbb565b9050610c0681600381518110610bf957610bf9611bef565b6020026020010151610cce565b925050505b9392505050565b81610c3d7f000000000000000000000000000000000000000000000000000000000000000083611c03565b1015610c8c57604051632a54241d60e21b815260048101839052602481018290527f00000000000000000000000000000000000000000000000000000000000000006044820152606401610437565b81811115610cb75760405163b356ade760e01b81526004810183905260248101829052604401610437565b5050565b60606107ea610cc983610d06565b610d4d565b5f80610cd983610ec0565b90508051602014610cfd576040516366c9448560e01b815260040160405180910390fd5b610c0b81611c16565b610d0e61130f565b81515f03610d2f57604051635ab458fb60e01b815260040160405180910390fd5b50604080518082019091528151815260209182019181019190915290565b60605f805f610d5b85610f48565b919450925090506001816001811115610d7657610d76611c39565b14610d94576040516325ce355f60e11b815260040160405180910390fd5b8451610da08385611c03565b14610dbe57604051630b8aa6f760e31b815260040160405180910390fd5b604080516020808252610420820190925290816020015b610ddd61130f565b815260200190600190039081610dd55790505093505f835b8651811015610eb4575f80610e396040518060400160405280858c5f0151610e1d91906117de565b8152602001858c60200151610e329190611c03565b9052610f48565b509150915060405180604001604052808383610e559190611c03565b8152602001848b60200151610e6a9190611c03565b815250888581518110610e7f57610e7f611bef565b6020908102919091010152610e95600185611c03565b9350610ea18183611c03565b610eab9084611c03565b92505050610df5565b50845250919392505050565b60605f805f610ece85610f48565b919450925090505f816001811115610ee857610ee8611c39565b14610f06576040516307fe6cb960e21b815260040160405180910390fd5b610f108284611c03565b855114610f3057604051630b8aa6f760e31b815260040160405180910390fd5b610f3f8560200151848461122b565b95945050505050565b5f805f835f01515f03610f6e57604051635ab458fb60e01b815260040160405180910390fd5b602084015180515f1a607f8111610f90575f60015f9450945094505050611224565b60b78111611025575f610fa46080836117de565b905080875f015111610fc9576040516366c9448560e01b815260040160405180910390fd5b6001838101516001600160f81b0319169082148015610ff55750600160ff1b6001600160f81b03198216105b156110135760405163babb01dd60e01b815260040160405180910390fd5b506001955093505f9250611224915050565b60bf8111611103575f61103960b7836117de565b905080875f01511161105e576040516366c9448560e01b815260040160405180910390fd5b60018301516001600160f81b0319165f81900361108e5760405163babb01dd60e01b815260040160405180910390fd5b600184015160088302610100031c603781116110bd5760405163babb01dd60e01b815260040160405180910390fd5b6110c78184611c03565b8951116110e7576040516366c9448560e01b815260040160405180910390fd5b6110f2836001611c03565b975095505f94506112249350505050565b60f7811161114d575f61111760c0836117de565b905080875f01511161113c576040516366c9448560e01b815260040160405180910390fd5b600195509350849250611224915050565b5f61115960f7836117de565b905080875f01511161117e576040516366c9448560e01b815260040160405180910390fd5b60018301516001600160f81b0319165f8190036111ae5760405163babb01dd60e01b815260040160405180910390fd5b600184015160088302610100031c603781116111dd5760405163babb01dd60e01b815260040160405180910390fd5b6111e78184611c03565b895111611207576040516366c9448560e01b815260040160405180910390fd5b611212836001611c03565b97509550600194506112249350505050565b9193909250565b6060816001600160401b03811115611245576112456113dd565b6040519080825280601f01601f19166020018201604052801561126f576020820181803683370190505b5090508115610c0b575f6112838486611c03565b9050602082015f5b848110156112a357828101518282015260200161128b565b848111156112b1575f858301525b5050509392505050565b828054828255905f5260205f209081019282156112ff579160200282015b828111156112ff57825182906112ef9082611c99565b50916020019190600101906112d9565b5061130b929150611327565b5090565b60405180604001604052805f81526020015f81525090565b8082111561130b575f61133a8282611343565b50600101611327565b50805461134f906118e2565b5f825580601f1061135e575050565b601f0160209004905f5260205f20908101906106c791905b8082111561130b575f8155600101611376565b6001600160a01b0391909116815260200190565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610c0b602083018461139d565b634e487b7160e01b5f52604160045260245ffd5b60405161018081016001600160401b0381118282101715611414576114146113dd565b60405290565b60405160a081016001600160401b0381118282101715611414576114146113dd565b604051601f8201601f191681016001600160401b0381118282101715611464576114646113dd565b604052919050565b5f6001600160401b03821115611484576114846113dd565b5060051b60200190565b5f6001600160401b038211156114a6576114a66113dd565b50601f01601f191660200190565b5f6114c66114c18461148e565b61143c565b90508281528383830111156114d9575f80fd5b828260208301375f602084830101529392505050565b5f6020808385031215611500575f80fd5b82356001600160401b0380821115611516575f80fd5b818501915085601f830112611529575f80fd5b81356115376114c18261146c565b81815260059190911b83018401908481019088831115611555575f80fd5b8585015b8381101561159e5780358581111561156f575f80fd5b8601603f81018b1361157f575f80fd5b6115908b89830135604084016114b4565b845250918601918601611559565b5098975050505050505050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b8281101561160057603f198886030184526115ee85835161139d565b945092850192908501906001016115d2565b5092979650505050505050565b5f82601f83011261161c575f80fd5b610c0b838335602085016114b4565b5f805f6060848603121561163d575f80fd5b83356001600160401b0380821115611653575f80fd5b61165f8783880161160d565b94506020860135915080821115611674575f80fd5b9085019060208288031215611687575f80fd5b6040516020810181811083821117156116a2576116a26113dd565b6040528235828111156116b3575f80fd5b6116bf8982860161160d565b825250935060408601359150808211156116d7575f80fd5b506116e48682870161160d565b9150509250925092565b5f604082016040835280855180835260608501915060608160051b860101925060208088015f5b8381101561174357605f1988870301855261173186835161139d565b95509382019390820190600101611715565b50505050508091505060ff831660208301529392505050565b5f6020828403121561176c575f80fd5b81356001600160a01b0381168114610c0b575f80fd5b80516001600160401b0381168114611798575f80fd5b919050565b5f602082840312156117ad575f80fd5b610c0b82611782565b6001600160401b0391909116815260200190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156107ea576107ea6117ca565b5f6101808284031215611802575f80fd5b61180a6113f1565b82518152602083015160208201526040830151604082015261182e60608401611782565b606082015261183f60808401611782565b608082015261185060a08401611782565b60a082015261186160c08401611782565b60c082015261187260e08401611782565b60e0820152610100611885818501611782565b90820152610120611897848201611782565b908201526101406118a9848201611782565b90820152610160928301519281019290925250919050565b5f6001600160401b038216806118d9576118d96117ca565b5f190192915050565b600181811c908216806118f657607f821691505b60208210810361191457634e487b7160e01b5f52602260045260245ffd5b50919050565b5f82601f830112611929575f80fd5b81516119376114c18261148e565b81815284602083860101111561194b575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f82601f830112611976575f80fd5b815160206119866114c18361146c565b82815260059290921b840181019181810190868411156119a4575f80fd5b8286015b848110156119e15780516001600160401b038111156119c5575f80fd5b6119d38986838b010161191a565b8452509183019183016119a8565b509695505050505050565b5f602082840312156119fc575f80fd5b81516001600160401b0380821115611a12575f80fd5b9083019060a08286031215611a25575f80fd5b611a2d61141a565b611a3683611782565b815260208301516020820152604083015182811115611a53575f80fd5b611a5f8782860161191a565b604083015250606083015182811115611a76575f80fd5b611a8287828601611967565b606083015250608083015182811115611a99575f80fd5b611aa58782860161191a565b60808301525095945050505050565b604081525f83516020806040850152611ad0606085018361139d565b91508382038185015260a08201855183528186015182840152604086015160a0604085015281815180845260c08601915060c08160051b870101935084830192505f5b81811015611b415760bf19878603018352611b2f85855161139d565b94509285019291850191600101611b13565b50505050606086015191508281036060840152611b5e818361139d565b9150506080850151611b7b60808401826001600160a01b03169052565b5095945050505050565b5f8060408385031215611b96575f80fd5b82516001600160401b03811115611bab575f80fd5b611bb785828601611967565b925050602083015160ff81168114611bcd575f80fd5b809150509250929050565b5f60208284031215611be8575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b808201808211156107ea576107ea6117ca565b80516020808301519190811015611914575f1960209190910360031b1b16919050565b634e487b7160e01b5f52602160045260245ffd5b601f821115611c9457805f5260205f20601f840160051c81016020851015611c725750805b601f840160051c820191505b81811015611c91575f8155600101611c7e565b50505b505050565b81516001600160401b03811115611cb257611cb26113dd565b611cc681611cc084546118e2565b84611c4d565b602080601f831160018114611cf9575f8415611ce25750858301515b5f19600386901b1c1916600185901b178555611d50565b5f85815260208120601f198616915b82811015611d2757888601518255948401946001909101908401611d08565b5085821015611d4457878501515f19600388901b60f8161c191681555b505060018460011b0185555b50505050505056fea2646970667358221220c813f36cd66a36c537155b10de7dfd9f7c5a56a83866b1cfddc7ff313f0f793864736f6c63430008190033","sourceMap":"360:3297:23:-: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;:::-;;745:554:23;;;:::i;:::-;;;;;;;:::i;1638:85:39:-;;;:::i;663:129:0:-;;;;;;:::i;:::-;;:::i;798:92::-;;;:::i;:::-;;;;;;;:::i;1464:620:23:-;;;;;;:::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;745:554:23:-;796:12;824:10;838:1;824:15;820:90;;873:7;-1:-1:-1;;;;;873:23:23;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;862:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;855:44;;745:554;:::o;820:90::-;919:8;930:7;-1:-1:-1;;;;;930:25:23;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;919:38;-1:-1:-1;967:9:23;979:25;994:10;979:12;:25;:::i;:::-;967:37;;1014:245;1060:18;;-1:-1:-1;;;1060:18:23;;1041:16;;-1:-1:-1;;;;;1060:7:23;:15;;;;:18;;1076:1;;1060:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1041:37;;1119:1;1096:4;:19;;;-1:-1:-1;;;;;1096:24:23;;;:50;;;;;1124:22;1138:1;1141:4;1124:13;:22::i;:::-;1092:109;;;1184:1;1173:13;;;;;;;;:::i;:::-;;;;;;;;;;;;;1166:20;;;;;745:554;:::o;1092:109::-;1218:1;-1:-1:-1;;;;;1218:6:23;1223:1;1218:6;1214:17;;1226:5;;;1214:17;1245:3;;;:::i;:::-;;;1027:232;1014:245;;;1268:24;;-1:-1:-1;;;1268:24:23;;9961:2:55;1268:24:23;;;9943:21:55;10000:2;9980:18;;;9973:30;-1:-1:-1;;;10019:18:55;;;10012:44;10073:18;;1268:24:23;;;;;;;;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;1464:620:23:-;1620:14;1636;1662:21;1697:5;1686:33;;;;;;;;;;;;:::i;:::-;1662:57;;1729:16;1748:31;1760:7;1769:1;:9;;;1748:11;:31::i;:::-;1729:50;;1789:17;1809:111;1839:4;:16;;;1869:1;:17;;;1900:1;:10;;;1809:16;:111::i;:::-;1789:131;;1949:9;:21;1988:3;2009:54;;;;;;;;2023:1;2009:54;;;;2026:9;2009:54;;;;2037:1;:8;;;2009:54;;;;2047:1;:7;;;2009:54;;;;2056:6;-1:-1:-1;;;;;2009:54:23;;;;1949:128;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1949:128:23;;;;;;;;;;;;:::i;:::-;1930:147;;;;;;;1464:620;;;;;;:::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;2090:327:23:-;2377:33;;-1:-1:-1;;;2377:33:23;;2168:4;;-1:-1:-1;;;;;2377:7:23;:26;;;;:33;;2404:5;;2377:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2358:4;:16;;;-1:-1:-1;;;;;2358:52:23;;2351:59;;2090:327;;;;;:::o;2423:750::-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2555:15:23;2584:7;2573:29;;;;;;;;;;;;:::i;:::-;2619:24;;-1:-1:-1;;;2619:24:23;;2555:47;;-1:-1:-1;;;;;;2619:7:23;:15;;;;:24;;2635:7;;2619:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2612:31;;2668:8;-1:-1:-1;;;;;2657:19:23;:7;-1:-1:-1;;;;;2657:19:23;;2653:514;;2712:25;;-1:-1:-1;;;2712:25:23;;2692:17;;-1:-1:-1;;;;;2712:7:23;:15;;;;:25;;2728:8;;2712:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2692:45;;2751:55;2764:5;:20;;;-1:-1:-1;;;;;2751:55:23;2786:4;:19;;;-1:-1:-1;;;;;2751:55:23;:12;:55::i;:::-;2824:10;2838:1;2824:15;2820:337;;2859:111;2882:7;-1:-1:-1;;;;;2866:23:23;:5;:13;;;-1:-1:-1;;;;;2866:23:23;;2859:111;;;2937:13;;;;2921:30;;-1:-1:-1;;;2921:30:23;;-1:-1:-1;;;;;2921:7:23;:15;;;;:30;;2937:13;2921:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2913:38;;2859:111;;;3012:7;-1:-1:-1;;;;;2995:24:23;:5;:13;;;-1:-1:-1;;;;;2995:24:23;;2987:57;;;;-1:-1:-1;;;2987:57:23;;15385:2:55;2987:57:23;;;15367:21:55;15424:2;15404:18;;;15397:30;-1:-1:-1;;;15443:18:55;;;15436:50;15503:18;;2987:57:23;15183:344:55;2987:57:23;2820:337;;;3091:29;3105:7;3114:5;3091:13;:29::i;:::-;3083:59;;;;-1:-1:-1;;;3083:59:23;;15734:2:55;3083:59:23;;;15716:21:55;15773:2;15753:18;;;15746:30;-1:-1:-1;;;15792:18:55;;;15785:47;15849:18;;3083:59:23;15532:341:55;3083:59:23;2678:489;2653:514;2545:628;2423:750;;;;:::o;3179:476::-;3327:7;3346:16;3415:15;3405:26;;;;;;3433:8;3388:54;;;;;;;;16035:19:55;;;16079:2;16070:12;;16063:28;16116:2;16107:12;;15878:247;3388:54:23;;;;;;;;;;;;;3365:87;;;;;;3346:106;;3482:11;3470:8;:23;3462:54;;;;-1:-1:-1;;;3462:54:23;;16332:2:55;3462:54:23;;;16314:21:55;16371:2;16351:18;;;16344:30;-1:-1:-1;;;16390:18:55;;;16383:48;16448:18;;3462:54:23;16130:342:55;3462:54:23;3526:28;3557:35;3576:15;3557:18;:35::i;:::-;3526:66;;3609:39;3643:1;3645;3643:4;;;;;;;;:::i;:::-;;;;;;;3609:33;:39::i;:::-;3602:46;;;;3179:476;;;;;;:::o;1081:211:0:-;1176:6;1160:13;1166:7;1160:3;:13;:::i;:::-;:22;1156:69;;;1191:34;;-1:-1:-1;;;1191:34:0;;;;;16941:25:55;;;16982:18;;;16975:34;;;1217:7:0;17025:18:55;;;17018:34;16914:18;;1191:34:0;16739:319:55;1156:69:0;1245:6;1239:3;:12;1235:50;;;1260:25;;-1:-1:-1;;;1260:25:0;;;;;17237::55;;;17278:18;;;17271:34;;;17210:18;;1260:25:0;17063:248:55;1235:50:0;1081:211;;:::o;3631:130:53:-;3690:21;3730:24;3739:14;3749:3;3739:9;:14::i;:::-;3730:8;:24::i;579:253:8:-;677:7;696:14;713:25;733:4;713:19;:25::i;:::-;696:42;;752:1;:8;764:2;752:14;748:50;;775:23;;-1:-1:-1;;;775:23:8;;;;;;;;;;;748:50;815:10;823:1;815:10;:::i;1325:328:53:-;1385:19;;:::i;:::-;1463:3;:10;1477:1;1463:15;1459:39;;1487:11;;-1:-1:-1;;;1487:11:53;;;;;;;;;;;1459:39;-1:-1:-1;1605:41:53;;;;;;;;;1623:10;;1605:41;;1575:2;1566:12;;;1605:41;;;;;;;;1325:328::o;1805:1674::-;1866:21;1900:18;1920;1940:20;1964:18;1978:3;1964:13;:18::i;:::-;1899:83;;-1:-1:-1;1899:83:53;-1:-1:-1;1899:83:53;-1:-1:-1;2009:21:53;1997:8;:33;;;;;;;;:::i;:::-;;1993:64;;2039:18;;-1:-1:-1;;;2039:18:53;;;;;;;;;;;1993:64;2099:10;;2072:23;2085:10;2072;:23;:::i;:::-;:37;2068:72;;2118:22;;-1:-1:-1;;;2118:22:53;;;;;;;;;;;2068:72;2550:30;;;1150:2;2550:30;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;2543:37:53;-1:-1:-1;2591:17:53;2639:10;2659:681;2675:10;;2666:19;;2659:681;;;2702:18;2722;2745:150;2776:105;;;;;;;;2807:6;2794:3;:10;;;:19;;;;:::i;:::-;2776:105;;;;2871:6;2860:3;:7;;;2839:38;;;;:::i;:::-;2776:105;;2745:13;:150::i;:::-;2701:194;;;;;3100:153;;;;;;;;3147:10;3134;:23;;;;:::i;:::-;3100:153;;;;3231:6;3220:3;:7;;;3199:38;;;;:::i;:::-;3100:153;;;3082:4;3087:9;3082:15;;;;;;;;:::i;:::-;;;;;;;;;;:171;3268:14;3281:1;3268:14;;:::i;:::-;;-1:-1:-1;3306:23:53;3319:10;3306;:23;:::i;:::-;3296:33;;;;:::i;:::-;;;2687:653;;2659:681;;;-1:-1:-1;3440:23:53;;-1:-1:-1;3447:4:53;;1805:1674;-1:-1:-1;;;1805:1674:53:o;3892:393::-;3954:17;3984:18;4004;4024:20;4048:18;4062:3;4048:13;:18::i;:::-;3983:83;;-1:-1:-1;3983:83:53;-1:-1:-1;3983:83:53;-1:-1:-1;4093:21:53;4081:8;:33;;;;;;;;:::i;:::-;;4077:62;;4123:16;;-1:-1:-1;;;4123:16:53;;;;;;;;;;;4077:62;4168:23;4181:10;4168;:23;:::i;:::-;4154:10;;:37;4150:72;;4200:22;;-1:-1:-1;;;4200:22:53;;;;;;;;;;;4150:72;4240:38;4246:3;:7;;;4255:10;4267;4240:5;:38::i;:::-;4233:45;3892:393;-1:-1:-1;;;;;3892:393:53:o;5074:3092::-;5163:15;5180;5197:17;5516:3;:10;;;5530:1;5516:15;5512:39;;5540:11;;-1:-1:-1;;;5540:11:53;;;;;;;;;;;5512:39;5582:7;;;;5664:10;;5562:17;5656:19;5709:4;5699:14;;5695:2465;;5765:1;5768;5771:21;5757:36;;;;;;;;;;5695:2465;5824:4;5814:6;:14;5810:2350;;5930:14;5947:13;5956:4;5947:6;:13;:::i;:::-;5930:30;;5993:6;5979:3;:10;;;:20;5975:56;;6008:23;;-1:-1:-1;;;6008:23:53;;;;;;;;;;;5975:56;6153:1;6144:11;;;6138:18;-1:-1:-1;;;;;;6134:39:53;;6205:11;;:40;;;;-1:-1:-1;;;;;;;;;;6220:25:53;;;6205:40;6201:68;;;6254:15;;-1:-1:-1;;;6254:15:53;;;;;;;;;;;6201:68;-1:-1:-1;6292:1:53;;-1:-1:-1;6295:6:53;-1:-1:-1;6303:21:53;;-1:-1:-1;6284:41:53;;-1:-1:-1;;6284:41:53;5810:2350;6356:4;6346:6;:14;6342:1818;;6404:19;6426:13;6435:4;6426:6;:13;:::i;:::-;6404:35;;6472:11;6458:3;:10;;;:25;6454:61;;6492:23;;-1:-1:-1;;;6492:23:53;;;;;;;;;;;6454:61;6637:1;6628:11;;6622:18;-1:-1:-1;;;;;;6618:39:53;6530:25;6689:26;;;6685:54;;6724:15;;-1:-1:-1;;;6724:15:53;;;;;;;;;;;6685:54;6869:1;6860:11;;6854:18;6836:1;6832:19;;6827:3;6823:29;6819:54;6915:2;6905:12;;6901:40;;6926:15;;-1:-1:-1;;;6926:15:53;;;;;;;;;;;6901:40;6974:20;6988:6;6974:11;:20;:::i;:::-;6960:10;;:34;6956:70;;7003:23;;-1:-1:-1;;;7003:23:53;;;;;;;;;;;6956:70;7049:15;7053:11;7049:1;:15;:::i;:::-;7041:55;-1:-1:-1;7066:6:53;-1:-1:-1;7074:21:53;;-1:-1:-1;7041:55:53;;-1:-1:-1;;;;7041:55:53;6342:1818;7127:4;7117:6;:14;7113:1047;;7230:15;7248:13;7257:4;7248:6;:13;:::i;:::-;7230:31;;7294:7;7280:3;:10;;;:21;7276:57;;7310:23;;-1:-1:-1;;;7310:23:53;;;;;;;;;;;7276:57;7356:1;;-1:-1:-1;7359:7:53;-1:-1:-1;7356:1:53;;-1:-1:-1;7348:42:53;;-1:-1:-1;;7348:42:53;7113:1047;7447:20;7470:13;7479:4;7470:6;:13;:::i;:::-;7447:36;;7516:12;7502:3;:10;;;:26;7498:62;;7537:23;;-1:-1:-1;;;7537:23:53;;;;;;;;;;;7498:62;7682:1;7673:11;;7667:18;-1:-1:-1;;;;;;7663:39:53;7575:25;7734:26;;;7730:54;;7769:15;;-1:-1:-1;;;7769:15:53;;;;;;;;;;;7730:54;7917:1;7908:11;;7902:18;7883:1;7879:20;;7874:3;7870:30;7866:55;7964:2;7953:13;;7949:41;;7975:15;;-1:-1:-1;;;7975:15:53;;;;;;;;;;;7949:41;8023:22;8038:7;8023:12;:22;:::i;:::-;8009:10;;:36;8005:72;;8054:23;;-1:-1:-1;;;8054:23:53;;;;;;;;;;;8005:72;8100:16;8104:12;8100:1;:16;:::i;:::-;8092:57;-1:-1:-1;8118:7:53;-1:-1:-1;8127:21:53;;-1:-1:-1;8092:57:53;;-1:-1:-1;;;;8092:57:53;5074:3092;;;;;;:::o;8426:737::-;8517:17;8563:7;-1:-1:-1;;;;;8553:18:53;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8553:18:53;-1:-1:-1;8546:25:53;-1:-1:-1;8581:54:53;;8613:11;8581:54;8851:11;8865:36;8894:7;8886:4;8865:36;:::i;:::-;8851:50;;8956:2;8950:4;8946:13;8981:1;8995:87;9009:7;9006:1;9003:14;8995:87;;;9067:11;;;9061:18;9047:12;;;9040:40;9032:2;9025:10;8995:87;;;9105:7;9102:1;9099:14;9096:51;;;9143:1;9133:7;9127:4;9123:18;9116:29;9096:51;;;8920:237;8426:737;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;:::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;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:252;1479:2;1473:9;1521:3;1509:16;;-1:-1:-1;;;;;1540:34:55;;1576:22;;;1537:62;1534:88;;;1602:18;;:::i;:::-;1638:2;1631:22;1407:252;:::o;1664:253::-;1736:2;1730:9;1778:4;1766:17;;-1:-1:-1;;;;;1798:34:55;;1834:22;;;1795:62;1792:88;;;1860:18;;:::i;1922:275::-;1993:2;1987:9;2058:2;2039:13;;-1:-1:-1;;2035:27:55;2023:40;;-1:-1:-1;;;;;2078:34:55;;2114:22;;;2075:62;2072:88;;;2140:18;;:::i;:::-;2176:2;2169:22;1922:275;;-1:-1:-1;1922:275:55:o;2202:182::-;2261:4;-1:-1:-1;;;;;2283:30:55;;2280:56;;;2316:18;;:::i;:::-;-1:-1:-1;2361:1:55;2357:14;2373:4;2353:25;;2202:182::o;2389:187::-;2438:4;-1:-1:-1;;;;;2460:30:55;;2457:56;;;2493:18;;:::i;:::-;-1:-1:-1;2559:2:55;2538:15;-1:-1:-1;;2534:29:55;2565:4;2530:40;;2389:187::o;2581:338::-;2646:5;2675:53;2691:36;2720:6;2691:36;:::i;:::-;2675:53;:::i;:::-;2666:62;;2751:6;2744:5;2737:21;2791:3;2782:6;2777:3;2773:16;2770:25;2767:45;;;2808:1;2805;2798:12;2767:45;2857:6;2852:3;2845:4;2838:5;2834:16;2821:43;2911:1;2904:4;2895:6;2888:5;2884:18;2880:29;2873:40;2581:338;;;;;:::o;2924:1197::-;3018:6;3049:2;3092;3080:9;3071:7;3067:23;3063:32;3060:52;;;3108:1;3105;3098:12;3060:52;3135:23;;-1:-1:-1;;;;;3207:14:55;;;3204:34;;;3234:1;3231;3224:12;3204:34;3272:6;3261:9;3257:22;3247:32;;3317:7;3310:4;3306:2;3302:13;3298:27;3288:55;;3339:1;3336;3329:12;3288:55;3375:2;3362:16;3398:59;3414:42;3453:2;3414:42;:::i;3398:59::-;3491:15;;;3573:1;3569:10;;;;3561:19;;3557:28;;;3522:12;;;;3597:19;;;3594:39;;;3629:1;3626;3619:12;3594:39;3661:2;3657;3653:11;3673:418;3689:6;3684:3;3681:15;3673:418;;;3775:3;3762:17;3811:2;3798:11;3795:19;3792:39;;;3827:1;3824;3817:12;3792:39;3854:20;;3909:2;3901:11;;3897:25;-1:-1:-1;3887:53:55;;3936:1;3933;3926:12;3887:53;3965:83;4040:7;4034:2;4030;4026:11;4013:25;4008:2;4004;4000:11;3965:83;:::i;:::-;3953:96;;-1:-1:-1;4069:12:55;;;;3706;;3673:418;;;-1:-1:-1;4110:5:55;2924:1197;-1:-1:-1;;;;;;;;2924:1197:55:o;4126:802::-;4288:4;4317:2;4357;4346:9;4342:18;4387:2;4376:9;4369:21;4410:6;4445;4439:13;4476:6;4468;4461:22;4514:2;4503:9;4499:18;4492:25;;4576:2;4566:6;4563:1;4559:14;4548:9;4544:30;4540:39;4526:53;;4614:2;4606:6;4602:15;4635:1;4645:254;4659:6;4656:1;4653:13;4645:254;;;4752:2;4748:7;4736:9;4728:6;4724:22;4720:36;4715:3;4708:49;4780:39;4812:6;4803;4797:13;4780:39;:::i;:::-;4770:49;-1:-1:-1;4877:12:55;;;;4842:15;;;;4681:1;4674:9;4645:254;;;-1:-1:-1;4916:6:55;;4126:802;-1:-1:-1;;;;;;;4126:802:55:o;4933:221::-;4975:5;5028:3;5021:4;5013:6;5009:17;5005:27;4995:55;;5046:1;5043;5036:12;4995:55;5068:80;5144:3;5135:6;5122:20;5115:4;5107:6;5103:17;5068:80;:::i;5159:1153::-;5286:6;5294;5302;5355:2;5343:9;5334:7;5330:23;5326:32;5323:52;;;5371:1;5368;5361:12;5323:52;5398:23;;-1:-1:-1;;;;;5470:14:55;;;5467:34;;;5497:1;5494;5487:12;5467:34;5520:49;5561:7;5552:6;5541:9;5537:22;5520:49;:::i;:::-;5510:59;;5622:2;5611:9;5607:18;5594:32;5578:48;;5651:2;5641:8;5638:16;5635:36;;;5667:1;5664;5657:12;5635:36;5690:24;;;;5748:2;5730:16;;;5726:25;5723:45;;;5764:1;5761;5754:12;5723:45;5797:2;5791:9;5839:2;5831:6;5827:15;5892:6;5880:10;5877:22;5872:2;5860:10;5857:18;5854:46;5851:72;;;5903:18;;:::i;:::-;5939:2;5932:22;5979:16;;6007;;;6004:36;;;6036:1;6033;6026:12;6004:36;6064:44;6100:7;6089:8;6085:2;6081:17;6064:44;:::i;:::-;6049:60;;-1:-1:-1;6056:6:55;-1:-1:-1;6187:2:55;6172:18;;6159:32;;-1:-1:-1;6203:16:55;;;6200:36;;;6232:1;6229;6222:12;6200:36;;6255:51;6298:7;6287:8;6276:9;6272:24;6255:51;:::i;:::-;6245:61;;;5159:1153;;;;;:::o;6317:884::-;6501:4;6549:2;6538:9;6534:18;6579:2;6568:9;6561:21;6602:6;6637;6631:13;6668:6;6660;6653:22;6706:2;6695:9;6691:18;6684:25;;6768:2;6758:6;6755:1;6751:14;6740:9;6736:30;6732:39;6718:53;;6790:4;6829;6821:6;6817:17;6852:1;6862:254;6876:6;6873:1;6870:13;6862:254;;;6969:2;6965:7;6953:9;6945:6;6941:22;6937:36;6932:3;6925:49;6997:39;7029:6;7020;7014:13;6997:39;:::i;:::-;6987:49;-1:-1:-1;7094:12:55;;;;7059:15;;;;6898:1;6891:9;6862:254;;;6866:3;;;;;7133:6;7125:14;;;7189:4;7181:6;7177:17;7170:4;7159:9;7155:20;7148:47;6317:884;;;;;:::o;7206:286::-;7265:6;7318:2;7306:9;7297:7;7293:23;7289:32;7286:52;;;7334:1;7331;7324:12;7286:52;7360:23;;-1:-1:-1;;;;;7412:31:55;;7402:42;;7392:70;;7458:1;7455;7448:12;7497:175;7575:13;;-1:-1:-1;;;;;7617:30:55;;7607:41;;7597:69;;7662:1;7659;7652:12;7597:69;7497:175;;;:::o;7677:206::-;7746:6;7799:2;7787:9;7778:7;7774:23;7770:32;7767:52;;;7815:1;7812;7805:12;7767:52;7838:39;7867:9;7838:39;:::i;7888:200::-;-1:-1:-1;;;;;8050:31:55;;;;8032:50;;8020:2;8005:18;;7888:200::o;8093:127::-;8154:10;8149:3;8145:20;8142:1;8135:31;8185:4;8182:1;8175:15;8209:4;8206:1;8199:15;8225:128;8292:9;;;8313:11;;;8310:37;;;8327:18;;:::i;8358:1198::-;8450:6;8503:3;8491:9;8482:7;8478:23;8474:33;8471:53;;;8520:1;8517;8510:12;8471:53;8546:22;;:::i;:::-;8597:9;8591:16;8584:5;8577:31;8661:2;8650:9;8646:18;8640:25;8635:2;8628:5;8624:14;8617:49;8719:2;8708:9;8704:18;8698:25;8693:2;8686:5;8682:14;8675:49;8756:48;8800:2;8789:9;8785:18;8756:48;:::i;:::-;8751:2;8744:5;8740:14;8733:72;8838:49;8882:3;8871:9;8867:19;8838:49;:::i;:::-;8832:3;8825:5;8821:15;8814:74;8921:49;8965:3;8954:9;8950:19;8921:49;:::i;:::-;8915:3;8908:5;8904:15;8897:74;9004:49;9048:3;9037:9;9033:19;9004:49;:::i;:::-;8998:3;8991:5;8987:15;8980:74;9087:49;9131:3;9120:9;9116:19;9087:49;:::i;:::-;9081:3;9074:5;9070:15;9063:74;9156:3;9191:48;9235:2;9224:9;9220:18;9191:48;:::i;:::-;9175:14;;;9168:72;9259:3;9294:48;9323:18;;;9294:48;:::i;:::-;9278:14;;;9271:72;9362:3;9397:48;9426:18;;;9397:48;:::i;:::-;9381:14;;;9374:72;9465:3;9506:18;;;9500:25;9484:14;;;9477:49;;;;-1:-1:-1;9385:5:55;8358:1198;-1:-1:-1;8358:1198:55:o;9561:193::-;9599:3;-1:-1:-1;;;;;9632:30:55;;;9671:41;;9692:18;;:::i;:::-;-1:-1:-1;;9728:20:55;;9561:193;-1:-1:-1;;9561:193:55:o;10102:380::-;10181:1;10177:12;;;;10224;;;10245:61;;10299:4;10291:6;10287:17;10277:27;;10245:61;10352:2;10344:6;10341:14;10321:18;10318:38;10315:161;;10398:10;10393:3;10389:20;10386:1;10379:31;10433:4;10430:1;10423:15;10461:4;10458:1;10451:15;10315:161;;10102:380;;;:::o;10487:460::-;10540:5;10593:3;10586:4;10578:6;10574:17;10570:27;10560:55;;10611:1;10608;10601:12;10560:55;10640:6;10634:13;10671:49;10687:32;10716:2;10687:32;:::i;10671:49::-;10745:2;10736:7;10729:19;10791:3;10784:4;10779:2;10771:6;10767:15;10763:26;10760:35;10757:55;;;10808:1;10805;10798:12;10757:55;10866:2;10859:4;10851:6;10847:17;10840:4;10831:7;10827:18;10821:48;10914:1;10889:16;;;10907:4;10885:27;10878:38;;;;10893:7;10487:460;-1:-1:-1;;;10487:460:55:o;10952:823::-;11015:5;11068:3;11061:4;11053:6;11049:17;11045:27;11035:55;;11086:1;11083;11076:12;11035:55;11115:6;11109:13;11141:4;11165:59;11181:42;11220:2;11181:42;:::i;11165:59::-;11258:15;;;11344:1;11340:10;;;;11328:23;;11324:32;;;11289:12;;;;11368:15;;;11365:35;;;11396:1;11393;11386:12;11365:35;11432:2;11424:6;11420:15;11444:302;11460:6;11455:3;11452:15;11444:302;;;11533:10;;-1:-1:-1;;;;;11559:35:55;;11556:55;;;11607:1;11604;11597:12;11556:55;11636:67;11699:3;11694:2;11680:11;11672:6;11668:24;11664:33;11636:67;:::i;:::-;11624:80;;-1:-1:-1;11724:12:55;;;;11477;;11444:302;;;-1:-1:-1;11764:5:55;10952:823;-1:-1:-1;;;;;;10952:823:55:o;11780:1110::-;11880:6;11933:2;11921:9;11912:7;11908:23;11904:32;11901:52;;;11949:1;11946;11939:12;11901:52;11976:16;;-1:-1:-1;;;;;12041:14:55;;;12038:34;;;12068:1;12065;12058:12;12038:34;12091:22;;;;12147:4;12129:16;;;12125:27;12122:47;;;12165:1;12162;12155:12;12122:47;12191:22;;:::i;:::-;12236:32;12265:2;12236:32;:::i;:::-;12229:5;12222:47;12315:2;12311;12307:11;12301:18;12296:2;12289:5;12285:14;12278:42;12359:2;12355;12351:11;12345:18;12388:2;12378:8;12375:16;12372:36;;;12404:1;12401;12394:12;12372:36;12440:55;12487:7;12476:8;12472:2;12468:17;12440:55;:::i;:::-;12435:2;12428:5;12424:14;12417:79;;12535:2;12531;12527:11;12521:18;12564:2;12554:8;12551:16;12548:36;;;12580:1;12577;12570:12;12548:36;12616:65;12673:7;12662:8;12658:2;12654:17;12616:65;:::i;:::-;12611:2;12604:5;12600:14;12593:89;;12721:3;12717:2;12713:12;12707:19;12751:2;12741:8;12738:16;12735:36;;;12767:1;12764;12757:12;12735:36;12804:55;12851:7;12840:8;12836:2;12832:17;12804:55;:::i;:::-;12798:3;12787:15;;12780:80;-1:-1:-1;12791:5:55;11780:1110;-1:-1:-1;;;;;11780:1110:55:o;12895:1569::-;13186:2;13175:9;13168:21;13149:4;13224:6;13218:13;13250:4;13290:2;13285;13274:9;13270:18;13263:30;13313:50;13359:2;13348:9;13344:18;13330:12;13313:50;:::i;:::-;13302:61;;13408:9;13403:3;13399:19;13394:2;13383:9;13379:18;13372:47;13451:4;13446:3;13442:14;13483:6;13477:13;13472:3;13465:26;13539:2;13531:6;13527:15;13521:22;13516:2;13511:3;13507:12;13500:44;13593:2;13585:6;13581:15;13575:22;13627:4;13622:2;13617:3;13613:12;13606:26;13652:6;13687:14;13681:21;13726:6;13718;13711:22;13758:3;13753;13749:13;13742:20;;13815:3;13805:6;13802:1;13798:14;13793:3;13789:24;13785:34;13771:48;;13862:2;13846:14;13842:23;13828:37;;13883:1;13893:249;13907:6;13904:1;13901:13;13893:249;;;13994:3;13990:8;13984:3;13976:6;13972:16;13968:31;13963:3;13956:44;14023:39;14055:6;14046;14040:13;14023:39;:::i;:::-;14013:49;-1:-1:-1;14085:15:55;;;;14120:12;;;;13929:1;13922:9;13893:249;;;13897:3;;;;14191:2;14183:6;14179:15;14173:22;14151:44;;14237:3;14229:6;14225:16;14220:2;14215:3;14211:12;14204:38;14265:40;14298:6;14282:14;14265:40;:::i;:::-;14251:54;;;14354:4;14346:6;14342:17;14336:24;14369:66;14429:4;14424:3;14420:14;14404;-1:-1:-1;;;;;278:31:55;266:44;;196:120;14369:66;-1:-1:-1;14452:6:55;12895:1569;-1:-1:-1;;;;;12895:1569:55:o;14469:520::-;14580:6;14588;14641:2;14629:9;14620:7;14616:23;14612:32;14609:52;;;14657:1;14654;14647:12;14609:52;14684:16;;-1:-1:-1;;;;;14712:30:55;;14709:50;;;14755:1;14752;14745:12;14709:50;14778:70;14840:7;14831:6;14820:9;14816:22;14778:70;:::i;:::-;14768:80;;;14891:2;14880:9;14876:18;14870:25;14935:4;14928:5;14924:16;14917:5;14914:27;14904:55;;14955:1;14952;14945:12;14904:55;14978:5;14968:15;;;14469:520;;;;;:::o;14994:184::-;15064:6;15117:2;15105:9;15096:7;15092:23;15088:32;15085:52;;;15133:1;15130;15123:12;15085:52;-1:-1:-1;15156:16:55;;14994:184;-1:-1:-1;14994:184:55:o;16477:127::-;16538:10;16533:3;16529:20;16526:1;16519:31;16569:4;16566:1;16559:15;16593:4;16590:1;16583:15;16609:125;16674:9;;;16695:10;;;16692:36;;;16708:18;;:::i;17316:297::-;17434:12;;17481:4;17470:16;;;17464:23;;17434:12;17499:16;;17496:111;;;-1:-1:-1;;17573:4:55;17569:17;;;;17566:1;17562:25;17558:38;17547:50;;17316:297;-1:-1:-1;17316:297:55:o;17618:127::-;17679:10;17674:3;17670:20;17667:1;17660:31;17710:4;17707:1;17700:15;17734:4;17731:1;17724:15;17876:518;17978:2;17973:3;17970:11;17967:421;;;18014:5;18011:1;18004:16;18058:4;18055:1;18045:18;18128:2;18116:10;18112:19;18109:1;18105:27;18099:4;18095:38;18164:4;18152:10;18149:20;18146:47;;;-1:-1:-1;18187:4:55;18146:47;18242:2;18237:3;18233:12;18230:1;18226:20;18220:4;18216:31;18206:41;;18297:81;18315:2;18308:5;18305:13;18297:81;;;18374:1;18360:16;;18341:1;18330:13;18297:81;;;18301:3;;17967:421;17876:518;;;:::o;18570:1345::-;18690:10;;-1:-1:-1;;;;;18712:30:55;;18709:56;;;18745:18;;:::i;:::-;18774:97;18864:6;18824:38;18856:4;18850:11;18824:38;:::i;:::-;18818:4;18774:97;:::i;:::-;18926:4;;18983:2;18972:14;;19000:1;18995:663;;;;19702:1;19719:6;19716:89;;;-1:-1:-1;19771:19:55;;;19765:26;19716:89;-1:-1:-1;;18527:1:55;18523:11;;;18519:24;18515:29;18505:40;18551:1;18547:11;;;18502:57;19818:81;;18965:944;;18995:663;17823:1;17816:14;;;17860:4;17847:18;;-1:-1:-1;;19031:20:55;;;19149:236;19163:7;19160:1;19157:14;19149:236;;;19252:19;;;19246:26;19231:42;;19344:27;;;;19312:1;19300:14;;;;19179:19;;19149:236;;;19153:3;19413:6;19404:7;19401:19;19398:201;;;19474:19;;;19468:26;-1:-1:-1;;19557:1:55;19553:14;;;19569:3;19549:24;19545:37;19541:42;19526:58;19511:74;;19398:201;;;19645:1;19636:6;19633:1;19629:14;19625:22;19619:4;19612:36;18965:944;;;;;18570:1345;;:::o","linkReferences":{"contracts/GatewayVM.sol":{"GatewayVM":[{"start":1455,"length":20}]}},"immutableReferences":{"20":[{"start":138,"length":32},{"start":3096,"length":32},{"start":3168,"length":32}],"23":[{"start":186,"length":32},{"start":1525,"length":32}],"7613":[{"start":424,"length":32},{"start":589,"length":32},{"start":788,"length":32},{"start":1892,"length":32},{"start":2175,"length":32},{"start":2344,"length":32},{"start":2599,"length":32}],"7615":[{"start":385,"length":32},{"start":723,"length":32},{"start":2503,"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 IRollupCore\",\"name\":\"rollup\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"minBlocks\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"latest\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"got\",\"type\":\"uint256\"}],\"name\":\"CommitTooNew\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"latest\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"got\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"window\",\"type\":\"uint256\"}],\"name\":\"CommitTooOld\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ContentLengthMismatch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"EmptyItem\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidDataRemainder\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidHeader\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnexpectedList\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnexpectedString\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"GatewayURLsChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"gatewayURLs\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getHooks\",\"outputs\":[{\"internalType\":\"contract IVerifierHooks\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLatestContext\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"context\",\"type\":\"bytes\"},{\"components\":[{\"internalType\":\"bytes\",\"name\":\"ops\",\"type\":\"bytes\"}],\"internalType\":\"struct GatewayRequest\",\"name\":\"req\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"proof\",\"type\":\"bytes\"}],\"name\":\"getStorageValues\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"},{\"internalType\":\"uint8\",\"name\":\"exitCode\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getWindow\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"urls\",\"type\":\"string[]\"}],\"name\":\"setGatewayURLs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"OwnableInvalidOwner(address)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(address)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}]},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"errors\":{\"ContentLengthMismatch()\":[{\"notice\":\"The length of the content must be greater than the RLP item length\"}],\"EmptyItem()\":[{\"notice\":\"The length of an RLP item must be greater than zero to be decodable\"}],\"InvalidDataRemainder()\":[{\"notice\":\"The RLP item has an invalid data remainder\"}],\"InvalidHeader()\":[{\"notice\":\"Invalid RLP header for RLP item\"}],\"UnexpectedList()\":[{\"notice\":\"Decoded item type for bytes is not a string item\"}],\"UnexpectedString()\":[{\"notice\":\"The decoded item type for list is not a list item\"}]},\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/nitro/NitroVerifier.sol\":\"NitroVerifier\"},\"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/RLPReaderExt.sol\":{\"keccak256\":\"0x89fa1a59502d1cbbecade099ca0bdb9f6f4225502f68d58c630cc7b381280c56\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f83938ee716ea97aefeeaf4bb6f8b164aa75e88553216746260f5f2ec6d8324f\",\"dweb:/ipfs/QmRMUaAeVsLzmMsB4yGmVoYdU2u2RZJpBdESuCR4VjZbiv\"]},\"contracts/nitro/IRollupCore.sol\":{\"keccak256\":\"0x5205a7b0858a68b514381fb77ae40fdf0bc8bfa3387debca2a49728a126fc26e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://741d1f83f1c0efa4d726284a8a06f56fdccab2614c671534f94b1d7e4db0821f\",\"dweb:/ipfs/QmTFEhaLB5btxfShDJADRYcQFwkJTGCZJnzCoBJgoo3sNh\"]},\"contracts/nitro/NitroVerifier.sol\":{\"keccak256\":\"0x573a8b3115cc257989313bce3a662c05123fece6042e2ae405589d5aa7c59666\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://241451afd1dff535c40b8690a9eabe05c45d5efd50cbaf3f628b033da6596f48\",\"dweb:/ipfs/QmbsZjXAohjUuUA8rdkfZxwJQDuiATATFox4dZxEmuEFJj\"]},\"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\"]},\"lib/optimism/packages/contracts-bedrock/src/libraries/rlp/RLPErrors.sol\":{\"keccak256\":\"0x2b7fa174e6c62962f7c3ce1960298d325ed0e5ff4ee3fd426848e88b4500eb26\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f5528dd355691e6e2dffa3ecf11388f51e3bd29f27693c5dcd11be182559ba47\",\"dweb:/ipfs/QmTqZ5ZzBPwLYg3JNZttHZYaXv5zyzQfakSz4B8sYkAz42\"]},\"lib/optimism/packages/contracts-bedrock/src/libraries/rlp/RLPReader.sol\":{\"keccak256\":\"0x27cbbc74d603b301e0e4bc4d33bbbeb88e369f1a91191a33d89ea52360e003db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ba58dfd78089a51f06638fa6c0d2287c6254907ad89c4ad58b6fbb331d5d5a96\",\"dweb:/ipfs/QmUjC5Pm2MxPgYm9DfW1MasHj5jz7xXvej88778QuUoNgp\"]}},\"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 IRollupCore","name":"rollup","type":"address"},{"internalType":"uint256","name":"minBlocks","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"latest","type":"uint256"},{"internalType":"uint256","name":"got","type":"uint256"}],"type":"error","name":"CommitTooNew"},{"inputs":[{"internalType":"uint256","name":"latest","type":"uint256"},{"internalType":"uint256","name":"got","type":"uint256"},{"internalType":"uint256","name":"window","type":"uint256"}],"type":"error","name":"CommitTooOld"},{"inputs":[],"type":"error","name":"ContentLengthMismatch"},{"inputs":[],"type":"error","name":"EmptyItem"},{"inputs":[],"type":"error","name":"InvalidDataRemainder"},{"inputs":[],"type":"error","name":"InvalidHeader"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"type":"error","name":"OwnableInvalidOwner"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"OwnableUnauthorizedAccount"},{"inputs":[],"type":"error","name":"UnexpectedList"},{"inputs":[],"type":"error","name":"UnexpectedString"},{"inputs":[],"type":"event","name":"GatewayURLsChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"gatewayURLs","outputs":[{"internalType":"string[]","name":"","type":"string[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getHooks","outputs":[{"internalType":"contract IVerifierHooks","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getLatestContext","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[{"internalType":"bytes","name":"context","type":"bytes"},{"internalType":"struct GatewayRequest","name":"req","type":"tuple","components":[{"internalType":"bytes","name":"ops","type":"bytes"}]},{"internalType":"bytes","name":"proof","type":"bytes"}],"stateMutability":"view","type":"function","name":"getStorageValues","outputs":[{"internalType":"bytes[]","name":"","type":"bytes[]"},{"internalType":"uint8","name":"exitCode","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getWindow","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"string[]","name":"urls","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"setGatewayURLs"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@eth-optimism/=lib/optimism/packages/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","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/nitro/NitroVerifier.sol":"NitroVerifier"},"evmVersion":"cancun","libraries":{}},"sources":{"contracts/AbstractVerifier.sol":{"keccak256":"0x4868ee9c8ade05b23ce93c2fce0507588583597df087f9494a69df005cff2652","urls":["bzz-raw://9e822d963a8461edcf72a7e500b53b0bfaf0d98412ae5da3287246cc491ef705","dweb:/ipfs/QmU8NJXEg5oFCoahg9F8qtQoWsW1sYfKmDCVD7vtNX9qbZ"],"license":"MIT"},"contracts/GatewayRequest.sol":{"keccak256":"0x3e6ce7cae72d6d77a9a4b5644495b8621116be44511186d47efbb27ce0fc73f9","urls":["bzz-raw://301c7ad11dd0e050811a58ab6942040df9bad5e269bb43e4c74ffca3b43622f5","dweb:/ipfs/QmXocie71GDYUPDEcVLsZ9N6LXZaSj8SX49HbGG3CUHLvP"],"license":"MIT"},"contracts/GatewayVM.sol":{"keccak256":"0x9bff36c483bb29a6fc0525cfa7ba09b523632ed9477dac23aa8d312237e987ed","urls":["bzz-raw://2452b324151e1909f825a83e895a242de7795bdab405121d3baec42128e350da","dweb:/ipfs/QmWdMuMT3wYoe4Sa73PPWuW1RZSqvUT2qFck6WvMdLnSCy"],"license":"MIT"},"contracts/IGatewayVerifier.sol":{"keccak256":"0xd56c8ace6aba1354dd4c477b566343b641f57a8c4ef88e1d84294d3727552284","urls":["bzz-raw://0e268659b9c590a5ce3d2eb440a11bcdf3214a4bfcfa7f38523137ccf940fa32","dweb:/ipfs/QmVpLNhcXQbx4MaBPMnnEnt7gTLNWB753BszqakBq5yUA3"],"license":"MIT"},"contracts/IVerifierHooks.sol":{"keccak256":"0xd85e9b52270a88d0df9b26454d9c80389405c230b7d67060742a4a0ea5917248","urls":["bzz-raw://81de43a606284b5b9b146e06dbf6f54db5480058deb5fbe150302a37ffe14e1a","dweb:/ipfs/QmSDH39aPAch4bKhRZbJ5vSDEUUDic76gWxDDDGaYxbPat"],"license":"MIT"},"contracts/RLPReaderExt.sol":{"keccak256":"0x89fa1a59502d1cbbecade099ca0bdb9f6f4225502f68d58c630cc7b381280c56","urls":["bzz-raw://f83938ee716ea97aefeeaf4bb6f8b164aa75e88553216746260f5f2ec6d8324f","dweb:/ipfs/QmRMUaAeVsLzmMsB4yGmVoYdU2u2RZJpBdESuCR4VjZbiv"],"license":"MIT"},"contracts/nitro/IRollupCore.sol":{"keccak256":"0x5205a7b0858a68b514381fb77ae40fdf0bc8bfa3387debca2a49728a126fc26e","urls":["bzz-raw://741d1f83f1c0efa4d726284a8a06f56fdccab2614c671534f94b1d7e4db0821f","dweb:/ipfs/QmTFEhaLB5btxfShDJADRYcQFwkJTGCZJnzCoBJgoo3sNh"],"license":"MIT"},"contracts/nitro/NitroVerifier.sol":{"keccak256":"0x573a8b3115cc257989313bce3a662c05123fece6042e2ae405589d5aa7c59666","urls":["bzz-raw://241451afd1dff535c40b8690a9eabe05c45d5efd50cbaf3f628b033da6596f48","dweb:/ipfs/QmbsZjXAohjUuUA8rdkfZxwJQDuiATATFox4dZxEmuEFJj"],"license":"MIT"},"lib/forge-std/src/console.sol":{"keccak256":"0xf61cb43a94d8318049d0a7f567af8c0aa952b5762a43851b130b90b3fcde0c6a","urls":["bzz-raw://53a52c6c3aeb22f7a18f53fca16af590308a8e3e5507e74df9b8e2561c932194","dweb:/ipfs/QmaaXuY8mC66YoE2xyZdWuLHXqAxLjbnNxiofx8BTP1MRn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/access/Ownable.sol":{"keccak256":"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb","urls":["bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6","dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2","urls":["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12","dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"],"license":"MIT"},"lib/optimism/packages/contracts-bedrock/src/libraries/Bytes.sol":{"keccak256":"0x827f47d123b0fdf3b08816d5b33831811704dbf4e554e53f2269354f6bba8859","urls":["bzz-raw://3137ac7204d30a245a8b0d67aa6da5286f1bd8c90379daab561f84963b6db782","dweb:/ipfs/QmWRhisw3axJK833gUScs23ETh2MLFbVzzqzYVMKSDN3S9"],"license":"MIT"},"lib/optimism/packages/contracts-bedrock/src/libraries/rlp/RLPErrors.sol":{"keccak256":"0x2b7fa174e6c62962f7c3ce1960298d325ed0e5ff4ee3fd426848e88b4500eb26","urls":["bzz-raw://f5528dd355691e6e2dffa3ecf11388f51e3bd29f27693c5dcd11be182559ba47","dweb:/ipfs/QmTqZ5ZzBPwLYg3JNZttHZYaXv5zyzQfakSz4B8sYkAz42"],"license":"MIT"},"lib/optimism/packages/contracts-bedrock/src/libraries/rlp/RLPReader.sol":{"keccak256":"0x27cbbc74d603b301e0e4bc4d33bbbeb88e369f1a91191a33d89ea52360e003db","urls":["bzz-raw://ba58dfd78089a51f06638fa6c0d2287c6254907ad89c4ad58b6fbb331d5d5a96","dweb:/ipfs/QmUjC5Pm2MxPgYm9DfW1MasHj5jz7xXvej88778QuUoNgp"],"license":"MIT"}},"version":1},"id":23}